我刚为MySQL数据库创建了一个新的复制服务器,当我加载mysql_dump时收到了错误ERROR 1118 (42000) at line 279: Row size too large (> 8126)
。似乎合理,行太大。问题是这些太大的行已经存在于数据库中,并且我被告知某些表可能已打开压缩。
如何查看哪些表已启用压缩?为什么没有使用mysql_dump传输压缩?
答案 0 :(得分:0)
DESCRIBE table_name
和SHOW COLUMNS FROM table_name;
不提供有关压缩的任何信息,但如果您使用
SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE table_schema = 'database_name'
然后它将显示ROW_FORMAT以及一些其他有用的东西,如数据长度和平均行长度。