mysqldump 出現general_log 錯誤

Mysqldump 的 mysqldump: Got error: 1017: Can't find file: 'general_log' (errno: 2) when using LOCK TABLES 錯誤排除

當我想把所有的資料庫備份時,總是在一半時出現錯誤訊息:

$ mysqldump -A -uaxer -p > alldb.sql
Enter password:
mysqldump: Got error: 1017: Can't find file: 'general_log' (errno: 2) when using LOCK TABLES

上網查了一下,發現只要將兩個檔案移除就可以了:

進到 mysql 資料庫的位置(我是freebsd 系統,linux 預設應該在 /var/lib/mysql/mysql)
$ cd /var/db/mysql/mysql/

改名
$ mv general_log.frm general_log.frm.bak
$ mv slow_log.frm slow_log.frm.bak

再執行 mysqldump OK

理由是 mysql >= 5.1 時才有支援這兩個資料庫,我的版本是5.0.x

原来原先安装的5.1版本,后因环境需求,换成5.0版本了,但是库用的5.1时候建立的库。

标签: 转载 MySQL
评论: 0 | 引用: 0 | 阅读: 8339