在 MySQL 或 MariaDB 用 mysqldump 備份資料庫時,可能會出現以下報錯:
mysqldump: Unknown table ‘column_statistics’ in information_schema
這個錯誤的原因,是因為 MriaDB 10.2.2 或以上,加入了名為 column_statistics 資料表到 information_schema 資料庫,以支援一些進階功能,例如直方圖統計。
如果使用 MySQL 的客戶端產生備份,而不是使用 MariaDB 的客戶端,便會出現這個報錯,因為 MySQL 版本的 mysqldump 不能識別 column_statistics 資料庫。
要解決這個問題可以用以下方法:
1. 要避免這個問題,當然最好避免混合使用 MySQL 及 MariaDB 的工具,使用 MariaDB 的 mysqldump 便不會有這個問題,如果是用套件管理工具安裝 MariaDB,已經預設使用 MariaDB 的 mysqldump.
2. 在 mysqldump 後面加入 –column-statistics=0 參數,這樣在使用 mysqldump 時便不會擷取 column statistics 的資料。
1 |
$ mysqldump --column-statistics=0 -u username -p database_name > backup_file.sql |