Dram

Рейтинг
1114
Регистрация
28.06.2008

jkm, спасибо помогло!

В общем при удалении через пхп майадмин она удалялась командой

DROP VIEW transaction_registry;

Я выполнил

DROP TABLE transaction_registry;

но это не удалило таблицу до конца. Я зашел в /var/lib/mysql/mysql и там был 1 файл этой таблицы. Я удалил его по ftp, далее перезапустил мускуль и создал таблицу заново

CREATE TABLE `transaction_registry` (
`transaction_id` bigint(20) UNSIGNED NOT NULL,
`commit_id` bigint(20) UNSIGNED NOT NULL,
`begin_timestamp` timestamp(6) NOT NULL DEFAULT '0000-00-00 00:00:00.000000',
`commit_timestamp` timestamp(6) NOT NULL DEFAULT '0000-00-00 00:00:00.000000',
`isolation_level` enum('READ-UNCOMMITTED','READ-COMMITTED','REPEATABLE-READ','SERIALIZABLE') COLLATE utf8_bin NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

--
-- Индексы сохранённых таблиц
--

--
-- Индексы таблицы `transaction_registry`
--
ALTER TABLE `transaction_registry`
ADD PRIMARY KEY (`transaction_id`),
ADD UNIQUE KEY `commit_id` (`commit_id`),
ADD KEY `begin_timestamp` (`begin_timestamp`),
ADD KEY `commit_timestamp` (`commit_timestamp`,`transaction_id`);

По делу плиз, эта мелочь отвлекает от стола, гости обижаются :))

Перенес на боевом - все ок.

Была одна проблема.

Сайты не работали, хотя мускуль стартовал и проблем не было.

Оказывается в бузе мускуля при обновлении пропали юзеры баз данных.

Перенес их из бекапа и все стало ок.

В общем все равно где то я ошибаюсь. Фиг знает как у меня вчера получилось завершить sudo mysql_upgrade --force -p на ОК.

Сегодня решил еще раз пройтись по командам на тестовом сервере чтобы уже потом быстро обновить на боевом.

Итак:

1. Развернул снимок на идентичный ВПС.

/etc/init.d/mysql stop

2. cp -r /var/lib/mysql/* /var/lib/mysql2

3. sudo apt-get --purge remove mariadb*

sudo apt-get autoremove

sudo apt-get autoclean

4. apt-get update

apt-get install dirmngr curl -y

curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | bash

apt-get update

apt-get install mariadb-server -y

/etc/init.d/mysql stop

5. Вернул базы и файл ibdata1 из /var/lib/mysql2 в /var/lib/mysql/

6. chown -R mysql:mysql /var/lib/mysql

7. /etc/init.d/mysql start

На этом этапе все ок, мускуль запустился, версия 10.3

Осталось последний шаг:

sudo mysql_upgrade --force -p

на что получаю

Phase 1/7: Checking and upgrading mysql database
Processing databases
mysql
mysql.column_stats OK
mysql.columns_priv OK
mysql.db OK
mysql.event OK
mysql.func OK
mysql.gtid_slave_pos
Error : Table 'mysql.gtid_slave_pos' doesn't exist in engine
status : Operation failed
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.host OK
mysql.index_stats OK
mysql.innodb_index_stats
Error : Table 'mysql.innodb_index_stats' doesn't exist in engine
status : Operation failed
mysql.innodb_table_stats
Error : Table 'mysql.innodb_table_stats' doesn't exist in engine
status : Operation failed
mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
mysql.proxies_priv OK
mysql.roles_mapping OK
mysql.servers OK
mysql.table_stats OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
mysql.time_zone_name OK
mysql.time_zone_transition OK
mysql.time_zone_transition_type OK
mysql.transaction_registry
Error : Table 'mysql.transaction_registry' doesn't exist in engine
status : Operation failed
mysql.user OK

Repairing tables
mysql.gtid_slave_pos
Error : Table 'mysql.gtid_slave_pos' doesn't exist in engine
status : Operation failed
mysql.innodb_index_stats
Error : Table 'mysql.innodb_index_stats' doesn't exist in engine
status : Operation failed
mysql.innodb_table_stats
Error : Table 'mysql.innodb_table_stats' doesn't exist in engine
status : Operation failed
mysql.transaction_registry
Error : Table 'mysql.transaction_registry' doesn't exist in engine
status : Operation failed
Phase 2/7: Installing used storage engines... Skipped
Phase 3/7: Fixing views
Phase 4/7: Running 'mysql_fix_privilege_tables'
ERROR 1932 (42S02) at line 635: Table 'mysql.innodb_index_stats' doesn't exist in engine
ERROR 1243 (HY000) at line 636: Unknown prepared statement handler (stmt) given to EXECUTE
ERROR 1932 (42S02) at line 638: Table 'mysql.innodb_table_stats' doesn't exist in engine
ERROR 1243 (HY000) at line 639: Unknown prepared statement handler (stmt) given to EXECUTE
ERROR 1932 (42S02) at line 643: Table 'mysql.innodb_index_stats' doesn't exist in engine
ERROR 1932 (42S02) at line 647: Table 'mysql.innodb_table_stats' doesn't exist in engine
ERROR 1932 (42S02) at line 650: Table 'mysql.innodb_table_stats' doesn't exist in engine
FATAL ERROR: Upgrade failed

попробовал удалить папку с базой mysql и залить ее из бекапа - не помогло. Что не так?

---------- Добавлено 31.12.2018 в 16:41 ----------

решение проблемы тут http://qaru.site/questions/839308/mysqlupgrade-failed-innodb-tables-doesnt-exist - в ответе "ОБНОВЛЕНО Fix For: MariaDB 10"

Проблему решил так:

удалил папку /var/lib/mysql/mysql

залил туда старую из бекапа и сделал sudo mysql_upgrade --force -p

все прошло на - ОК



---------- Добавлено 30.12.2018 в 20:26 ----------

Ошибки в пхпмайадмин убрал так

apt-get --purge remove phpmyadmin
sudo apt-get install phpmyadmin

P.S. обновление провел так:

Забекапил my.cnf

переназвал папку /var/lib/0mysql

sudo apt-get --purge remove mariadb*

sudo apt-get autoremove

sudo apt-get autoclean

apt-get update

apt-get install dirmngr curl -y

curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | bash

apt-get update

apt-get install mariadb-server -y

вернул базы в /var/lib/mysql

sudo mysql_upgrade --force -p

apt-get --purge remove phpmyadmin

sudo apt-get install phpmyadmin

Обновил минуя 10.2

по шагам расписать форум не дает, блокирует - Sorry, you have been blocked

+ в пхпмайдамин две ошибки

mysqli_real_connect(): (HY000/1045): Access denied for user 'phpmyadmin'@'localhost' (using password: YES)

Ошибка при указании соединения для controluser в конфигурации.

Соглашусь с заказчиком - не может быть санкций за внутреннюю перелинковку. Википедия бы тогда первая в бан ушла.

Прошу прощения - перепутал их с Kadam

Угу, давно на яндекс перевел. Тоже пытался поиначалу ассасина настроить, а потом думаю ну че я время трачу, когда можно пару кликов и все готово...

Всего: 6924