Crear una base de datos MySQL y un usuario con permisos para esa base de datos

A modo de chuleta dejo este microtutorial de cómo crear una base de datos MySQL y un usuario con permisos para esa base de datos. Es muy útil cuando estoy creando un sitio web y necesito una base de datos con un usuario que solo puede acceder a esa base de datos.

Desde una línea de comandos ejecuto el cliente MySQL e introduzco la contraseña

# mysql -u root -p
Enter password:

Creo la base de datos

mysql> CREATE DATABASE mi_base_de_datos CHARACTER SET utf8 COLLATE utf8_general_ci;

Creo el usuario local mi_usuario con la contraseña mi_contraseña

mysql> CREATE USER 'mi_usuario'@'localhost' identified by 'mi_contraseña';

Le doy todos los permisos a ese usuario en esa base de datos

mysql> GRANT ALL PRIVILEGES ON mi_base_de_datos.* TO mi_usuario@localhost;
mysql> FLUSH PRIVILEGES;

Salgo del cliente de base de datos

mysql> exit
Bye

Me vuelvo a contectar con el nuevo usuario e introduzco la contraseña

# mysql -u mi_usuario -p
Enter password:

Si ahora visualizo las bases de datos

mysql> show databases;

Solo debo de ver a la que tengo acceso

+--------------------+
| Database           |
+--------------------+
| mi_base_de_datos   |
+--------------------+

Leave a Reply

Your email address will not be published. Required fields are marked *