Cómo crear una base de datos MySQL y dar privilegios a usuarios

Dificultad: Fácil
Tiempo de Lectura: 3 minutos

En esta oportunidad vamos a comentar como podemos realizar unas tareas rutinarias que siempre utilizamos en nuestros proyecto con bases de datos en Mysql. Vamos a prender a conectarnos via consola a nuestro servicio de Mysql, luego vamos a ver cuales son nuestras tablas creadas o a las que tenemos acceso y por ultimo vamos a crear una base de datos y darnos permiso en esa base de datos.

Conectarnos a Mysql por consola

Para esto es importante conocer varios parámetros del comando mysql, por ejemplo -p es password ,-u es usuario, -h host de nuestra base de datos (Ip del servidor), -P puerto de nuestro servicio mysql entre algunos esos son los más utilizados.

Ejemplos de cómo conectarnos a Mysql usando la consola

Conexión Simple, en este caso tomara el usuario con el que estemos conectados a nuestro servidor

root@SV001# mysql -p
Enter password:

Conexión indicando usuario (USUARIO es el nombre de el usuario que quieres utilizar)

root@SV001# mysql -uUSUARIO -p
Enter password:

Conexión indicando Host y Puerto

root@SV001# mysql -h127.0.0.1 -P3306 -p
Enter password:

Ahora bien ya que nos hemos conectado procedemos a crear nuestra base de datos de prueba que en este caso la llamaremos bloginfranetworking, el comando a utilizar es create database.

Nos conectamos a nuestro servidor

root@SV001# mysql -p
Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 93310
Server version: 5.5.31-0+wheezy1 (Debian)

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database bloginfranetworking;
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+----------------------+
| Database |
+----------------------+
| bloginfranetworking |
| mysql |
| performance_schema |
+----------------------+
3 rows in set (0.00 sec)

Para Borrar una base de datos en mysql el comando seria

mysql> drop database bloginfranetworking;
Query OK, 0 rows affected (0.00 sec)

Ahora bien solo nos resta dar acceso a nuestro usuario a nuestra base de datos, a continuación dejamos los casos más utilizados para dar acceso a nuestras bases de datos de mysql.

Nos conectamos a nuestro servidor

root@SV001# mysql -p
Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 93310
Server version: 5.5.31-0+wheezy1 (Debian)

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
mysql>

Comando para saber cuales usuario tenemos creados

mysql> SELECT * FROM mysql.user;
+------------------+
| User |
+------------------+
| root |
+------------------+
1 rows in set (0.00 sec)
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

Crear usuario en Mysql

mysql> CREATE USER 'infra'@'localhost' IDENTIFIED BY 'infra_pass';
Query OK, 0 rows affected (0.00 sec)

mysql> SELECT User FROM mysql.user;
+------------------+
| User |
+------------------+
| infra |
| root |
+------------------+
2 rows in set (0.00 sec)

Ahora nos podemos conectar con el usuario infra y su clave seria infra_pass

root@SV001# mysql -uinfra -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 93654
Server version: 5.5.31-0+wheezy1 (Debian)

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| test |
+--------------------+
2 rows in set (0.00 sec)

Ahora solo nos resta darle acceso a la base de datos bloginfranetworking, esto se debe hacer con el usuario root o con el usuario que creo la base de datos en este caso nuestra base de datos es bloginfranetworking.

Asignar todos los privilegios solo sobre la base de datos bloginfranetworking

mysql> GRANT ALL PRIVILEGES ON bloginfranetworking.* TO 'infra'@'localhost' WITH GRANT OPTION;
Query OK, 0 rows affected (0.01 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

Remover todos los privilegios solo sobre la base de datos bloginfranetworking

mysql> REVOKE ALL PRIVILEGES ON bloginfranetworking.* FROM 'infra'@'localhost';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

Con esto dejamos varias de las tareas comunes de un administrador de base de datos, en este caso de mysql.

Por favor avísanos si hay algún detalle que no esté claro o si tienes alguna duda sobre este procedimiento. Puedes dejarnos un comentario aquí debajo y en breve te daremos una respuesta.

Cuéntanos: ¿Pudiste crear tu primera base de datos mysql vía consola?

¿Te resultó útil el artículo? Compártelo con tus colegas: