MySql添加新列会导致连接过多
我的问题是,当我向live数据库添加新列时,MySQL遇到了“连接太多”错误 数据库有100万条记录,因此添加这些记录需要一段时间MySql添加新列会导致连接过多,mysql,sql,Mysql,Sql,我的问题是,当我向live数据库添加新列时,MySQL遇到了“连接太多”错误 数据库有100万条记录,因此添加这些记录需要一段时间 表锁定的原因是什么 如何保持桌子运行 我对具有100万条记录的表执行的查询(InnoDB) 谢谢 尝试运行显示进程列表以查看连接是什么。 我还要看一下您的mysql配置,特别是检查max_connections设置。更改该设置将需要重新启动mysql服务器。 InnoDB需要一个表锁,对此您无能为力 看看这些,了解一些如何做到这一点的想法: 及 众所周知,
- 表锁定的原因是什么李>
- 如何保持桌子运行
谢谢 尝试运行
显示进程列表代码>以查看连接是什么。
我还要看一下您的mysql配置,特别是检查max_connections设置。更改该设置将需要重新启动mysql服务器。
InnoDB需要一个表锁,对此您无能为力
看看这些,了解一些如何做到这一点的想法:
及
众所周知,mysql在添加列方面非常慢
据我所知,所有数据库在添加列时都会锁定表,因为它们正在更改磁盘上的布局,并且需要大量的I/O
通常,它的速度非常慢(尤其是mysql),在生产环境中的做法是创建一个带有额外列的新表,跨多个列复制数据,重命名表,然后开始使用新表。执行此操作时,您当然会停止写访问,但完成此操作的速度要快得多。是的,我认为在这样的过程中,没有其他解决方案可以让表保持活动状态。谢谢你的回答!谢谢你的回答和链接。我认为这不是达到MySQL最大连接数的好选择,你会很快遇到同样的问题(我猜)。无论如何,谢谢你的回答:)
ALTER TABLE table_name
ADD COLUMN new_table_column INT(11) NULL
DEFAULT NULL ;