MySQL case combat - холодное резервное копирование базы данных MySQL

Предисловие

Эта среда основана на системе Centos 7.8 для сборки MySQL-5.7.14 для
конкретной конструкции, обратитесь к построению среды MySQL-5.7.14

Резервное копирование - это самая важная вещь, которую следует учитывать в системе. Хотя на них приходится менее 1% всего процесса планирования, разработки и тестирования системы, кажущиеся незначительными и непонятные работы могут быть полностью отражены только после восстановления. Важность Причина в том, что любая потеря данных и любая попытка увидеть, что данные отключены, не могут быть приняты. Резервное копирование базы данных также важно.Далее мы познакомимся со стратегией базы данных MySQL.


1. Тип резервной копии базы данных

Классификация резервных копий

1. Горячее резервное копирование, горячее резервное копирование, холодное резервное копирование (в зависимости от статуса сервера)

  • Горячее резервное копирование: чтение и запись не затрагиваются;
  • Горячая резервная копия: можно выполнять только операции чтения;
  • Холодное резервное копирование: автономное резервное копирование; операции чтения и записи прерываются;

2. Физическое резервное копирование и логическое резервное копирование (отдельно от объекта)

  • Физическое резервное копирование: копирование файлов данных;
  • Логическое резервное копирование: экспорт данных в текстовый файл;

3. Полное резервное копирование, инкрементное резервное копирование, дифференциальное резервное копирование (отделенное от сбора данных)

  • Полное резервное копирование: резервное копирование всех данных;
  • Инкрементное резервное копирование: резервное копирование только тех данных, которые изменились с момента последнего полного или инкрементного резервного копирования;
  • Дифференциальное резервное копирование: резервное копирование только тех данных, которые изменились с момента последнего полного резервного копирования.

Сравнение преимуществ и недостатков стратегий резервного копирования
Вставьте описание изображения сюда

Вставьте описание изображения сюда

Преимущества и недостатки логического резервного копирования

1. Преимущества логического резервного копирования:

  • С точки зрения скорости резервного копирования, два типа резервного копирования зависят от разных механизмов хранения.
  • Скорость восстановления физической резервной копии очень высока. Но минимальная степень детализации физического резервного копирования может быть выполнена только для таблиц.
  • Структура логической резервной копии обычно представляет собой чистый ASCII, поэтому мы можем использовать инструменты обработки текста для обработки
  • Логическое резервное копирование имеет очень сильную совместимость, в то время как физическое резервное копирование имеет очень высокие требования к версии
  • Логическое резервное копирование также гарантирует безопасность данных

2. Недостатки логического резервного копирования:

  • Логическое резервное копирование оказывает дополнительное давление на РСУБД, тогда как голое резервное копирование не оказывает давления
  • Результат логической резервной копии может быть больше исходного файла. Так много людей сжимают содержимое резервной копии
  • Логическое резервное копирование может потерять информацию о точности чисел с плавающей запятой

Во-вторых, содержимое резервной копии базы данных

  • Дата файлы
  • Файлы журналов (например, журналы транзакций, двоичные журналы)
  • Хранимые процедуры, хранимые функции, триггеры
  • Файл конфигурации (очень важно, каждый файл конфигурации должен быть зарезервирован)
  • Скрипты, используемые для резервного копирования базы данных, Crontab для очистки базы данных и т. Д.

3. Холодное резервное копирование базы данных MySQL.

1. Экологическая подготовка

Два сервера MySQL-7.5.14
node01 и node02 на базе системы Centos

2. Требования к резервному копированию

Требование: выполните резервное копирование всех данных базы данных MySQL узла 01 на сервер базы данных узла 02 и убедитесь, что данные резервной копии доступны на сервере узла 02.

3. Процесс резервного копирования

Просмотр информации о базе данных сервера узла node01

mysql> use db1;
Database changed
mysql> show tables;
+---------------+
| Tables_in_db1 |
+---------------+
| fruits        |
+---------------+
1 row in set (0.00 sec)

mysql> select * from fruits;
+------+------+------------+---------+
| f_id | s_id | f_name     | f_price |
+------+------+------------+---------+
| a1   |  101 | apple      |    5.20 |
| a2   |  103 | apricot    |    2.20 |
| b1   |  101 | blackberry |   10.20 |
| b2   |  104 | berry      |    7.60 |
| b5   |  107 | xxxx       |    3.60 |
| bs1  |  102 | orange     |   11.20 |
| bs2  |  105 | melon      |    8.20 |
| c0   |  101 | cherry     |    3.20 |
| l2   |  104 | lemon      |    6.40 |
| m1   |  106 | mango      |   15.60 |
| m2   |  105 | xbabay     |    2.60 |
| m3   |  105 | xxtt       |   11.60 |
| o2   |  103 | coconut    |    9.20 |
| t1   |  102 | banana     |   10.30 |
| t2   |  102 | grape      |    5.30 |
| t4   |  107 | xbababa    |    3.60 |
+------+------+------------+---------+
16 rows in set (0.00 sec)

mysql> 

узел node01, начните упаковывать файлы резервных копий базы данных

