ok-2004 » 22 янв 2015, 19:21
Кхе-кхе... Хочу поделиться одной неприятной неприятностью...
A. Если апгрейд с MS 5.5 до PS 5.6 ведётся каноническим способом:
1. mysqldump -uroot -pxxxxxx --skip-opt --single-transaction --flush-logs --add-drop-database --create-options --add-drop-table --quick --set-charset --verbose --databases bgbilling 2> mydump.txt > bgb.sql
2. apt-get remove mysql-server-5.5
3. rm -rf {/etc/mysql;/var/lib/mysql}
4. apt-get install percona-server-server-5.6
Б. Если после инсталляции Вы по какой-то причине решили "рекретить" ibdata1 и ib_log* в /var/lib/mysql, путём их удаления и рестарта сервера и потом залили базу БЖБ mysql -v -uroot -ppassword < bgb.sql
В. То при работе сервера вы получите в логах вал ерророк вида:"InnoDB: Error: Table "mysql"."innodb_table_stats" not found."
Горькая и сермяжная правда жизни состоит в том, что 5.6(что в PS , что в MS ) в каталоге mysql (в котором со времён царя Соломона все таблицы были на движке myisam) затесались
innodb_index_stats,innodb_table_stats,slave_master_info,slave_relay_log_info,slave_worker_info на движке innodb и диктионарием в ibdata1 естественно.
Вы его грохнули - таблицы потерялись.
Все воркэранунды, разбросанные в инете сильно не помогают, поэтому если вы по каким-то причинам изменили сайзы или кол-во ibdata и ib_log в my.cnf, то в начале потрудитесь сделать так:
mysqldump bgbilling > bgb.sql #выливаем базу
rm -rf /var/lib/mysql/
mkdir /var/lib/mysql/
chown -R mysql:mysql /var/lib/mysql/
chmod -R 775 /var/lib/mysql/
mysql_install_db --defaults-file=/etc/mysql/my.cnf --basedir=/usr --datadir=/var/lib/mysql --user=mysql # Воссоздаём каталог /var/lib/mysql
dpkg-reconfigure percona-server-server-5.6 #задаем пароли root-a и debian-sys-maint-a
mysql_secure_installation #грохаем анонимуса и тестовую базу
mysql < bgb.sql # вливаем базу взад
К слову говоря иметь innodb-таблицы в mysql каталоге хреноватенько, потому как при восстановлении базы, придётся копировать не только каталог mysql , но и подставлять соответствующий им ibdata1.
Поэтому в свеже-установленном PS 5.6, перед заливкой дампа БЖБ потрудитесь с помощью show create table снять структуру этих таблиц, грохнуть их( так как они по началу пустые ), и перелить их в базу изменив на ENGINE=MyISAM
"Все правые - в резерве!" (c) (translate.google.ru/#en/ru/all%20rigths%20reserved)