logo

WikiJuanan: DesastresMySQL ...

Inicio | Indice De Paginas | Ultimas Modificaciones | Ultimos Commentarios | Usuarios | Registrarse | Conectar:  Contraseña:  

SQLMy SQL?


Copiado de http://www.ignside.net/man/mysql/desastre.php


Chequear y reparar tablas

Primero esto:
check table nombre_tabla
repair table nombre_tabla


Y si no funciona entonces esto:
myisamchk
isamchk


He perdido la contraseña del root


Si has perdido la contraseña que usas como root, es decir, para administrar My SQL?, puedes establecer otra, usando el mismo ordenador donde físicamente está instalado el daemon:


  1. Apaga el servidor
  2. Inicia el servidor con la opción --skip-grant-tables.
  3. Conecta con el servidor usando mysql -u root mysql. Con eso no te pedira la password y accederas directamante a la base de datos My SQL? que es la que guarda la informacion de usuarios.
  4. cambia la contraseña usando este comando SQL: mysql> UPDATE user SET Password=PASSWORD('nuevacontraseña') WHERE User='root';
  5. Ejecuta un nuevo comando SQL: mysql> FLUSH PRIVILEGES;
  6. Apaga y reinicia el servidor y ya podras usar la nueva password

El servidor termina de repente


Lo primero que has de ver es si efectivamente se ha caido el servidor o si es el programa cliente el que falla. mysql>mysqladmin -u root -p version servirá para ver si el servidor esta en funcionamiento (un simple ctrl-alt-supr tambien te sirve para ver si mysqld esta en la lista de procesos activos).


Si se ha caido el server, prueba a ver si encuentras pistas en el archivo tu_host.err, que encontrarás en la carpeta c:mysqldata. En este log de errores se guardan los arranques y cierres del server, y otra información util.


Tambien puedes crear un log general iniciando mysqld con la opcion --log[=archivo]. Por ejemplo:
C:mysqlbin>mysqld --log=log_general.log creará en la carpeta data el archivo log_general.log. Este es un ejemplo de su contenido:


C:MYSQLBINMYSQLD.EXE, Version: 4.0.12-max-debug-log, started with:
Tcp port: 3306 Unix socket: My SQL?
Time Id Command Argument
030504 16:07:21 1 Connect Acceso negado para usuario: 'ODBC@127.0.0.1' (Usando clave: SI)
030504 16:07:40 2 Connect root@127.0.0.1 on 
030504 16:07:47 2 Query show databases
030504 16:07:52 3 Connect root@127.0.0.1 on 

3 Query show status
2 Quit

El servidor debe siempre cerrarse de forma adecuada, bien con winmysqladmin desde la barra del reloj de tu ordenador, o bien desde la ventana msdos con el comando: c:mysqlbin>mysqladmin -u root -p shutdown


Cerrar el servidor de otra forma puede corromper los datos de las tablas y ser fuente de problemas.

Creando copias de tus datos con mysqldump


Con mysqldump puedes obtener copias de la estructura y datos de las tablas. Con la copia de la estructura podras recrear tus tablas (vacias de datos) mientras que con la copia completa de estructura y datos obtendrás una copia espejo de tu base de datos.


Este es tambien el método logico si lo que quieres es pasar tu base de datos de un servidor a otro, por ejemplo de tu servidor local de pruebas al servidor en la red.
Veamos algunos ejemplos:



Como no hemos indicado ruta ninguna, los archivos resultantes apareceran en bin.


Para cargar el respaldo de nuevo en el server, simplemente: el proceso a la inversa:
C:mysqlbin>mysql -u root -pcontraseña base_a_cargar < copia_respaldo.sql.

No hay archivos en esta página. [Enseñar archivos/formulario]
No hay comentarios en esta pagina. [Enseñar comentarios/formulario]