Cómo hacer una copia de seguridad y restaurar los datos de la base de datos MySQL

Tabla de contenido

1. Copia de seguridad de MySQL

Método de copia de seguridad

copia de seguridad completa

respaldo diferencial

respaldo incremental

2. Métodos de copia de seguridad comunes

Espera física en frío

Herramientas especiales de copia de seguridad mysqldump o mysqlhotcopy

Habilite registros binarios para copias de seguridad incrementales

Copia de seguridad de herramientas de terceros

3. Copia de seguridad completa de MySQL

4. Clasificación de copia de seguridad completa de la base de datos

Copia de seguridad y recuperación física en frío

copia de seguridad y recuperación de mysqldump

5. Copia de seguridad y recuperación física en frío

Consulte la base de datos actual

Primero cierre el servicio de base de datos.

Instalación de herramientas de compresión relacionadas.

Descomprimir archivos de datos para realizar una copia de seguridad

Eliminar datos a otro archivo

A continuación descomprimiremos y restauraremos los datos.

Cambie al directorio para ver si los archivos se restauran

Inicie el servicio para ver si puede iniciarse normalmente.

Comprobar si los datos existen

6. copia de seguridad y recuperación de mysqldump (copia de seguridad en caliente)

Para realizar una copia de seguridad completa, especifique el repositorio completo

Haga una copia de seguridad completa de todas las bases de datos en el servidor MySQL

Copia de seguridad completa de algunas tablas en la biblioteca especificada

Cómo ver archivos de respaldo

Realizar recuperación de datos

Usar fuente para restaurar la base de datos

Simulando una falla en la base de datos

Restaurar base de datos

Compruebe si los datos se recuperan

Utilice la declaración mysql para restaurar la base de datos

Realizar recuperación de base de datos

Inicie sesión en la base de datos para ver si está restaurada.

7. Copia de seguridad incremental

Primero habilite la función de registro binario

Reinicie el servicio MySQL de la base de datos.

Hacer una copia de seguridad de un archivo de registro binario

Ver el contenido del archivo de registro binario

Actualizar genera nuevos archivos de registro binarios

Ingrese a la base de datos para crear nuevos datos.

Cree nuevos datos para agregar contenido del archivo de registro binario

Ver nuevos archivos de registro binarios


1. Copia de seguridad de MySQL

El objetivo principal de la copia de seguridad es la recuperación ante desastres. La copia de seguridad también puede probar aplicaciones, revertir modificaciones de datos y consultar datos históricos. , auditoría, etc., y los registros juegan un papel muy importante en la restauración de copias de seguridad.

La ubicación de almacenamiento predeterminada de los registros de MySQL es el archivo de registro en el directorio /etc/local/mysql/data.

La copia de seguridad de datos se puede dividir en copia de seguridad física y copia de seguridad lógica. La copia de seguridad física es una copia de seguridad de los archivos físicos del sistema operativo de la base de datos (como archivos de datos y archivos de registro, etc.). Este tipo de copia de seguridad es adecuada para bases de datos grandes que necesitan para ser restaurado rápidamente cuando ocurren problemas base de datos importante

Copia de seguridad en frío (copia de seguridad sin conexión): se realiza cuando la base de datos está cerrada (tar)

Copia de seguridad en caliente (copia de seguridad en línea): la base de datos se está ejecutando y depende de los archivos de registro de la base de datos (MySQLbackup)

Copia de seguridad en caliente: realice la operación de copia de seguridad (MySQLdump) mientras la base de datos está bloqueada (no se puede escribir pero sí leer).

Método de copia de seguridad

Hay tres métodos de copia de seguridad, incluida la copia de seguridad completa, la copia de seguridad diferencial y la copia de seguridad incremental.

copia de seguridad completa

Cada vez que se realiza una copia de seguridad completa de los datos, es decir, una copia de seguridad de toda la base de datos, la estructura de la base de datos y la estructura de archivos, lo que se guarda es la base de datos en el momento en que se completa la copia de seguridad, es la base para la copia de seguridad diferencial y Copia de seguridad incremental. Las operaciones de copia de seguridad y recuperación de la copia de seguridad completa son muy simples y convenientes, pero hay mucha duplicación de datos y ocupa mucho espacio en el disco, y el tiempo de copia de seguridad también es muy largo.

Realizar una copia de seguridad completa cada vez hará que el archivo de copia de seguridad ocupe un espacio enorme y contenga una gran cantidad de datos duplicados. Al restaurar, simplemente use el archivo de copia de seguridad completo directamente.

