Я использовал интерфейс CPanel WHM для переноса MySQL с v5.0 на 5.6 ранее на этой неделе. Вчера вечером я получил письмо от своей системы, в котором утверждалось, что теперь есть проблемы со старыми RPM MySQL. В письме говорилось:
Problems were detected with cPanel-provided files which are RPM
controlled. If you did not make these changes intentionally, you can
correct them by running:
> /usr/local/cpanel/scripts/check_cpanel_rpms --fix
The following RPMs are found to be altered from their original install
state:
compat-MySQL51-shared,5.1.73,4.cp1136,/usr/lib64/libmysqlclient.so.16.0.0
И когда я запустил check_cpanel_rpms на машине, я получил:
/usr/local/cpanel/scripts/check_cpanel_rpms --list-only prelink: /usr/lib64/libmysqlclient.so.16.0.0: по крайней мере одна из зависимостей файла изменилась с момента предварительного связывания [20141025.184811] [20141025.184811] Обнаружены проблемы с файлами, предоставленными cPanel, которые контролируются RPM. [20141025.184811] Если вы не внесли эти изменения намеренно, вы можете исправить их, выполнив: [20141025.184811] [20141025.184811] > /usr/local/cpanel/scripts/check_cpanel_rpms --fix [20141025.184811] [20141025.184811] Было обнаружено, что следующие файлы были изменены по сравнению с их исходным RPM: [20141025.184811] compat-MySQL51-shared,5.1.73,4.cp1136 [20141025.184811]
Он жалуется на версию 5.1, которая в данный момент не работает.
Опция --fix
on check_cpanel_rpms
довольно волшебная — я не уверен, что ее безопасно запускать; скорее всего, она отключит мой экземпляр MySQL в ходе «исправления».
Как исправить это предупреждение? Я бы предпочел метод, который не приведет к сбою MySQL, если это возможно.
решение1
Если вы не хотите запускать эту команду, вы можете попробовать запустить EasyApache для пересобирания Apache/PHP с правильным клиентским расширением MySQL, хотя оно, вероятно, уже было запущено, если вы выбрали автоматическое обновление, поскольку некоторые из ваших сайтов не будут работать после обновления MySQL, если оно не будет выполнено.
Кроме того, я не думаю, что у вас возникнут какие-либо проблемы, если вы запустите
/usr/local/cpanel/scripts/check_cpanel_rpms --fix
.
Я запускал эту команду несколько раз на серверах для решения подобных проблем и никогда не сталкивался с проблемами.
Если вы выполнили обновление MySQL через WHM, команда должна просто удалить старые RPM-пакеты MySQL и оставить текущие RPM-пакеты MySQL 5.6.
Перед запуском команды следует сделать резервную копию всех баз данных, просто чтобы обезопасить себя на случай, если что-то пойдет не так, но это не должно привести к простою MySQL.
Вы можете сделать резервную копию всех баз данных, запустив
mysqldump --all-databases > all_databases.sql
для резервного копирования всех баз данных в один файл или
for i in `mysql -e "show databases;"`; do mysqldump $i > /folder_path/$i.sql; done
для резервного копирования каждой базы данных в отдельный файл.