GNU/Linux >> Tutoriales Linux >  >> Linux

Crear un nuevo usuario y otorgar permisos en MySQL

El artículo describe los permisos de la base de datos MySQL®. También describe cómo crear un nuevo usuario y otorgar o revocar permisos.

Usando comandos MySQL

Las siguientes son sugerencias útiles para los comandos de MySQL.

Capitalización

No es necesario que escriba los comandos de MySQL en mayúsculas. Los dos comandos siguientes funcionan igual de bien:

CREATE USER ‘username’@’localhost’ IDENTIFIED BY ‘password’;
create user ‘username’@’localhost’ identified by ‘password’;

Sin embargo, el uso de letras mayúsculas le ayuda a mantener la sintaxis del comando separada de los datos o elementos variables del comando.

parámetro localhost

Además, puede cambiar el localhost elemento, que permite al usuario acceder a la base de datos desde la computadora en la que se encuentra actualmente. Si desea permitir que el usuario acceda a la base de datos desde cualquier lugar, use un % símbolo en lugar de localhost . Si desea que el usuario inicie sesión en la base de datos desde una dirección IP específica, inserte esa dirección IP en su lugar. Por ejemplo, username’@’22.111.000.34 .

Por lo tanto, podría crear un usuario con cualquiera de los siguientes comandos:

CREAR USUARIO 'nombre de usuario'@'localhost' IDENTIFICADO POR 'contraseña'; CREAR USUARIO 'nombre de usuario'@'%' IDENTIFICADO POR 'contraseña'; CREAR USUARIO 'nombre de usuario'@'22.111.000.34' IDENTIFICADO POR 'contraseña';

Nota: Si desea que el usuario pueda acceder a la base de datos desde dos ubicaciones específicas, y solo desde esas ubicaciones, debe crear el usuario dos veces. Por ejemplo, suponga que desea que su usuario pueda iniciar sesión en la base de datos desde la computadora en la que se encuentra actualmente, así como una dirección IP específica. Primero, cree el usuario usando el localhost ubicación en el comando. Luego, vuelva a crear el usuario utilizando la dirección IP específica.

Permisos

Los permisos comunes incluyen lo siguiente:

  • TODOS LOS PRIVILEGIOS :Permite al usuario acceso completo a una base de datos designada o permite el acceso global a través del sistema si no designa una base de datos. Este permiso incluye todos los siguientes permisos excepto GRANT .

  • CREAR :permite al usuario crear nuevas tablas o bases de datos.

  • SOLTAR :permite al usuario eliminar tablas o bases de datos.

  • ELIMINAR :permite al usuario eliminar filas de las tablas.

  • INSERTAR :permite al usuario insertar filas en las tablas.

  • SELECCIONAR :Otorga al usuario privilegios de solo lectura para las bases de datos designadas.

  • ACTUALIZAR :permite al usuario actualizar las filas de la tabla.

  • TABLAS DE BLOQUEO :Permite al usuario bloquear mesas.

  • MOSTRAR BASES DE DATOS :permite al usuario listar todas las bases de datos.

  • OPCIÓN DE CONCESIÓN :permite al usuario otorgar o eliminar los privilegios de otros usuarios. Debe otorgar este permiso explícitamente.

Iniciar sesión

Inicie sesión en MySQL como usuario raíz utilizando el siguiente comando:

mysql -u root -p

El sistema le solicita la contraseña raíz para MySQL, que es diferente a la contraseña raíz para el propio servidor.

Nota: Si tiene privilegios de sudo en el servidor, es probable que pueda encontrar la contraseña raíz de MySQL en ~/.my.cnf archivo, como usuario root.

Crear un nuevo usuario

Ahora que ha iniciado sesión en MySQL como root, puede crear su usuario. Elija un nombre de usuario que le guste. Ingrese el siguiente comando, reemplazando username y password con su nombre de usuario y contraseña elegidos:

CREATE USER ‘username’@’localhost’ IDENTIFIED BY ‘password’;

Si tiene éxito, el sistema muestra Consulta OK .

Otorgar permiso

Use el siguiente formato para otorgar privilegios de usuario en MySQL:

GRANT permission1, permission2, permission3 ON databasename.tablename TO ‘newuser’@’localhost’;

Si solo desea dar acceso al usuario a todas las tablas de una base de datos, use databasename.* en lugar de databasename.tablename . De manera similar, si desea que el usuario tenga un conjunto particular de privilegios en todas las tablas de todas las bases de datos, use *.* .

Ejemplos de concesión de privilegios:

GRANT ALL PRIVILEGES ON databasename.* TO ‘newuser’@’%’;

GRANT ALL PRIVILEGES, GRANT OPTION ON *.* TO ‘newuser’@’22.111.000.34’;

GRANT SELECT, SHOW DATABASES, LOCK TABLES ON databasename.* TO ‘newuser’@’localhost’;

Revocar permisos

Cuando necesite revocar los privilegios de un usuario, use el siguiente formato:

REMOVE permission1, permission2, permission3 ON databasename.* FROM ‘newuser’@’localhost’;

Verificar permisos

Para verificar qué privilegios tiene un usuario, use el siguiente comando:

SHOW GRANTS newuser;

Aplicar permisos

Después de crear un usuario, otorgar privilegios o revocar privilegios, ejecute el siguiente comando:

FLUSH PRIVILEGES;

Este comando recarga las tablas con los nuevos usuarios y privilegios incluidos. Piense en ello como guardar sus cambios.

Cerrar sesión

Una vez que haya terminado de hacer cambios, use el siguiente comando para salir de MySQL de forma segura:

EXIT;

Linux
  1. Cree una nueva base de datos y utilícela en MySQL/MariaDB

  2. ¿Cómo crear una base de datos MySQL y su usuario en CWP?

  3. Crear una base de datos MySQL y un usuario en cPanel

  4. Crear y editar usuarios en MySQL

  5. Conceptos básicos de usuario y base de datos MySQL

¿Cómo crear una base de datos MySQL y un usuario en cPanel?

¿Cómo crear una nueva base de datos MySQL y un usuario?

¿Cómo puedo crear una nueva base de datos MySQL en cPanel?

Administrar los permisos de usuario de MySQL en cPanel

Cómo crear y administrar nuevos usuarios en Linux

Crear y configurar un usuario en MSSQL