Як відновити дані з двійкового журналу


11

Як я можу відновити свої файли та фотографії з двійкових файлів?

Відповіді:


7

Чи знаєте ви, з яких бінарних файлів вам потрібно відновити і скільки файлів бінарних файлів?

За допомогою mysqlbinlogутиліти ми можемо переглядати вміст файлів бінгола.

Якщо це єдиний файл, його можна відновити, використовуючи:

mysqlbinlog /var/lib/mysql-bin.000016 | mysql uroot pReset123

Якщо це декілька файлів, просто витягніть весь вміст в один .sql-файл і безпосередньо відновіть його:

mysqlbinlog /var/lib/mysql-bin.000016 > /logs/allbinlog.sql

Щоб додати вміст другого бінга до файлу allbinlof.sql, використовуйте команду нижче:

mysqlbinlog /var/lib/mysql-bin.000016 >> /logs/allbinlog.sql

Ви також можете виключити певні твердження, скориставшись опцією mysqlbinlog. Спробуйте це нижче для варіантів:

mysqlbinlog --help

4

Скористайтеся наведеними нижче кроками для відновлення даних з двійкових журналів або скористайтеся цим посиланням, щоб зрозуміти процес відновлення: Відновлення бінарного журналу MySQL

Спочатку відновіть базу даних з останньої резервної копії

mysql -u username -ppassword database_name < dump.sql

Потім виконайте будь-яке з:

  • Відновлення решти даних з двійкового журналу.

    Якщо у вас є кілька бінарних журналів для запуску на сервері MySQL, безпечним методом є обробка їх усіх за допомогою одного з'єднання з сервером.

    mysqlbinlog mysql_bin.000001 | mysql -u root -ppassword database_name
    mysqlbinlog mysql_bin.000002 | mysql -u root -ppassword database_name

    або:

    mysqlbinlog mysql_bin.000001 mysql_bin.000002 | mysql -u root -ppassword database_name
  • Відновлення даних на основі часу

    mysqlbinlog --start-datetime="2005-04-20 10:01:00" \
                --stop-datetime="2005-04-20 9:59:59" mysql_bin.000001 \
                | mysql -u root -ppassword database_name
  • Відновлення даних на основі позиції

    mysqlbinlog --start-position=368315 \
                --stop-position=368312 mysql_bin.000001 \
                | mysql -u root -ppassword database_name

2
Перший приклад відновлення більш ніж одного двійкового журналу є особливо небезпечним, як зазначено в документації.
Реубен

2

Ви можете використовувати -v варіант , щоб зробити файл .sql в читається форматі.

Наприклад

mysqlbinlog -v /var/lib/mysql-bin.000016 > /logs/allbinlog.sql

mysqlbinlog -v /var/lib/mysql-bin.000016 >> /logs/allbinlog.sql
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.