Hola a todos en ocaciones necesitarás conectarte remotamente a una base de datos o en su defecto dar acceso a un usuario remoto que no sea el usuario root, por seguridad peus bien aquí te dejo los pasos a seguir para crear un usuario y darle permisos sobre una base de datos.
- Ingresa a la consola mysql
# mysql -uroot -p
Te pedirá la contraseña de root.
- Una vez dentro vamos a crear el usuario
mysql> create user ‘nombre_usuario’@’localhost’ identified by ‘contraseña’;
- Ahora asignamos el usuario a la base de datos
mysql> GRANT ALL PRIVILEGES ON base_de_datos.* TO ‘usuario’@’%’;
mysql> FLUSH PRIVILEGES;
Listo acabas de crear un usuario y darle privilegios sobre la base de datos:
Como verás al final de la última sentencia tenemos un % te preguntarás que significa, con esto le dices al servidor que el usuario podrá conectarse desde cualquier IP, esto no es muy recomendable ya que dejas abierto un bache de seguridad lo que puede traer grandes consecuencias, asi que, lo mejor es usar cualquiera de estas opciones:
- ‘ip_remota’
- host_remoto’
Es decir que tendrías algo asi:
mysql> GRANT ALL PRIVILEGES ON base_de_datos.* TO ‘usuario’@’ip_remota’;
Eso es todo espero les sea de utilidad hasta pronto.
MFCP!
#
La razón de usar FLUSH PRIVILEGES al crear cuantas con INSERT es decir al servidor que vuelva a leer las tablas de permisos. De otro modo, los cambios no se tienen en cuenta hasta que se reinicie el servidor. Con GRANT, FLUSH PRIVILEGES no es necesario.