我试图在表上运行一个alter查询,它给了我一个
Lost connection to MySQL server during query
MySQL server has gone away.我正在运行的查询是
alter table table_name modify column_name DOUBLE ( 16, 2) default 8.5;我猜想这个表包含了大量的数据,因此alter花费了很多时间,服务器连接也丢失了。
我的疑问是,
首先,
如何找出表中的数据量?(我想是以MB/GB表示的)。
其次,如果表中包含大量数据,那么如何在这个表上执行alter呢?
发布于 2014-05-07 20:58:11
您需要检查服务器的错误日志(S)。有太多的情况可能导致这个问题。例如:
发布于 2014-01-03 14:12:29
SELECT table_schema "Data Base Name", sum( data_length + index_length ) / 1024 / 1024 "Data Base Size in MB" FROM information_schema.TABLES GROUP BY table_schema;将给出数据库大小(以MB为单位)。
对不起,我不能帮你提第二个问题。
发布于 2014-05-07 20:42:16
关于你问题的第二部分,你可以:
INSERT INTO ... SELECT ...中DROP旧桌子RENAME TABLE为旧表名。https://dba.stackexchange.com/questions/56074
复制相似问题