[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: dudas con mysql



Bueno, te dire que en primer lugar no hiciste las cosas correctamente y por eso te da esos errores. A mi la idea de pasar bases de datos de un server a otro me parecía que era de esa manera hasta que descubrí que mysql tiene una forma más sencilla de hacer las cosas.

Existe un comando llamado mysqldump del que debes leerte la página del manual para buscar información detallada. De momento te diré que su uso más corriente es:

En la máquina que tiene las bases de datos originales

root@mihost:~$mysqldump -u root -p  --databases [OPTIONS] DB1 [DB2 DB3...] > archivosalva.sql

(no tiene que ser necesariamente como root)

y así todos tus datos quedan salvados en archivosalva.sql

después copias el archivosalva.sql en la otra máquina  y pones

root@mihost:~$mysql -u root -p < archivosalva.sql

Ahora bien, te preguntarás por qué el error. El problema es que cuando lo haces de la manera que lo hiciste, copias también la base de datos llamada mysql. Esta contiene los nombres de usuario, las contraseñas y los permisos de mysql, por lo que si sobreescribes la susodicha tabla, los permisos se mantienen como estaban en la maquina anterior. Ahora bien, en Debian, existe una cuenta especial llamada debian-sys-maint cuya contraseña es generada al instalarse mysql-server y que le sirve al sistema para tareas de mantenimiento. Esta contraseña se almacena en /etc/mysql/debian.cnf de tal manera que si transfieres TODAS las bases de datos incluyendo mysql debes transfrir este archivo también o al menos la contraseña guardada en él. Fíjate bien en los permisos que tiene este archivo porque si re equivocas puede ser un gran problema de seguridad

Aquí termino este mini-HOWTO que espero te sirva

Saludos de
Mauricio
El día 7/12/05, avisx <srmojo@gmail.com > escribió:
hola lista, he estado pasando datos de un servidor a otro, y me he
encontrado con un problema, he mirado por internet y no he logrado
sacar nada en claro al respecto de la pregunta que les voy a formular.

Resulta que hice un respaldo de las bases de datos de mysql, empaquete
todo el directorio en un tar con los permisos correspondientes, y me
lo pase por ftp al nuevo servidor, alli desempaquete y se insertaron
las nuevas tablas con los correspondientes permisos.

Pero que paso? Pues que al hacer un /etc/init.d/mysql restart la
maquina me daba un error que me decia algo como que el usuario de
mantener las bases de datos, no coincidia la contraseña, entonces
pense que tal vez, al meter todos los directorios, tambien meti los
usuarios, y asi fue efectivamente, hize la prueba entrando con
phpmyadmin y un usuario anteriormente registrado, en el servidor
viejo,como no queria que saliera el error, volvi a poner los
directorios igual que estaban consiguiendo asi poder reiniciar mysql
sin errores.

ahora es cuando ya me decido a "exportar" los usuarios a un fichero
para poder añadirselos al nuevo servidor.

mi pregunta es, por comandos se puede hacer? podrian indicarme alguna
pagina donde leer informacion al respecto?

muchas gracias de antemano.



Reply to: