11.05.2013 Views

Bases de datos en MySQL

Bases de datos en MySQL

Bases de datos en MySQL

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

© FUOC • P06/M2109/02151 51 <strong>Bases</strong> <strong>de</strong> <strong>datos</strong> <strong>en</strong> <strong>MySQL</strong><br />

El comando mysqldump ofrece multitud <strong>de</strong> parámetros para modificar su comportami<strong>en</strong>to<br />

o el tipo <strong>de</strong> volcado g<strong>en</strong>erado: por <strong>de</strong>fecto, g<strong>en</strong>era s<strong>en</strong>t<strong>en</strong>cias<br />

SQL, pero pue<strong>de</strong> g<strong>en</strong>erar ficheros <strong>de</strong> <strong>datos</strong> tipo CSV u otros formatos. También<br />

po<strong>de</strong>mos especificarle que haga el volcado <strong>de</strong> todas las bases <strong>de</strong> <strong>datos</strong> o que<br />

sólo vuelque los <strong>datos</strong> y no la creación <strong>de</strong> las tablas, etc.<br />

Las primeras líneas <strong>de</strong>l archivo <strong>de</strong>mo.sql según el ejemplo anterior t<strong>en</strong>drían el<br />

sigui<strong>en</strong>te aspecto:<br />

~$ mysqldump <strong>de</strong>mo | head -25<br />

-- <strong>MySQL</strong> dump 8.21<br />

--<br />

-- Host: localhost Database: <strong>de</strong>mo<br />

---------------------------------------------------------<br />

-- Server version 3.23.49-log<br />

--<br />

-- Table structure for table ’ganancia’<br />

--<br />

DROP TABLE IF EXISTS ganancia;<br />

CREATE TABLE ganancia (<br />

v<strong>en</strong>ta <strong>en</strong>um(’Por mayor’,’Por m<strong>en</strong>or’) <strong>de</strong>fault NULL,<br />

factor <strong>de</strong>cimal(4,2) <strong>de</strong>fault NULL<br />

) TYPE=MyISAM;<br />

--<br />

Dumping data for table ’ganancia’<br />

--<br />

INSERT INTO ganancia VALUES (’Por mayor’,1.05);<br />

INSERT INTO ganancia VALUES (’Por m<strong>en</strong>or’,1.12);--<br />

La v<strong>en</strong>taja <strong>de</strong> utilizar mysqldump es que permite que los archivos puedan ser<br />

leídos (y modificados) <strong>en</strong> un simple editor <strong>de</strong> textos, y pue<strong>de</strong>n ser utilizados<br />

para migrar la información a otro SGBD que soporte SQL. A<strong>de</strong>más soporta todos<br />

los tipos <strong>de</strong> tablas. La <strong>de</strong>sv<strong>en</strong>taja es que su procesami<strong>en</strong>to es l<strong>en</strong>to y los<br />

archivos que se obti<strong>en</strong><strong>en</strong> son muy gran<strong>de</strong>s.<br />

5.3.3. Restaurar a partir <strong>de</strong> respaldos<br />

En algún mom<strong>en</strong>to, sea por el motivo que sea, necesitaremos realizar la restauración<br />

<strong>de</strong> nuestras bases <strong>de</strong> <strong>datos</strong>.<br />

Si t<strong>en</strong>emos una copia binaria <strong>de</strong>l directorio <strong>de</strong> <strong>datos</strong>, bastará con copiarla al<br />

directorio original y reiniciar el servidor:<br />

# mysqladmin -u root -p shutdown<br />

# cp /algun_dir/respaldo-mysql/* /var/lib/mysql<br />

# chown -R mysql.mysql /var/lib/mysql<br />

# mysql_safe

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!