1) Устанавливаем необходимый софт

cd /root/
wget https://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-utilities-1.6.5-1.el7.noarch.rpm
wget https://dev.mysql.com/get/Downloads/Connector-Python/mysql-connector-python-2.1.7-1.el7.x86_64.rpm
yum install mysql-utilities-1.6.5-1.el7.noarch.rpm mysql-connector-python-2.1.7-1.el7.x86_64.rpm

2) Копируем всю директорию mysql, убедитесь что Вы имеете достаточное количество свободного дискового пространства

mkdir /root/corrupt_mysql
cp -r /var/lib/mysql /root/corrupt_mysql/

3) Запускаем mysql

systemctl start mysql

Если БД не запускается то постепенно повышаем параметр innodb_force_recovery от 2 и выше в /etc/my.cnf

Проставляем грант

mysql -e'grant all on . to frm@localhost identified by "MysqlFRMSecret678";'

4) Указываем имя поврежденной БД и восстанавливаем схему

DATABASE=brokendbname
for file in $(ls /root/corrupt_mysql/mysql/${DATABASE}/*.frm); do mysqlfrm --server=frm:MysqlFRMSecret678@localhost:/var/lib/mysql/mysql.sock --diagnostic $file | grep -v "WARNING" >> /root/corrupt_mysql/${DATABASE}_create.sql ; done
sed -i 's##utf8#g' /root/corrupt_mysql/${DATABASE}_create.sql

5) Удаляем поврежденную базу данных

mysql -e'drop database ${DATABASE};'
rm -rf /var/lib/mysql/${DATABASE}/

6) Комментируем в конфиге innodb_force_recovery и перезапускаем mysql

systemctl restart mysql

7) Создаем бд и загружаем схему

mysql -e'create database ${DATABASE};'
mysql --force ${DATABASE} < /root/corrupt_mysql/${DATABASE}_create.sql

8) Копируем файлы таблиц из ранее скопированной директории с поврежденной БД и восстанавливаем данные каждой таблицы, проставляем права

for table in $(mysql -e 'show tables from ${DATABASE};' | grep -v "Tables_in"); do mysql ${DATABASE} -e"ALTER TABLE $table DISCARD TABLESPACE;"; done
for table in $(mysql -e 'show tables from ${DATABASE};' | grep -v "Tables_in"); do rsync -avzP /root/corrupt_mysql/mysql/${DATABASE}/$table.ibd /var/lib/mysql/${DATABASE}/ ; done
chown -R mysql:mysql /var/lib/mysql/
for table in $(mysql -e 'show tables from ${DATABASE};' | grep -v "Tables_in"); do mysql ${DATABASE} -e"ALTER TABLE $table IMPORT TABLESPACE;"; done

Перезапускаем mysql

systemctl restart mysql

Проверяем данные в таблице


0 Comments

JasonCag · 25.05.2025 at 22:29

Добрый день!
Вы можете виртуальный номер навсегда для регистрации в любых сервисах. виртуальный номер навсегда — это цифровая свобода и приватность. Сейчас самое время виртуальный номер навсегда без лишних документов. Наши клиенты рекомендуют виртуальный номер навсегда друзьям и коллегам. Современные технологии позволяют виртуальный номер навсегда за минуту.
Полная информация по ссылке — http://www.ykoctpa.ru/groups/zakazat-virtualnyj-telefon/forum/
виртуальный номер, виртуальный номер телефона, виртуальный номер
купить виртуальный номер навсегда, купить виртуальный номер навсегда, виртуальный номер
Удачи и комфорта в общении!

JasonCag · 26.05.2025 at 06:37

Здравствуйте!
Виртуальный номер навсегда – это лучший способ сохранить конфиденциальность. Купите постоянный виртуальный номер для смс, который подходит для всех популярных платформ. Мы предоставляем надежные номера с возможностью долгосрочного использования. Постоянный виртуальный номер – это ваш универсальный инструмент для общения. Выбирайте удобство с нашими услугами.
Полная информация по ссылке — http://www.8zhe.com.cn/20240129/28519026.html
Виртуальный номер навсегда, купить виртуальный номер для смс навсегда, постоянный виртуальный номер
купить виртуальный номер навсегда, постоянный виртуальный номер для смс, постоянный виртуальный номер
Удачи и комфорта в общении!

Williamkic · 26.05.2025 at 20:20

Привет всем!
Постоянный виртуальный номер – это идеальный выбор для современного мира. Купите виртуальный номер навсегда и забудьте о сложностях с подключением. Наши услуги обеспечивают стабильность и надежность для смс и других задач. Виртуальный номер – это свобода, которую вы заслуживаете. Выбирайте наши выгодные условия уже сейчас.
Полная информация по ссылке — https://hyipzen.com/index.php?/profile/835-jasonbeiva/
купить постоянный виртуальный номер, постоянный виртуальный номер для смс, виртуальный номер
постоянный виртуальный номер для смс, купить постоянный виртуальный номер, купить виртуальный номер для смс навсегда
Удачи и комфорта в общении!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *