Domanda

Sto cercando di eseguire il backup di MySQL senza tempi di inattività ma incapace di eseguire il backup usando Xtrabackup.

Il database effettivo è di circa 40+ GB di dimensioni. Sto cercando di soddisfarmi prima. Pertanto, ho creato un database di esempio su un server con 5000 tabelle (tutte le tabelle InnoDB). Secondo il blog "Ci sono alcuni casi in cui puoi ottenere un tavolo completamente mancante dal backup se si utilizza questa tecnica ""-singolo transazione non è sicuro da utilizzare per l'ambiente di produzione.

[root@localhost mysql]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 56
Server version: 5.5.25a-log MySQL Community Server (GPL) by Remi
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| innodbtest         |
| mysql              |
+--------------------+
3 rows in set (0.00 sec)
mysql> use innodbtest;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> show create table T4000;
+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                                                                                                                      |
+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| T4000 | CREATE TABLE `T4000` (
  `A` int(11) NOT NULL,
  `B` int(11) DEFAULT NULL,
  `C` char(1) DEFAULT NULL,
  PRIMARY KEY (`A`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> show create table T3040;
+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                                                                                                                      |
+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| T3040 | CREATE TABLE `T3040` (
  `A` int(11) NOT NULL,
  `B` int(11) DEFAULT NULL,
  `C` char(1) DEFAULT NULL,
  PRIMARY KEY (`A`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql>

Ho usato lo strumento xtrabackup e seguito i passaggi per creare un backup

xtrabackup --backup --datadir=/var/lib/mysql --target-dir=/opt/bkp/

Dopo aver effettuato il backup non ottengo i file ".ibd" nella posizione di backup.

[root@localhost mysql]# ls -al /opt/bkp/
total 190676
drwxr-xr-x 2 root root      4096 Nov 27 19:02 .
drwxr-xr-x 5 root root      4096 Nov 27 18:08 ..
-rw-r----- 1 root root 195035136 Nov 27 19:02 ibdata1
-rw-r----- 1 root root        79 Nov 27 19:02 xtrabackup_checkpoints
-rw-r----- 1 root root      2560 Nov 27 19:02 xtrabackup_logfile
[root@localhost mysql]#

Dopo aver ripristinato il database utilizzando Xtrabackup, non sto ottenendo anche la cartella del database "InnoDBtest" sull'altro server.

Dove sbaglio?

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a dba.stackexchange
scroll top