Realizar una copia de seguridad de una sola tabla
En este paso, aprenderá cómo realizar una copia de seguridad de una sola tabla de una base de datos MySQL utilizando el comando mysqldump
. Esto es útil cuando solo necesita realizar una copia de seguridad de una tabla específica y no de toda la base de datos.
Seguiremos utilizando la base de datos mydatabase
y la tabla users
que creamos en el paso anterior.
Para realizar una copia de seguridad de una sola tabla, se utiliza el mismo comando mysqldump
, pero se especifica el nombre de la tabla después del nombre de la base de datos:
mysqldump -u [username] -p[password] [database_name] [table_name] > [output_file.sql]
Reemplace [username]
con su nombre de usuario de MySQL (por lo general root
), [password]
con su contraseña de MySQL (si tiene alguna), [database_name]
con el nombre de la base de datos (mydatabase
), [table_name]
con el nombre de la tabla que desea exportar (users
) y [output_file.sql]
con el nombre del archivo donde desea guardar la copia de seguridad (por ejemplo, users_backup.sql
).
En nuestro caso, el comando sería:
mysqldump -u root -p mydatabase users > ~/project/users_backup.sql
Se le solicitará la contraseña de root de MySQL. Ingrese la contraseña (si tiene alguna).
Este comando creará un archivo llamado users_backup.sql
en su directorio ~/project
, que contiene las declaraciones SQL necesarias para recrear la tabla users
y su contenido.
Puede verificar que se haya creado el archivo listando el contenido de su directorio ~/project
:
ls ~/project
Debería ver tanto mydatabase_backup.sql
(del paso anterior) como users_backup.sql
en la salida.
También puede ver el contenido del archivo de copia de seguridad utilizando nano
:
nano ~/project/users_backup.sql
Esto le mostrará las declaraciones SQL que mysqldump
generó específicamente para la tabla users
. Presione Ctrl+X
para salir de nano
.
Ahora, agreguemos otra tabla a nuestra base de datos para ilustrar mejor el proceso de copia de seguridad de una sola tabla. Conéctese al servidor MySQL:
mysql -u root -p
Cambie a la base de datos mydatabase
:
USE mydatabase;
Cree una nueva tabla llamada products
:
CREATE TABLE products (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
price DECIMAL(10, 2)
);
Inserta algunos datos de muestra en la tabla products
:
INSERT INTO products (name, price) VALUES
('Laptop', 1200.00),
('Mouse', 25.00);
Salga de la shell de MySQL:
exit
Ahora, si solo desea realizar una copia de seguridad de la tabla products
, utilizaría el siguiente comando:
mysqldump -u root -p mydatabase products > ~/project/products_backup.sql
Esto creará un archivo llamado products_backup.sql
en su directorio ~/project
que contiene solo los datos de la tabla products
.