MySQL

Ya hace rato que no había escrito nada en el blog, creo que ahora si me daré mas tiempo para agregar información (jeje eso espero ^^’)

Hoy necesitaba tirar unos comandos por consola mysql y como hace rato no lo hacía simplemente no me acorda bien de todos, así que decidí recopilar un poco de información y compartirla para hacernos una ayuda de memoria.

CONEXION

a. Conectarse al servidor MySQL con el usuario que corresponda “usuario”

]# mysql -u usuario -p

b. Ver o listar las bases de datos existentes en nuestro MySQL

mysql> show databases;

c. Ver o listar los usuarios que se encuentran actualmente en nuestro MySQL

mysql> select * from mysql.user;

d. Seleccionar una base de datos en donde trabajaremos o revisaremos la información

mysql> use nombre_bd;

USUARIOS

Ahora con respecto a lo que es usuarios, ya sea crear, modificar y eliminar, están los siguientes comandos.

a. Crear usuarios con todos los privilegios, ya sera de todas las bases de datos del servidor o de alguna en específico, referente al host puede ser:

  • IP (192.168.1.120) específica para el usuario (recomiendo que sea así),
  • % que indica que puede conectarse desde cualquier ip al servidor o puede ser
  • localhost (127.0.0.1) indicando que el usuario solo puede conectarse al servidor estando dentro de este, o si se encuentra fuera a través de un tunel ssh.
mysql> grant all privileges on nombre_bd.* to 'usuario'@'host' identified by 'contraseña' with grant option;
mysql> grant all privileges on *.* to 'usuario'@'host' identified by 'contraseña' with grant option;

b. Cambiar la contraseña de un usuario creado.

mysql> set pasword for 'usuario'@'host' = password('contraseña');

c. Crear usuarios solo con algunos privilegios.

mysql> grant privilegio ON nombre_bd.* TO 'usuario’@'host’ identified by 'contraseña';

Los privilegios que se usan son:

  • ALTER: Modificar tablas con ALTER TABLE
  • CREATE: Crear una nueva base de datos o tabla
  • DELETE: Eliminar registros de las tablas
  • DROP: Eliminar bases de datos o tablas
  • INDEX: Crear o eliminar índices de tablas
  • INSERT: Crear registros en las tablas
  • SELECT: Listar registros de las tablas
  • UPDATE: Modificar registros de las tablas

d. Ver o listar los privilegios que tiene un usuario.

mysql> show grants for 'usuario'@'host';

e. Eliminar los privilegios de un usuario.

mysql> revoke privilegio ON nombre_bd.* TO 'usuario’@'host';

f. Eliminar un usuario con su respectivo host.

mysql> drop user 'usuario'@'host';

RESPALDOS

Realizar respaldo de una base de datos de nuestro servidor.

]# mysqldump --user=usuario --password=contraseña nombre_bd > nombre_repaldo_BD.sql

Ahora si desean migrar la base de datos de un servidor a otro, tienen el siguiente comando:

]# mysqldump -u usuario -p contraseña nombre_bd | mysql -h host_destino -u usuario -p conrtaseña nombre_bd;

Exportar todas las bases de datos de nuestro servidor MySQL a un archivo.

# mysqldump –password=CLAVE –single-transaction –all-databases | gzip -9 >RUTA_DESTINONOMBRE_`date +%Y-%m-%d`.sql.gz

 

Espero les sirva, ya sea para aprender o como ayuda de memoria. 😀

 

Saludos!

Share This