# 停止mysqld服务
[root@mysql-yum ~]# systemctl stop mysqld
# 打包文件
[root@mysql-yum ~]# cd  /var/lib/mysql
[root@mysql-yum mysql]# ll
total 110660
-rw-r-----. 1 mysql mysql       56 Jan 14 13:38 auto.cnf
-rw-------. 1 mysql mysql     1679 Jan 14 13:38 ca-key.pem
-rw-r--r--. 1 mysql mysql     1074 Jan 14 13:38 ca.pem
-rw-r--r--. 1 mysql mysql     1078 Jan 14 13:38 client-cert.pem
-rw-------. 1 mysql mysql     1679 Jan 14 13:38 client-key.pem
drwxr-x---  2 mysql mysql       56 Jan 16 17:30 db1
-rw-r-----  1 mysql mysql      309 Jan 16 17:34 ib_buffer_pool
-rw-r-----. 1 mysql mysql 12582912 Jan 16 17:34 ibdata1
-rw-r-----. 1 mysql mysql 50331648 Jan 16 17:34 ib_logfile0
-rw-r-----. 1 mysql mysql 50331648 Jan 14 13:38 ib_logfile1
drwxr-x---. 2 mysql mysql     4096 Jan 14 13:38 mysql
drwxr-x---. 2 mysql mysql     8192 Jan 14 13:38 performance_schema
-rw-------. 1 mysql mysql     1679 Jan 14 13:38 private_key.pem
-rw-r--r--. 1 mysql mysql      451 Jan 14 13:38 public_key.pem
-rw-r--r--. 1 mysql mysql     1078 Jan 14 13:38 server-cert.pem
-rw-------. 1 mysql mysql     1675 Jan 14 13:38 server-key.pem
drwxr-x---. 2 mysql mysql     8192 Jan 14 13:38 sys
[root@mysql-yum mysql]# tar czf /opt/mysql_datafile.bak.tar.gz *
[root@mysql-yum mysql]# ll /opt/
total 1348
-rw-r--r-- 1 root root 1378773 Jan 16 17:42 mysql_datafile.bak.tar.gz
# 拷贝文件
[root@mysql-yum mysql]# scp /opt/mysql_datafile.bak.tar.gz 192.168.5.12:/opt/

узел node02 запускается, ответные данные

# 查看备份数据包
[root@mysql-rpm ~]# ll /opt/mysql_datafile.bak.tar.gz 
-rw-r--r-- 1 root root 1378773 Jan 16 17:43 /opt/mysql_datafile.bak.tar.gz
# 停止mysqld服务
[root@mysql-rpm ~]# systemctl stop mysqld
# 删除原有的mysqld服务数据存放目录的文件
[root@mysql-rpm ~]# cd /var/lib/mysql
[root@mysql-rpm mysql]# rm -rf ./*
# 解压备份数据到mysqld服务数据存放目录
[root@mysql-rpm mysql]# tar xf /opt/mysql_datafile.bak.tar.gz -C /var/lib/mysql
[root@mysql-rpm mysql]# ll
total 110660
-rw-r----- 1 mysql mysql       56 Jan 14 13:38 auto.cnf
-rw------- 1 mysql mysql     1679 Jan 14 13:38 ca-key.pem
-rw-r--r-- 1 mysql mysql     1074 Jan 14 13:38 ca.pem
-rw-r--r-- 1 mysql mysql     1078 Jan 14 13:38 client-cert.pem
-rw------- 1 mysql mysql     1679 Jan 14 13:38 client-key.pem
drwxr-x--- 2 mysql mysql       56 Jan 16 17:30 db1
-rw-r----- 1 mysql mysql      309 Jan 16 17:34 ib_buffer_pool
-rw-r----- 1 mysql mysql 12582912 Jan 16 17:34 ibdata1
-rw-r----- 1 mysql mysql 50331648 Jan 16 17:34 ib_logfile0
-rw-r----- 1 mysql mysql 50331648 Jan 14 13:38 ib_logfile1
drwxr-x--- 2 mysql mysql     4096 Jan 14 13:38 mysql
drwxr-x--- 2 mysql mysql     8192 Jan 14 13:38 performance_schema
-rw------- 1 mysql mysql     1679 Jan 14 13:38 private_key.pem
-rw-r--r-- 1 mysql mysql      451 Jan 14 13:38 public_key.pem
-rw-r--r-- 1 mysql mysql     1078 Jan 14 13:38 server-cert.pem
-rw------- 1 mysql mysql     1675 Jan 14 13:38 server-key.pem
drwxr-x--- 2 mysql mysql     8192 Jan 14 13:38 sys
# 启动mysqld服务
[root@mysql-rpm mysql]# systemctl start mysqld
[root@mysql-rpm mysql]# netstat -lnutp | grep mysqld
tcp6       0      0 :::3306                 :::*                    LISTEN      2135/mysqld 

node02 эффект резервного копирования проверки узла

[root@mysql-rpm mysql]# mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.14 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| db1                |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

mysql> use db1;
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 tables;
+---------------+
| Tables_in_db1 |
+---------------+
| fruits        |
+---------------+
1 row in set (0.00 sec)

mysql> select * from fruits;
+------+------+------------+---------+
| f_id | s_id | f_name     | f_price |
+------+------+------------+---------+
| a1   |  101 | apple      |    5.20 |
| a2   |  103 | apricot    |    2.20 |
| b1   |  101 | blackberry |   10.20 |
| b2   |  104 | berry      |    7.60 |
| b5   |  107 | xxxx       |    3.60 |
| bs1  |  102 | orange     |   11.20 |
| bs2  |  105 | melon      |    8.20 |
| c0   |  101 | cherry     |    3.20 |
| l2   |  104 | lemon      |    6.40 |
| m1   |  106 | mango      |   15.60 |
| m2   |  105 | xbabay     |    2.60 |
| m3   |  105 | xxtt       |   11.60 |
| o2   |  103 | coconut    |    9.20 |
| t1   |  102 | banana     |   10.30 |
| t2   |  102 | grape      |    5.30 |
| t4   |  107 | xbababa    |    3.60 |
+------+------+------------+---------+
16 rows in set (0.00 sec)

mysql> 

Резервное копирование данных завершено! ! !

рекомендация

отblog.csdn.net/XY0918ZWQ/article/details/112716143
рекомендация