Перенос пользователей mysql на другой сервер
Я создал mysqldump --all-databases
и передал все мои базы данных на новый сервер. Это не сработало как debian-sys-maint
пароль пользователя не совпадают. Поэтому я меняю пароль этого пользователя. После этого я перезагрузил сервер и получил эту ошибку.
ошибка 1577 (HY000) в строке 1: невозможно продолжить, потому что системные таблицы используемые планировщиком событий были найдены поврежденными при ошибке запуска сервера 1547 (HY000) в строке 1: количество столбцов mysql.proc-это неправильно. Ожидается, что 20, найден 16. Таблица вероятно, поврежден
Я не знаю, сколько еще ошибок будет после этого. Поэтому я думал создать дамп только с базами данных, которые связаны с моими приложениями (mysqldump --databases
).
как перенести пользователей? Есть ли стандартный способ?
Дополнительная Информация:
New Server version: 5.1.63-0+squeeze1 (Debian)
Old Server version: 5.0.51a-24+lenny5 (Debian)
1 ответов
вам, вероятно, нужно запустить mysql_upgrade, так как ваши версии MySql отличаются.
как правило, однако, не копируйте mysql
схема системы от одного сервера к другому. Как следствие, и насколько я знаю, нет "стандартного" способа копирования пользователей и привилегий пользователей с одного сервера на другой.
Если вы действительно хотите/должны сделать это, попробуйте следующее:
$> mysql --silent --skip-column-names -e"show grants for user@host"
выше выходов GRANT
операторы, которые можно сразу же отправить на целевой сервер для создания пользователя и предоставления тех же разрешений.
однако, если ваш целевой сервер пуст, вы можете просто переместить всю папку данных со старого сервера на новый сервер, а затем запустить стандартный процедура обновления с 5.0 до 5.1 на новом сервере.