respaldo diferencial

Haga una copia de seguridad de todos los archivos que se han modificado desde la última copia de seguridad completa. El momento de la copia de seguridad es desde la última copia de seguridad completa y la cantidad de datos de la copia de seguridad será cada vez mayor. Al restaurar datos, solo necesita restaurar la última copia de seguridad completa y la mejor copia de seguridad diferencial

Cada copia de seguridad diferencial realizará una copia de seguridad de los datos después de la última copia de seguridad completa y es posible que aparezcan datos duplicados. Al restaurar, primero restaure los datos de la copia de seguridad completa y luego restaure los datos de la copia de seguridad diferencial.

respaldo incremental

Sólo se realizarán copias de seguridad de aquellos archivos que hayan sido modificados desde la última copia de seguridad completa o incremental. La hora de la última copia de seguridad completa o de la última copia de seguridad incremental se utiliza como punto de tiempo. Sólo los datos cambian durante el período de copia de seguridad, por lo que el La cantidad de datos respaldados es pequeña, ocupa poco espacio y tiene una velocidad de respaldo rápida. Sin embargo, al restaurar, todos los incrementos entre la última copia de seguridad completa y la última copia de seguridad incremental deben restaurarse en secuencia. Si los datos de la copia de seguridad intermedia se dañan, los datos se perderán. Cada copia de seguridad incremental es una copia de seguridad. La última copia de seguridad completa se completó tiempo

Cada copia de seguridad incremental realiza una copia de seguridad de los datos después de la última copia de seguridad completa o incremental. No habrá duplicación de datos y no ocupará espacio adicional en el disco para restaurar los datos. Las copias de seguridad completas y las copias de seguridad incrementales deben restaurarse en orden.

2. Métodos de copia de seguridad comunes

Espera física en frío

La base de datos se cierra durante la copia de seguridad y el archivo de la base de datos (tar) se empaqueta directamente. La velocidad de la copia de seguridad es rápida y la recuperación también es la más sencilla.

Herramientas especiales de copia de seguridad mysqldump o mysqlhotcopy

Mysqldump, la herramienta de copia de seguridad lógica mysqlhotcopy comúnmente utilizada, solo tiene la capacidad de realizar copias de seguridad de tablas MyISAM y ARCHIVE.

Habilite registros binarios para copias de seguridad incrementales

Para realizar una copia de seguridad incremental, debe actualizar el registro binario

MySQL admite copias de seguridad incrementales y los registros binarios deben estar habilitados al realizar copias de seguridad incrementales. Los archivos de registro binarios brindan a los usuarios una copia de la información necesaria para recuperar los cambios en la base de datos realizados después de realizar el punto de respaldo. Si realiza una copia de seguridad incremental (que contiene modificaciones de datos que ocurrieron desde la última copia de seguridad completa o incremental), debe actualizar el registro binario.

Copia de seguridad de herramientas de terceros

Software gratuito de copia de seguridad en caliente de MySQL Percona XtraBackup mysqlbackup

3. Copia de seguridad completa de MySQL

  • Es una copia de seguridad de toda la base de datos, la estructura de la base de datos y la estructura de archivos.

  • Lo que se guarda es la base de datos en el momento en que se completa la copia de seguridad.

  • Es la base del respaldo diferencial y del respaldo incremental.

  • Pros y contras de la copia de seguridad completa de MySQL

1. Ventajas: las operaciones de copia de seguridad y recuperación son simples y convenientes

2. Desventajas: hay mucha duplicación de datos, lo que ocupa mucho espacio de copia de seguridad y lleva mucho tiempo realizar copias de seguridad y restaurar.

4. Clasificación de copia de seguridad completa de la base de datos

Copia de seguridad y recuperación física en frío

Cierre la base de datos MySQL y use el comando tar para empaquetar directamente la carpeta de la base de datos y reemplazar directamente el directorio MySQL existente.

copia de seguridad y recuperación de mysqldump

La herramienta de copia de seguridad que viene con MySQL puede realizar copias de seguridad de MySQL fácilmente. Puede exportar las bibliotecas y tablas especificadas como scripts SQL. Utilice el comando mysq| para importar los datos respaldados.

5. Copia de seguridad y recuperación física en frío

Consulte la base de datos actual

Comando: mostrar bases de datos;

mostrar mesas;

Primero cierre el servicio de base de datos.

Realizar copia de seguridad en frío nuevamente

Instrucción: systemctl detener firewalld

Instalación de herramientas de compresión relacionadas.

