Lo primero que debemos saber es como acceder a Mysql, esto lo podemos hacer de la siguiente manera:
$ mysql -h nombre_host_o_ip -P numero_de_puerto -u nombre_de_usuario -p
Donde: -h permite especificar a que host o dirección IP conectarse (por defecto localhost), -P el numero de puerto en el que escucha MySQL (por defecto 3306), -u significa usuario (root por defecto).Nota: si queremos conectarnos con la cuenta root a localhost en el puerto 3306 solo basta con colocar
$ mysql -p
Crear usuarios
Existen tres métodos para crear los usuarios en MySQL, uno es mediante el comando CREATE, otro es modificando manualmente la tabla user de la base de datos mysql y el último es mediante el comando GRANT.El primer método es el recomendado por los desarrolladores de MySQL porque es menos propenso a errores humanos (depediendo del humano ;)).
La sintaxis para crear usuarios es la siguiente:
mysql> CREATE USER 'nombre_usuario'@'nombre_host_o_ip'\
IDENTIFIED BY mi_password';
Con el comando anterior se creó un usuario llamado nombre_usuario el cual accede al servidor MySQL que se encuentra en nombre_host_o_ip y posee el password mi_password. Por ejemplo, para crear el usuario aang, que accede a localhost y posee el password appa se usa el siguiente comando:mysql> CREATE USER 'aang'@'localhost' IDENTIFIED BY 'appa';
Para crear un usuario mediante el segundo método se debe hacer lo siguiente:mysql> INSERT INTO mysql.user VALUES ('nombre_host_o_ip',\
'nombre_usuario', PASSWORD('mi_password'), 'Y', 'Y', 'Y', 'Y',\
'Y','Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y',\
'Y', 'Y','Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '',\
'', 0, 0, 0, 0);
Así que si creamos el usuario aang, que accede a localhost con el password appa usaremos lo siguiente:mysql> INSERT INTO mysql.user VALUES ('localhost', 'aang',\
PASSWORD('appa'), 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y',\
'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y',\
'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '', '', 0, 0, 0, 0);
Con GRANT lograremos lo mismo si hacemos lo siguiente:
GRANT ALL ON nombre_base_de_datos.* TO 'nombre_usuario'@'nombre_host_o_IP'\
IDENTIFIED BY 'mi_password';
Eliminar usuarios
Tenemos dos métodos para borrar usuarios: DROP USER y DELETE FROM mysql.user.Método 1:
mysql> DROP USER 'aang'@'localhost';
Método 2:mysql> DELETE FROM mysql.user WHERE User='aang';
