Transferir mysql: otorgar privilegios de comando y vaciado

mysql: otorgar privilegios de comando y vaciado

2019.08.07 17:15:26 Recuento de palabras 495 Lectura 85

La subvención se utiliza para otorgar derechos a los usuarios. Después de ejecutar la subvención, ¿tengo que ejecutar privilegios de vaciado?

Primero cree un usuario aquí:

create user 'ua'@'%' identified by 'pa';

En mysql, el nombre de usuario + dirección solo representa a un usuario, ua @ ip1 y ua @ ip2 son dos usuarios diferentes.

Este comando insertará una fila en la tabla mysql.user. El usuario recién creado tendrá un valor de N en todos los campos de permiso antes de la autorización.

Existen diferentes rangos de derechos de usuario, que se explican a continuación de mayor a menor:

1. Permisos globales

Actuando en toda la instancia de Mysql, la declaración de ponderación es la siguiente:

grant all privileges on *.* to 'ua'@'%' with grant option; 

Esta declaración establecerá el valor de todos los campos de permiso del usuario ua en la tabla de usuario en Y.

En un entorno de producción, a los usuarios generalmente no se les otorgan permisos tan grandes. Si desea revocar los permisos, puede usar el siguiente comando:

revoke all privileges on *.* from 'ua'@'%'; 

2.DB autoridad

Si desea que el usuario ua tenga todos los permisos de la biblioteca db1, puede ejecutar el siguiente comando:

grant all privileges on db1.* to 'ua'@'%' with grant option; 

Los registros de autoridad basados ​​en la biblioteca se almacenan en la tabla mysql.db.

3. Permisos de tabla y permisos de columna

Los permisos de tabla se almacenan en la tabla mysql.tables_priv, y los permisos de columna se almacenan en la tabla mysql.columns_priv.

Los comandos de empoderamiento son los siguientes:

create table db1.t1(id int, a int); grant all privileges on db1.t1 to 'ua'@'%' with grant option; GRANT SELECT(id), INSERT (id,a) ON mydb.mytbl TO 'ua'@'%' with grant option; 

Las tres categorías de permisos descritas anteriormente no solo modificarán la tabla de datos al otorgar, sino que también modificarán la estructura hash en la memoria. De esta manera, la conexión existente se verá afectada de inmediato y no se requiere una declaración de privilegios de vaciado.

La declaración de privilegios de vaciado borrará la matriz acl_users en la memoria, volverá a cargar los datos de la tabla mysql.user y los cargará en la matriz acl_users.

En circunstancias normales, no se requieren privilegios de descarga después de la concesión.

4. Escenarios de uso de privilegios de descarga

Cuando los datos de permisos en la tabla de datos son inconsistentes con los datos de permisos en la memoria, use privilegios de vaciado para reconstruir los datos de la memoria para alcanzar un estado consistente.
Esta inconsistencia generalmente es causada por operaciones irregulares, como el uso directo de la tabla de permisos del sistema operativo DML.

 
 

 

 

Supongo que te gusta

Origin www.cnblogs.com/ruiruiblog/p/12743466.html
Recomendado
Clasificación