Cesta
Empresa
Soporte
Area Cliente
Usuario:
Contraseña:
Contacto
+34 911401900
Dominios
Registro de dominios
Transferencia de dominios
Dominios Multilenguaje
Dominios por Pais
Lista de precios
Hosting
Hosting compartido
Hosting compartido windows asp
Hosting revendedores
Hosting revendedores windows asp
Hosting geolocalizado
Webconstructor
Hosting Script
Hosting Joomla
Hosting wordpress
Hosting moodle
Hosting drupal
Hosting oscommerce
Hosting prestashop
Hosting magento
Hosting Virtuemart
Hosting ZenCart
Hosting phpBB
Hosting phplist
Hosting phpmailer
Hosting sugarcrm
Servidores Virtuales
VPS Administrados
Linux
Windows
SSD
VPS Especializados
VPS Prestashop
VPS Magento
VPS Asterisk Elastix
VPS Mailing
VPS Escritorio remoto
Servidores dedicados
Servidores dedicados España
Linux
Windows
Servidores dedicados streaming
Linux
Windows
Radio y Video
Servidores de radio
Transferencia ilimitada
Oyentes ilimitados
Radio Hilo musical
Streaming Radio revendores
Servidores de video
Streaming directo y diferido
Mensual
Por evento
WebTV
Formación en linea. Webinar
Congresos y Conferencias
Streaming Video revendores
Otros Servicios
Housing
Backup remoto
Email marketing
Promoción web
SEO Posicionamiento Web.
SEM Marketing Buscadores.
Redes sociales.
Email Marketing
Certificados SSL
Soporte Especializado
Ley de protección de datos
Importación de productos
Filtro Antispan
Sistema de Soporte
»
Manuales y Preguntas Frecuentes ( FAQ )
»
Comandos mysqldump
Buscar
-- Todo el Sistema de Soporte --
Manuales y Preguntas Frecuentes ( FAQ )
Descargas
Opciones de Articulo
Agregar Comentario
Imprimir Articulo
Versión en PDF
Enviar Articulo por Email
Agregar a Favoritos
Login
[Recuperar contraseña]
Email:
Contraseña:
Recordarme:
Comandos mysqldump
Respuesta
Es preciso ssh o alguna shell con permisos para la ejecución del mysqldump, los dos comandos más importantes son:
Extraer dump del sql en nuestro servidor, bien desde localhost o otro
MySQL, backup con mysqldump
Para realizar la copia de seguridad con mysqldump nuestro usuario tiene que tener los permisos necesarios para poder realizarla. Posteriormente la consola nos pedirá que introduzcamos el password del usuario gracias al atributo -p del comando mysqldump:
Ejemplo de backup mysql de una base de datos y todas sus tablas:
mysqldump --opt -u nombre_usuario -p base_datos > copia_seguridad.sql
Ejemplo de un backup con mysqldump con compresión gzip (entornos Linux):
mysqldump --opt -u nombre_usuario -p base_datos nombre_tabla1 | gzip > copia_seguridad.sql.gz
Ejemplo de copia de seguridad mysql de una tabla de una base de datos:
mysqldump --opt -u nombre_usuario -p base_datos nombre_tabla1 > copia_seguridad.sql
Si deseamos comprimir y descomprimir ficheros posteriormente a la realización del backup con mysqldump, recomiendo visitar el enlace adjuntado (entornos Linux).
MySQL, restaurar base de datos con mysql
Para restaurar un backup mysql de una base de datos, nuestro usuario tiene que tener los permisos de escritura necesarios asignados a la base de datos que deseamos importar:
mysql -u nombre_usuario -p base_datos < copia_seguridad.sql
Si queremos exportar o importar bases de datos mysql con características más concretas, recomiendo ver la ayuda del comando mysqldump y mysql respectivamente.
Las dudas respecto a la realización de copias de seguridad en mysql las responderé en los comentarios.
====
Algunas de las opciónes que tiene son:
--add-locks
Añade LOCK TABLES antes, y UNLOCK TABLE despues de la copia de cada tabla.
--add-drop-table
Añade un drop table antes de cada sentencia create
-A, --all-databases
Copia todas las bases de datos. Es lo mismo que utilizar --databases seleccionando todas.
-a, --all
Incluye todas las opciones de creación específicas de Mysql.
--allow-keywords
Permite la creación de nombes de columnas que son palabras clave, esto se realiza poniendo de prefijo a cada nombre de columna, el nombre de la tabla
-c, --complete-insert
Utiliza inserts incluyendo los nombres de columna en cada sentencia (incrementa bastante el tamaño del fichero)
-C, --compress
Comprime la información entre el cliente y el servidor, si ambos soportan compresión.
-B, --databases
Para copiar varias bases de datos. En este caso, no se especifican tablas. El nombre de los argumentos se refiere a los nombres de las bases de datos. Se incluirá USE db_name en la salida antes de cada base de datos.
--delayed
Inserta las filas con el comando INSERT DELAYED.
-e, --extended-insert
Utiliza la sintaxis de INSERT multilinea. (Proporciona sentencias de insert más compactas y rápidas.)
-#, --debug[=option_string]
Utilización de la traza del programa (para depuración).
--help
Muestra mensaje de ayuda y termina.
--fields-terminated-by=...
--fields-enclosed-by=...
--fields-optionally-enclosed-by=...
--fields-escaped-by=...
--lines-terminated-by=...
Estas opciones se utilizan con la opción -T y tienen el mismo significado que la correspondiente cláusula LOAD DATA INFILE.
-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.
-h, --host=..
Copia los datos del servidor de Mysql especificado. El servidor por defecto es localhost.
-l, --lock-tables.
Bloquea todas las tablas antes de comenzar con la copia. Las tablas se bloquean con READ LOCAL para permitir inserts concurrentes en caso de las tablas MyISAM. Cuando se realiza la copia de múltiples bases de datos, --lock-tables bloqueará la copia de cada base de datos por separado. De forma que esta opción no garantiza que las tables serán consistentes lógicamente entre distintas bases de datos. Las tablas en diferentes bases de datos se copiarán en estados completamente distintos.
-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.
-t, --no-create-info
No incluirá la información de creación de la tabla (sentencia CREATE TABLE).
-d, --no-data
No incluirá ninguna información sobre los registros de la tabla. Esta opción sirve para crear una copia de sólo la estructura de la base de datos.
--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.
-pyour_pass, --password[=your_pass]
Contraseña utilizada cuando se conecta con el servidor. Si no se especifica, `=your_pass', mysqldump preguntará la contraseña.
-P, --port=...
Puerto utilizado para las conexiones TCP/IP
--protocol=(TCP | SOCKET | PIPE | MEMORY)
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=...
Redirecciona la salida al fichero especificado. Esta opción se debería utilizar en MSDOS, porque previene la conversión de nueva línea `\n' en nueva línea y retorno de carro`\n\r'.
--single-transaction
Utiliza el comando BEGIN antes de realizar la copia desde el servidor. Es muy útil con las tables InnoDB y el nivel de transacción READ_COMMITTED, porque en este modo realizará la copia de seguridad en un estado consistente sin necesidad de bloquear las aplicaciones. Consultar el manual para más detalles.
-S /path/to/socket, --socket=/path/to/socket
El fichero de sockets que se especifica al conectar al localhost (que es el host predeterminado).
--tables
sobreescribe la opción --databases (-B).
-T, --tab=path-to-some-directory
Crea un fichero table_name.sql, que contiene la sentencia de creación de SQL, y un fichero table_name.txt, que contiene los datos de cada tabla. El formato del fichero `.txt' se realiza de acuerdo con las opciones --fields-xxx y --lines--xxx options. Nota: Esta opción sólo funciona si el comando mysqldump se ejecuta en la misma másquina que el demonio mysqld, el usuario deberá tener permisos para crear y escribir el fichero en la ubicación especificada
-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.
-v, --verbose
Va mostrando información sobre las acciones que se van realizando (más lento)
-w, --where='cláusula where'
Sirve para realizar la copia de determinados registros
-X, --xml
Realiza la copia de seguridad en un documento xml
-x, --first-slave
Bloquea todas las tablas de todas las bases de datos
--compatible=mysql40 genera un sql compatible con esta versión de mysql.
Más info:
http://dev.mysql.com/doc/refman/5.0/en/mysqldump.html
Fuente extra:
http://www.desarrolloweb.com/articulos/1202.php
Detalles del Articulo
Código del Articulo:
60
Fecha de Creación:
21 Jan 2007 12:34 PM
Esta respuesta me fue util
Esta respuesta no me fue util
Comentario de Usuarios
Agregar un Comentario
Compartir es bueno. Si desea ingresar un comentario acerca de este articulo, no lo dude, ingreselo ahora. Los comentarios pueden ser revisados por nuestro Staff y requerir de su aprobación antes de ser publicado. Las preguntas ingresadas aqui no será contestadas, Por favor envienos un ticket para poder resolver su inquietud.
Nombre y Apellido:
Email: (Opcional)
Comentario:
Volver