Cómo crear un nuevo usuario y conceder permisos en MySQL
Introducción
MySQL es un software de gestión de bases de datos de código abierto que ayuda a los usuarios a almacenar, organizar y recuperar datos más tarde. Tiene una variedad de opciones para otorgar a usuarios específicos permisos matizados dentro de las tablas y bases de Datos—este tutorial dará una breve descripción de algunas de las muchas opciones.
Qué significan los resaltados
a lo largo de este tutorial, cualquier línea que el usuario necesite introducir o personalizar se resaltará! El resto debería ser en su mayoría copiable y pegable.,
cómo crear un nuevo usuario
en la Parte 1 del tutorial de MySQL, hicimos toda la edición en MySQL como usuario root, con acceso completo a todas las bases de datos. Sin embargo, en los casos en que se requieran más restricciones, hay formas de crear usuarios con permisos personalizados.
comencemos haciendo un nuevo usuario dentro del shell MySQL:
nota: al agregar usuarios dentro del shell MySQL en este tutorial, especificaremos el host del usuario como localhost
y no la dirección IP del servidor., localhost
es un nombre de host que significa «esta computadora», y MySQL trata este nombre de host en particular especialmente: cuando un usuario con ese host inicia sesión en MySQL, intentará conectarse al servidor local utilizando un archivo de socket Unix. Por lo tanto, localhost
se usa típicamente cuando planea conectarse mediante SSH en su servidor o cuando está ejecutando el cliente local mysql
para conectarse al servidor MySQL local.
en este punto newuser no tiene permisos para hacer nada con las bases de datos., De hecho, incluso si newuser intenta iniciar sesión (con la contraseña, password), no podrán llegar al shell de MySQL.
por lo tanto, lo primero que debe hacer es proporcionar al usuario acceso a la información que necesitará.
Los asteriscos de este comando se refieren a la base de datos y tabla (respectivamente) a la que pueden acceder—Este comando específico permite al usuario leer, editar, ejecutar y realizar todas las tareas en todas las bases de datos y tablas.
tenga en cuenta que en este ejemplo estamos otorgando a newuser acceso root completo a todo en nuestra base de datos., Si bien esto es útil para explicar algunos conceptos de MySQL, puede ser poco práctico para la mayoría de los casos de uso y podría poner la seguridad de su base de datos en alto riesgo.
una vez que haya finalizado los permisos que desea configurar para sus nuevos usuarios, Asegúrese siempre de recargar todos los privilegios.
sus cambios ahora estarán en efecto.
cómo otorgar diferentes Permisos de usuario
Aquí hay una breve lista de otros permisos posibles comunes que los usuarios pueden disfrutar.,Eliminar – les permite eliminar filas de tablas
SELECT
para leer bases de datospara proporcionar a un usuario específico un permiso, puede usar este framework:
si desea darles acceso a cualquier base de datos o a cualquier tabla, asegúrese de poner un asterisco (*) en el lugar del nombre de la base de datos o el nombre de la tabla.,
cada vez que actualice o cambie un permiso, asegúrese de usar el comando Flush Privileges.
si necesita revocar un permiso, la estructura es casi idéntica a otorgarlo:
tenga en cuenta que al revocar permisos, la sintaxis requiere que use FROM
, en lugar de TO
como usamos al otorgar permisos.,
Puede revisar los permisos actuales de un usuario ejecutando lo siguiente:
Al igual que puede eliminar bases de datos con DROP, puede usar DROP para eliminar un usuario por completo:
para probar su nuevo usuario, cierre sesión escribiendo:
y vuelva a iniciar sesión con este comando en Terminal:
conclusión
después de completar este tutorial, debe tener una idea de cómo agregar nuevos usuarios y otorgarles una variedad de permisos en una base de datos MySQL., Desde aquí, puede continuar explorando y experimentando con diferentes configuraciones de permisos para su base de datos, o puede que desee obtener más información sobre algunas configuraciones de MySQL de nivel superior.
para obtener más información sobre los conceptos básicos de MySQL, le recomendamos que consulte los siguientes tutoriales:
- Cómo crear y administrar bases de datos en MySQL y MariaDB en un servidor en la nube
- Cómo importar y exportar bases de datos y restablecer una contraseña raíz en MySQL
- Cómo migrar una base de datos MySQL entre dos servidores
- Cómo configurar la replicación Master Slave en MySQL