Mysql Резервное копирование Percona завершает работу экземпляра mysql - PullRequest
0 голосов
/ 13 февраля 2020

Я запускаю основную c заднюю часть моей mysql базы данных. Я не уверен, почему он закрывается. Я получаю сообщение о завершении резервного копирования и после завершения подготовки. Но экземпляр все еще падает. Я запускаю только два экземпляра. Я создаю резервную копию одного.

xtrabackup --defaults-file=/etc/alternatives/my.cnf --defaults-group=mysqld5 --socket=/var/run/mysqld/db5.sock --user=mysqladmin --password=password --backup --throttle 400 --target-dir=/mysqlbackup/current --no-timestamp 2> /var/backup.log;

Я отслеживаю файл журнала, чтобы убедиться, что он завершен и завершен. Затем я запускаю подготовить

xtrabackup --prepare --use-memory=5G --target-dir=/mysqlbackup/current 2 >> /var/backup.log;

Мой файл журнала имеет

xtrabackup: cd to /mysqlbackup/current
xtrabackup: This target seems to be not prepared yet.                                                                                                                                                                                                                                                                                                                           

Doing recovery: scanned up to log sequence number 5642017177088 (8%)
Doing recovery: scanned up to log sequence number 5642076559654 (99%)
Database was not shutdown normally
Starting crash recovery
Progress in percent: 0 1 2 ... 99
Apply batch completed
InnoDB: 96 redo rollback segment(s) found. 1 redo rollback segment(s) are active.                                                                                                                                                                                                                                                                                                
InnoDB: 32 non-redo rollback segment(s) are active.                                                                                                                                                                                                                                                                                                                              
InnoDB: page_cleaner: 1000ms intended loop took 748935ms. The settings might not be optimal. (flushed=0 and evicted=0, during the time.)                                                                                                                                                                                                                                         
InnoDB: 5.7.26 started; log sequence number 5642076559654 
xtrabackup: Last MySQL binlog file position 7017599, file name binlog.000009
xtrabackup: Recovered WSREP position: febfad99-09fe-11ea-ad83-57c73422d738:27384750                                                                                                                                                                                                                                                                                              
xtrabackup: starting shutdown with innodb_fast_shutdown = 1                                                                                                                                                                                                                                                                                                                      
InnoDB: FTS optimize thread exiting.                                                                                                                                                                                                                                                                                                                                             
InnoDB: Starting shutdown...                                                                                                                                                                                                                                                                                                                                                     
InnoDB: Shutdown completed; log sequence number 5642076561674                                                                                                                                                                                                                                                                                                                    
InnoDB: Number of pools: 1                                      
xtrabackup:   innodb_data_home_dir = . 
InnoDB: New log files created, LSN=5642076561674
InnoDB: Doing recovery: scanned up to log sequence number 5642076561941 (0%) 
InnoDB: Database was not shutdown normally! 
InnoDB: Starting crash recovery
InnoDB: Starting shutdown...                                                                                                                                                                                                                                                                                                                                                     
InnoDB: Shutdown completed; log sequence number 5642076561960                                                                                                                                                                                                                                                                                                                    
200213 08:05:36 completed OK!  

1 Ответ

1 голос
/ 13 февраля 2020

Подключитесь к работающему MySQL серверу и запустите его на клиенте:

mysql> SHOW STATUS LIKE 'Uptime';
+---------------+--------+
| Variable_name | Value  |
+---------------+--------+
| Uptime        | 268121 |
+---------------+--------+

Значение - это количество секунд с момента последнего запуска MySQL сервера (пример, который я показываю выше, с mysql на моем ноутбуке и работает до 74 часов, это последний раз, когда я перезагружался).

Я думаю, вы обнаружите, что ваше время безотказной работы указывает на то, что сервер MySQL работает в течение всего времени резервного копирования.

Percona XtraBackup не перезагружает ваш MySQL сервер. Он перезапускает свой собственный движок InnoDB, чтобы имитировать восстановление cra sh из файлов, которые он только что скопировал.

XtraBackup использует много кода, заимствованного из движка InnoDB в самой MySQL, поэтому он поддерживает совместимость с форматом файлов InnoDB. Он использует функцию восстановления sh в InnoDB для «подготовки» своих копий файлов InnoDB, для разрешения любых незавершенных транзакций.

Заимствуя код из движка InnoDB, он выводит похожие сообщения.

...