Comando: yum -y instalar xz

Descomprimir archivos de datos para realizar una copia de seguridad

Ejemplo: tar Jcvf /opt/mysql_all_$(date +%F).tar.xz /usr/local/mysql/data

Eliminar datos a otro archivo

Instrucción: mv /usr/local/mysql/data /opt

A continuación descomprimiremos y restauraremos los datos.

Instrucción: mkdir /usr/local/mysql/data

tar Jxvf /opt/mysql_all_2023-07-18.tar.xz -C /usr/local/mysql/data

Cambie al directorio para ver si los archivos se restauran

Instrucción: cd /usr/local/mysql/data

Inicie el servicio para ver si puede iniciarse normalmente.

Comando: systemctl inicia mysqld.service

Comprobar si los datos existen

Comando: mostrar bases de datos;

mostrar tablas; 

6. copia de seguridad y recuperación de mysqldump (copia de seguridad en caliente)

Para realizar una copia de seguridad completa, especifique el repositorio completo

Comando: mysqldump -u root -p [contraseña] --databases [nombre de la biblioteca] > [nombre del archivo de ruta de respaldo].sql

Haga una copia de seguridad completa de todas las bases de datos en el servidor MySQL

Comando: mysqldump -u root -p[contraseña] --all-databases > [nombre del archivo de ruta de respaldo].sql

Copia de seguridad completa de algunas tablas en la biblioteca especificada

Comando: mysqldump -u root -p [contraseña] nombre de la biblioteca [nombre de la tabla 1] [nombre de la tabla 2] ... > [nombre del archivo de ruta de respaldo].sql

Cómo ver archivos de respaldo

Comando: grep -v "^--" /opt/[nombre de archivo].sql | grep -v "^/" | grep -v "^$"

Realizar recuperación de datos

Para archivos exportados usando mysqldump, puede usar el método de importación
① comando fuente
② comando mysql

Usar fuente para restaurar la base de datos

Inicie sesión en la base de datos primero

Comando: mysql -u [nombre de usuario] -p [contraseña]

Simulando una falla en la base de datos

Comando: soltar la base de datos [nombre de la base de datos];

Restaurar base de datos

Comando: fuente [ruta completa del archivo de copia de seguridad].sql;

Compruebe si los datos se recuperan

Comando: mostrar bases de datos;

mostrar mesas;

Utilice la declaración mysql para restaurar la base de datos

Simule nuevamente el error de la base de datos para perder datos

Comando: soltar la base de datos [nombre de la base de datos];

Realizar recuperación de base de datos

Salga de la base de datos y restaure desde la línea de comando

Comando: mysql -u[nombre de usuario] -p[contraseña] <[ruta completa al archivo de copia de seguridad].sql

Inicie sesión en la base de datos para ver si está restaurada.

Comando: mysql -u[nombre de usuario] -p[contraseña]

mostrar bases de datos;

mostrar mesas;

7. Copia de seguridad incremental

Primero habilite la función de registro binario

La copia de seguridad incremental debe basarse en una copia de seguridad completa, por lo tanto, antes de realizar una copia de seguridad incremental, haga una copia de seguridad completa de los datos actuales en la base de datos para garantizar la integridad de los datos al comienzo de la copia de seguridad.

Comando: vim /etc/my.cnf

Reinicie el servicio MySQL de la base de datos.

Comando: systemctl reiniciar mysqld

Hacer una copia de seguridad de un archivo de registro binario

Comando: cp /usr/local/mysql/data/mysql-bin.000001 /opt

Ver el contenido del archivo de registro binario

Ejemplo: mysqlbinlog --no-defaults --base64-output=decode-rows -v /opt/mysql-bin.000001

Partes del registro binario que necesitan atención

1. en: punto de posición inicial

2. end_log_pos: posición final

3. Marca de tiempo: 210712 11:50:30

4. Declaración SQL

Actualizar genera nuevos archivos de registro binarios

Instrucción: mysqladmin -uroot -p flush-logs

Ingrese a la base de datos para crear nuevos datos.

Comando: mysql -u[nombre de usuario] -p[contraseña]

Cree nuevos datos para agregar contenido del archivo de registro binario

Instrucción: crear base de datos lll;

Ver nuevos archivos de registro binarios

Ejemplo: mysqlbinlog --no-defaults --base64-output=decode-rows -v /usr/local/mysql/data/mysql-bin.000002

 

Supongo que te gusta

Origin blog.csdn.net/Liu_Fang_Hong/article/details/131773530
Recomendado
Clasificación