Версия пакета: mariadb-server-10.6.9-alt1.1.x86_64 Стенд: alt-server-10-x86_64, обновленный до sisyphus Шаги для воспроизведения: 1. Обновить Server 10 (mariadb-server-10.4.20 -> 10.6.9) 2. Запустить mysql: $ mysql 3. Создать БД: MariaDB [(none)]> CREATE DATABASE zxc; 4. Выполнить любой из запросов: MariaDB [zxc]> DROP PROCEDURE IF EXISTS zxc.zxc; MariaDB [zxc]> DROP FUNCTION IF EXISTS zxc.zxc; Фактический результат: ERROR 1728 (HY000): Cannot load from mysql.proc. The table is probably corrupted Ожидаемый результат: Query OK, 0 rows affected, 1 warning (0.000 sec) Пробовал сделать следующее: 1. # mysql_upgrade FATAL ERROR: Could not open or create the upgrade info file '/db/mysql_upgrade_info' in the MariaDB Servers data directory, errno: 2 (No such file or directory) 2. MariaDB [(none)]> REPAIR TABLE mysql.proc; +------------+--------+----------+----------+stage done | Table | Op | Msg_type | Msg_text | +------------+--------+----------+----------+ | mysql.proc | repair | status | OK | +------------+--------+----------+----------+ 1 row in set (0,118 sec) На ошибку это не повлияло. Помогло только пересоздание БД 'mysql': # rm -rf /var/lib/mysql/db/mysql # systemctl restart mysqld Также ошибка воспроизводится в p10: mariadb-server-10.6.9-alt1.x86_64
(Ответ для Ivan Alekseev на комментарий #0) > Версия пакета: mariadb-server-10.6.9-alt1.1.x86_64 [...] > Пробовал сделать следующее: > 1. # mysql_upgrade > FATAL ERROR: Could not open or create the upgrade info file > '/db/mysql_upgrade_info' in the MariaDB Servers data directory, errno: 2 (No > such file or directory) [...] Кто владелец файла /db/mysql_upgrade_info ? Помогает ли 'chown mysql:mysql /var/lib/mysql/db/mysql_upgrade_info'?
(Ответ для Николай Костригин на комментарий #1) > (Ответ для Ivan Alekseev на комментарий #0) > Кто владелец файла /db/mysql_upgrade_info ? > Помогает ли 'chown mysql:mysql /var/lib/mysql/db/mysql_upgrade_info'? Такого файла нет: # l /var/lib/mysql/db/mysql_upgrade_info ls: невозможно получить доступ к '/var/lib/mysql/db/mysql_upgrade_info': Нет такого файла или каталога
Created attachment 11639 [details] # strace mysql_upgrade Вывод # strace mysql_upgrade во вложении.
Команда mysql_upgrade успешно выполняется после отключения mysqld-chroot: 1. # control mysqld-chroot disabled 2. # systemctl restart mysqld 3. # mysql_upgrade После этого ошибка "Cannot load from mysql.proc" не воспроизводится. Но при попытке выполнить mysql_upgrade в chroot всё так же воспроизводится "FATAL ERROR: Could not open or create the upgrade info file '/db/mysql_upgrade_info'".
(Ответ для Ivan Alekseev на комментарий #4) > После этого ошибка "Cannot load from mysql.proc" не воспроизводится. Уточню, после обратного включения mysqld-chroot ошибка тоже не воспроизводится.
(Ответ для Ivan Alekseev на комментарий #4) > Команда mysql_upgrade успешно выполняется после отключения mysqld-chroot: > 1. # control mysqld-chroot disabled > 2. # systemctl restart mysqld > 3. # mysql_upgrade > После этого ошибка "Cannot load from mysql.proc" не воспроизводится. > > Но при попытке выполнить mysql_upgrade в chroot всё так же воспроизводится > "FATAL ERROR: Could not open or create the upgrade info file > '/db/mysql_upgrade_info'". Спасибо, мил человек. Столкнулся с тем же самым в mariadb-10.6.16 на P10. Вынужден был это сделать ради смены пароля root скриптом mariadb-secure-installation. Иначе была ошибка "ERROR 1146 (42S02) at line 1: Table 'mysql.global_priv' doesn't exist".