Назад | Перейти на главную страницу

mysql.proc испортился. Как я могу это исправить?

У меня есть сервер под управлением Debian 5.0 и MySQL. Внезапно MySQL перестал работать, и после многих попыток исправить это я решил переустановить его. Я установил MySQL 5.1.63, и при запуске он переходит в безопасный режим. Я немного напечатал, и когда я выполнил mysql_upgrade как root, он пожаловался:

...
Running 'mysql_fix_privilege_tables'...
ERROR 1548 (HY000) at line 1111: Cannot load from mysql.proc. The table is probably corrupted
ERROR 1064 (42000) at line 1112: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'sqlstate 'HY000' set message_text='Unexpected content found in the performance_s' at line 1
ERROR 1548 (HY000) at line 1125: Cannot load from mysql.proc. The table is probably corrupted
FATAL ERROR: Upgrade failed

Я проверил mysql.proc стол, и это comment столбец немного отличался от моей резервной копии.

-- My backup says:
`comment` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
-- But it were:
`comment` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,

Итак, я восстановил свою резервную копию базы данных mysql, и теперь все они совпадают, но mysql_upgrade по-прежнему вызывают те же ошибки. Я также пробовал проверить и отремонтировать mysql.proc table, но безуспешно.

Вы пробовали использовать --force вариант:

mysql_upgrade --force -u root -p