Copia de seguridad de una sola tabla usando Mysqldump

Migel Hewage Nimesha 15 febrero 2024
  1. Crear una tabla en MySQL
  2. Copia de seguridad de una sola tabla en MySQL usando mysqldump
  3. Conclusión
Copia de seguridad de una sola tabla usando Mysqldump

Aunque MySQL no es ni una base de datos ni un lenguaje de programación, es una herramienta de código abierto ampliamente utilizada para administrar y organizar datos en bases de datos. Este artículo analiza mysqldump, sus usos y cómo hacer una copia de seguridad de una sola tabla usando mysqldump, junto con un ejemplo.

Crear una tabla en MySQL

Para hacer una copia de seguridad de una sola tabla, primero debemos crear una. Vamos a crear una tabla simple usando CREATE TABLE en MySQL.

Sintaxis:

CREATE TABLE table_name (
    column1 data_type,
    column2 data_type,
    .....
);

Veamos un ejemplo. En un nuevo esquema, creemos la tabla empleado.

CREATE TABLE employee (
    EmployeeID int,
    FirstName varchar(255),
    LastName varchar(255),
    Address varchar(255),
    PhoneNumber int
);

Insertemos algunos detalles en la tabla.

INSERT INTO employee (employeeID, FirstName, LastName, Address, PhoneNumber)
VALUES ('001', 'John', 'Andrew','London','4420112');

Puede ver la tabla de salida del código anterior usando esta consulta.

SELECT * FROM employee;

Producción:

MySQL Crear una tabla

Hay varios tipos de copias de seguridad en MySQL. La técnica de copia de seguridad que emplee depende de las variables, el tamaño de los datos, el equipo, los objetivos de rendimiento, la capacidad de almacenamiento de la base de datos, etc.

También se debe considerar el tiempo que llevará restaurar la copia de seguridad.

MySQL admite estos formatos de copia de seguridad:

  1. La copia de seguridad lógica devuelve una estructura de base de datos en un archivo .sql creando las declaraciones CREATE o INSERT. Podemos usar la herramienta mysqldump más tarde para restaurar este archivo.

    Debido a que solo realiza copias de seguridad de datos sin índices, este tipo es compacto. El hecho de que deba ejecutar cada frase por separado hace que su opción de recuperación sea más lenta que las demás.

  2. La copia de seguridad física vuelve a imprimir los archivos de la base de datos en el mismo formato en que se guardaron en el disco. Aunque es más rápido que la copia de seguridad lógica, solo se puede restaurar desde el mismo motor de base de datos al servidor MySQL.

  3. La copia de seguridad coherente vuelve a imprimir los archivos en el momento exacto, solo después de que el servidor se detenga o se bloquee.

Copia de seguridad de una sola tabla en MySQL usando mysqldump

Las copias de seguridad pueden almacenar los datos originales antes de que se actualicen o eliminen. Hay diferentes tipos de copias de seguridad en MySQL según el tamaño de los datos, la capacidad de almacenamiento de su base de datos, etc.

mysqldump es el comando utilizado para hacer una copia de seguridad de la base de datos MySQL y se encuentra en el directorio de instalación del servidor MySQL.

Veamos cómo hacer una copia de seguridad de una sola tabla usando el comando mysqldump. Las versiones de MySQL anteriores a la 5.0 hacían uso del concepto de tabla de respaldo.

Sintaxis:

mysqldump -u [username] p [password] -h [host name] [database_name] [tablename] > [dumpfilename.sql]

Explicación de la sintaxis anterior:

  • -u (--user = "username" ): Este es el nombre de usuario conectado a MySQL.
  • -p (--p): Esta es la contraseña del usuario.
  • -h(--host = ‘host name’): Este es el nombre del servidor al que se quiere conectar para volcar los datos.
  • database_name: este es el nombre de la base de datos que desea respaldar.
  • tablename: este es el nombre de la tabla que desea respaldar.
  • <: Este símbolo hace referencia a la restauración de la base de datos.
  • >: Este símbolo hace referencia a la base de datos de respaldo.
  • dumpfilename.sql: esta es una ruta a un archivo de volcado que contiene una copia de seguridad de la base de datos.

Asigne al comando mysqldump el nombre de la tabla en particular si desea realizar una copia de seguridad de solo esa tabla en la base de datos.

Tome una tabla específica de la otra base de datos como ejemplo. Aquí, estamos usando mysqldump para realizar una copia de seguridad.

Primero, use esta tecla de método abreviado para iniciar el cmd: tecla de Windows+R.

A continuación, ingrese cmd en la opción de búsqueda como se muestra a continuación:

MySQL copia de seguridad de una sola tabla - CMD

Ahora, el cmd se abrirá.

La carpeta bin de MySQL se encuentra en la siguiente ubicación:

C:\Program Files\MySQL\MySQL Server 8.0\bin

Para acceder a la carpeta bin, escriba la ruta que se muestra arriba.

MySQL Copia de seguridad de una sola tabla - Carpeta bin

Consulta las mesas disponibles:

MySQL copia de seguridad de una sola tabla - Comprobar tabla

Cree una carpeta para almacenar las copias de seguridad:

MySQL Copia de seguridad de una sola tabla - Crear carpeta

Ahora estamos en la carpeta bin. La siguiente es la consulta de copia de seguridad:

mysqldump --host=localhost --user=root --port=3306 -p customers employee > backup_single_table.sql

MySQL Copia de seguridad de una sola tabla - Consulta de copia de seguridad

El script de respaldo genera la estructura y los datos solo para la tabla empleado:

MySQL Copia de seguridad de una sola tabla - Script de copia de seguridad

Los datos del guión:

MySQL Copia de seguridad de una sola tabla - Datos de copia de seguridad

Conclusión

En el artículo, discutimos cómo usar el comando mysqldump, una opción de copia de seguridad de MySQL, y dimos un ejemplo de cómo hacer una copia de seguridad de una sola tabla.

También puede buscar otras técnicas de creación de copias de seguridad, como MySQL Workbench y dbForge Studio para MySQL. Además, existen diferentes enfoques en los que puede restaurar datos de bases de datos.

Migel Hewage Nimesha avatar Migel Hewage Nimesha avatar

Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.

Artículo relacionado - MySQL Backup

Artículo relacionado - MySQL Table