Con esta nota de mysql queremos conseguir una pequeña guia para utiliza mysql desde terminal, al final del post podrás encontrar una relación de fuentes.
Paquetes necesarios para la instalación de MySql en Linux
Se necesitán varios paquetes para poder tener totalmente operativo myqsl en nuestro equipo.
- mysql-server : Paquete Servidor de MYSQL
- mysql-common : Paquete archivos comunes de MySql
- mysql-client: Paquete de Cliente de MYSQL
Tambien puede instalarte paquetes adicionarles como::
- mysql-admin : Paquete entorno gráfico
- mysql-query-browser: Paquete que sirve para hacer consultas.
Conectarnos a mysql desde terminal
Lo primordial tener los datos conexion : usuario, contraseña y host.
Si tienes MariaBD en un sistema local, puedes configurar el servicio para que no tengas que poner la contraseña cuando esta con root.
mysql -u root -p
Si no es un sistema local, es decir no queremos conectar a un servidor de bases datos (MariaDB o MYSQL) debemos incluir en la instrucción el servidor
mysql -u USUARIO -p -h SERVIDOR
A continuacion nos pide la contraseña que del usuario, si es root no pide la pusimos en la instalación, una vez introducida nos aparece los siguiente o algo similar si va todo correcto.
Type 'help;' or '\h' for help.
Type '\c' to clear the current input statement.
mysql>
Para desconectarse de terminal, utilizamos
mysql> QUIT
Gestionar usuario de mysql desde consola
Saber que usuario tenemos creados y que host tenemos creados en nuestro cliente mysql podemos saberlo con la siguiente instrucción
mysql> select Host,User,Password from mysql.user;
+---------------+------------------+-------------------------------------------+
| Host | User | Password |
+---------------+------------------+-------------------------------------------+
| localhost | root | *571E3BE003B3C46169D7487C6ADB903D96B92409 |
| ubuntu | root | *571E3BE003B3C46169D7487C6ADB903D96B92409 |
| 127.0.0.1 | root | *571E3BE003B3C46169D7487C6ADB903D96B92409 |
| localhost | debian-sys-maint | *3C6354DF9A1AF534EB9B879FFABCE8CB7CDFA419 |
| 192.168.5.113 | usuario | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 |
| localhost | usuario | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 |
| % | usuario | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 |
+---------------+------------------+-------------------------------------------+
7 rows in set (0.00 sec) mysql>exit
Si queremos saber que privilegios tienes y en que tablas, con la instruccion.
SHOW GRANTS for 'nombreusuario'@'nombrehost';
Donde la terminal nos informará que privilegios tiene en cada basedatos o en el conjunto.
Instrucción para listar tablas de una BD
>show tables [nombre bd] [like '%texto%']
Algunas preguntas mas que nos hacemos sobre MySQL
¿Donde guarda la los ficheros de la bases datos ( tablas) ?
La base de datos las encontramos en un directorio por cada bd creada, en el lugar que nos indique el fichero my.cnf, que normalmente es /var/lib/mysql
¿Que ficheros nos vamos encontrar?
En cada directorio de cada BD creada, encontramos un fichero db.opt, que es el encargado de guardar las caracteristicas de cada base de datos.
Luego encontramos tambien los datos de las tablas creadas y según método de almacenamiento que hayamos seleccionado, tendremos uno o más ficheros.
Si seleccionamos como metodo de almacenamiento (tipo) MyISAM, es el que traía por defecto hasta las versión MySql 5.5 , este método de almacenamiento crea 3 ficheros por tabla.
Los nombre de los ficheros comienzan con el nombre de tabla que le hayamos asignado a la hora crear y con las extensiones:
- frm
- MYD ( MyData)
- MYI ( Myindex)
Si embargo , si utilizamos InnoDB, solo veo un fichero por tabla. (.frm)
En el siguiente link , puedes ver las diferencias que hay entre un método u otro de almacenamiento.