🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: chile.comp.programacion
2 messages
2 total messages Started by The Hard Fri, 11 Sep 2009 15:24
MySQL backup y restore
#206
Author: The Hard
Date: Fri, 11 Sep 2009 15:24
9 lines
1386 bytes
Saludos!

Alguien sabe de algun buen tutorial para hacer backup y restore de
MySQL, en tablas donde los campos "key" son autonuméricos? la idea es
no perder la relación que existe entre los campos.

Gracias,
Claudio
(aka TheHard)
Re: MySQL backup y restore
#207
Author: Jos� Miguel Santib��ez
Date: Fri, 11 Sep 2009 17:06
133 lines
5824 bytes
En el cap�tulo anterior (news:abcd09dc-13eb-4bff-a363-e61bc3507ff2
@d23g2000vbm.googlegroups.com), The Hard <cnavarroh@gmail.com> dijo:

> Saludos!
> 
> Alguien sabe de algun buen tutorial para hacer backup y restore de
> MySQL, en tablas donde los campos "key" son autonum�ricos? la idea es
> no perder la relaci�n que existe entre los campos.
> 
> Gracias,
> Claudio
> (aka TheHard)
> 

mysqldump saca todo a una estructura SQL, que despu�s te permite recargar 
sin problemas. Y si, mantiene adecuadamente los campos autonum�ricos...

Lo puedes usar con l�nea de comando, o desde interfaces como el 
phpMyAdmin. Si lo usas como l�nea de comandos tienes las siguientes 
opciones (solo las m�s importantes, tiene m�s):

--add-locks
a�adir bloqueo de tablas (para evitar que la actualizaci�n interfiera con 
la restauraci�n)

--add-drop-table
(agrega instrucci�n SQL para eliminar la tabla antes del create

-A, --all-databases
Aplica a todas las bases de datos (util pa'l administrador)

-a, --all
Incluye todas las opciones de creaci�n espec�ficas de Mysql.

-c, --complete-insert
(debiera ser innecesario en un backup para seguridad, pero a los 
administradores les gusta, coloca los nombres de los campos en el insert, 
en vez de asumir cuales son y el orden que tienen)

-B, --databases
Para especificar varias bases de datos.

-e, --extended-insert
insert multi l�nea (muy necesario, pues ahorra mucho espacio, sobre todo 
con -c )

-F, --flush-logs
Escribe en disco todos los logs antes de comenzar con la copia

-f, --force,
Contin�a aunque se produzca un error de SQL durante la copia.

-l, --lock-tables.
Bloquea las tablas de la base de datos, de manera que las actualizaciones 
no alteren el contenido de lo que se est� respaldando...

-K, --disable-keys
Se inluir� en la salida /*!40000 ALTER TABLE tb_name DISABLE KEYS */; y /
*!40000 ALTER TABLE tb_name ENABLE KEYS */; Esto har� que carga de datos 
en un servidor MySQL 4.0 se realice m�s r�pido debido a que los �ndices 
se crear�n despu�s de que todos los datos hayan sido restaurados.

-n, --no-create-db
No se incluir� en la salida CREATE DATABASE /*!32312 IF NOT EXISTS*/ 
db_name; Esta l�nea se incluye si la opci�n --databases o --all-databases 
fue seleccionada.

--opt
Lo mismo que --quick --add-drop-table --add-locks --extended-insert --
lock-tables. Esta opci�n le deber�a permitir realizar la copia de 
seguridad de la base de datos de la forma m�s r�pida y efectiva.

-p[clave], --password[=clave]
Contrase�a utilizada cuando se conecta con el servidor. Si no se coloca, 
[clave], mysqldump preguntar� la contrase�a.

-P, --port=...
Solo si es necesario: Puerto utilizado para las conexiones TCP/IP

--protocol=(TCP | SOCKET | PIPE | MEMORY)
S�lo si es necesario: Especifica el protocolo de conexi�n que se 
utilizar�.

-q, --quick
No almacena en el buffer la sentencia, la copia directamente a la salida. 
Utiliza mysql_use_result() para realizarlo.

-Q, --quote-names
Entrecomilla las tablas y nombres de columna con los caracteres ``'.

-r, --result-file=...
Redirige la salida a un archivo (puede ser �til cuando se construyen 
programas que generan respaldos autom�ticos).

-S /path/to/socket, --socket=/path/to/socket
S�lo si es neceasrio, el fichero de sockets que se especifica al conectar 
al localhost (que es el host predeterminado).

--tables
Define que tablas quieres respaldar (�til cuando tienes tablas 
transaccionales de mucha carga, y quieres hacerle el respaldo s�lo a 
ellas)

-u nombre_usuario, --user=nombre_usuario
El nombre de usuario que se utilizar� cuando se conecte con el servidor, 
el valor predeterminado es el del usuario actual.

-w, --where='cl�usula where'
Sirve para realizar la copia de determinados registros

Ejemplos de comandos mysqldump:

Ejemplo t�pico de comando mysqldump para hacer el backup de una base de 
datos es el siguiente:

mysqldump --opt --user=miuser -p mibasededatos > archivo.sql

Usa las opciones por defecto para crear el respaldo de "mibasededatos" en 
"archivo.sql" utilizando "miuser" (usuario de MySQL) y pidiendo la clave 
por pantalla...

Y para recuperarla:

mysql --user=miuser -p mibasededatos < archivo.sql

La recupera completamente...

Salute!

-- 
                           Jose M. Santiba�ez A.
                             <jms@nivel5.cl>
                           <http://caos.cl/jms>
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads