Está en la página 1de 5

Manejo de Respaldos

1.- Creamos una base de datos llamada pet2


mysql> tee cargadatos.txt
mysql>CREATE DATABASE pet2;
mysql>USE pet2;

2.- Creamos la tabla pet


CREATE TABLE pet
(
name VARCHAR(20),
owner VARCHAR(20),
species VARCHAR(20),
sex CHAR(1),
birth DATE,
death DATE
);

3.- Almacenamos los datos


INSERT INTO pet VALUES ('Fluffy','Harold','cat','f','1993-02-04',NULL);
INSERT INTO pet VALUES ('Claws','Gwen','cat','m','1994-03-17',NULL);
INSERT INTO pet VALUES ('Buffy','Harold','dog','f','1989-05-13',NULL);
INSERT INTO pet VALUES ('Fang','Benny','dog','m','1990-08-27',NULL);
INSERT INTO pet VALUES ('Bowser','Diane','dog','m','1979-08-31','1995-07-29');
INSERT INTO pet VALUES ('Chirpy','Gwen','bird','f','1998-09-11',NULL);
INSERT INTO pet VALUES ('Whistler','Gwen','bird',NULL,'1997-12-09',NULL);
INSERT INTO pet VALUES ('Slim','Benny','snake','m','1996-04-29',NULL);

4.- Listamos los datos


mysql>SELECT * FROM pet;
+----------+--------+---------+------+------------+------------+
| name | owner | species | sex | birth | death |
+----------+--------+---------+------+------------+------------+
| Fluffy | Harold | cat | f | 1993-02-04 | NULL |
| Claws | Gwen | cat | m | 1994-03-17 | NULL |
| Buffy | Harold | dog | f | 1989-05-13 | NULL |
| Fang | Benny | dog | m | 1990-08-27 | NULL |
| Bowser | Diane | dog | m | 1979-08-31 | 1995-07-29 |
| Chirpy | Gwen | bird | f | 1998-09-11 | NULL |
| Whistler | Gwen | bird | NULL | 1997-12-09 | NULL |
| Slim | Benny | snake | m | 1996-04-29 | NULL |
+----------+--------+---------+------+------------+------------+
8 rows in set (0.00 sec)

1
A) Guardar los datos de una tabla en un archivo.

1.- Respaldamos los datos en un archivo de texto


INTO OUTFILE : Indica que el resultado del select se almacenar en un archivo de salida
/tmp/reporte1.txt: Representa la ruta del archivo de salida

Windows:
mysql> SELECT * FROM pet INTO OUTFILE 'C:/reporte1.txt';

Linux:
mysql> SELECT * FROM pet INTO OUTFILE '/tmp/reporte1.txt';

El archivo de salida contiene :


- los datos de cada columna separados por tabulador
- Cada linea termina con salto de linea.

2.- Abrir una segunda terminal y analizar el contenido del archivo de salida.
more /tmp/reporte1.txt
Fluffy Harold cat f 1993-02-04 \N
Claws Gwen cat m 1994-03-17 \N
Buffy Harold dog f 1989-05-13 \N
Fang Benny dog m 1990-08-27 \N
Bowser Diane dog m 1979-08-31 1995-07-29
Chirpy Gwen bird f 1998-09-11 \N
Whistler Gwen bird \N 1997-12-09 \N
Slim Benny snake m 1996-04-29 \N

2
B) Cargar datos de un archivo de texto a una tabla

1.- Creamos una tabla con la misma estructura


mysql>CREATE TABLE mascotas1 LIKE pet;
mysql>SHOW CREATE TABLE mascotas1;

2.- Cargamos los datos


mysql>LOAD DATA INFILE '/tmp/pet.txt' INTO TABLE mascotas1;
Query OK, 8 rows affected (0.23 sec)
Records: 8 Deleted: 0 Skipped: 0 Warnings: 0

3.- Validamos datos en mascotas1


mysql>SELECT * from mascotas1;
+----------+--------+---------+------+------------+------------+
| name | owner | species | sex | birth | death |
+----------+--------+---------+------+------------+------------+
| Fluffy | Harold | cat | f | 1993-02-04 | NULL |
| Claws | Gwen | cat | m | 1994-03-17 | NULL |
| Buffy | Harold | dog | f | 1989-05-13 | NULL |
| Fang | Benny | dog | m | 1990-08-27 | NULL |
| Bowser | Diane | dog | m | 1979-08-31 | 1995-07-29 |
| Chirpy | Gwen | bird | f | 1998-09-11 | NULL |
| Whistler | Gwen | bird | NULL | 1997-12-09 | NULL |
| Slim | Benny | snake | m | 1996-04-29 | NULL |
+----------+--------+---------+------+------------+------------+

3
C) Guardar los datos de una tabla en un archivo de salida con formato CSV
CSV: Columnas separadas por comas
Los valores de cada columna van entre comillas

FIELDS: hace referencia a cada columna


Que estn entre comillas y separados por comas.
LINES: hace referencia a cada lnea
Que terminen con salto de linea \n

1.- .Almacenamos los datos de una tabla en formato CSV


mysql>SELECT * FROM pet INTO OUTFILE '/tmp/reporte2.txt'
FIELDS
TERMINATED BY ','
ENCLOSED BY '"'
LINES
TERMINATED BY '\n';
Query OK, 8 rows affected (0.00 sec)

2.- Abrimos una nueva terminal y vemos el contenido de reporte2.csv


more /tmp/reporte2.txt
"Fluffy","Harold","cat","f","1993-02-04",\N
"Claws","Gwen","cat","m","1994-03-17",\N
"Buffy","Harold","dog","f","1989-05-13",\N
"Fang","Benny","dog","m","1990-08-27",\N
"Bowser","Diane","dog","m","1979-08-31","1995-07-29"
"Chirpy","Gwen","bird","f","1998-09-11",\N
"Whistler","Gwen","bird",\N,"1997-12-09",\N
"Slim","Benny","snake","m","1996-04-29",\N

4
D) Cargar los datos de un archivo con formato CSV a una tabla.

1.- Creamos una tabla con la misma estructura que la tabla pet
mysql> CREATE TABLE mascotas2 LIKE pet;
mysql>SHOW CREATE TABLE mascotas2;

2.- Cargamos los datos de un archivo con formato CSV a la tabla mascotas2
mysql>LOAD DATA INFILE '/tmp/reporte2.txt' INTO TABLE mascotas2
FIELDS
TERMINATED BY ','
ENCLOSED BY '"'
LINES
TERMINATED BY '\n' ;
Query OK, 8 rows affected (0.10 sec)
Records: 8 Deleted: 0 Skipped: 0 Warnings: 0

3.- Validamos los datos en mascotas2


mysql>SELECT * FROM mascotas2;
+----------+--------+---------+------+------------+------------+
| name | owner | species | sex | birth | death |
+----------+--------+---------+------+------------+------------+
| Fluffy | Harold | cat | f | 1993-02-04 | NULL |
| Claws | Gwen | cat | m | 1994-03-17 | NULL |
| Buffy | Harold | dog | f | 1989-05-13 | NULL |
| Fang | Benny | dog | m | 1990-08-27 | NULL |
| Bowser | Diane | dog | m | 1979-08-31 | 1995-07-29 |
| Chirpy | Gwen | bird | f | 1998-09-11 | NULL |
| Whistler | Gwen | bird | NULL | 1997-12-09 | NULL |
| Slim | Benny | snake | m | 1996-04-29 | NULL |
+----------+--------+---------+------+------------+------------+

También podría gustarte