[SQL]GRANT PROCESS, LOCK TABLES ON library.* TO 'admin1'@'localhost'; [Err] 1221 - Incorrect usage of DB GRANT and GLOBAL PRIVILEGES
时间: 2024-03-25 07:35:24 浏览: 11
这个错误提示意味着你正在尝试为用户 'admin1' 授予全局权限,但是 'PROCESS' 和 'LOCK TABLES' 权限只能授予到特定的数据库上。
你可以尝试以类似以下的方式授予权限:
```
GRANT PROCESS, LOCK TABLES ON library.* TO 'admin1'@'localhost';
```
这将为 'admin1' 用户授予 'PROCESS' 和 'LOCK TABLES' 权限,限定在 'library' 数据库上。然后你再次尝试运行 mysqldump 命令,应该就可以成功了。
相关问题
mysql> GRANT PROCESS, LOCK TABLES ON library.* TO 'admin1'@'localhost'; ERROR 1221 (HY000): Incorrect usage of DB GRANT and GLOBAL PRIVILEGES
这个错误提示意味着你正在尝试为用户 'admin1' 授予全局权限,但是 'PROCESS' 和 'LOCK TABLES' 权限只能授予到特定的数据库上。
你可以尝试以类似以下的方式授予权限:
```
GRANT PROCESS, LOCK TABLES ON library.* TO 'admin1'@'localhost';
```
这将为 'admin1' 用户授予 'PROCESS' 和 'LOCK TABLES' 权限,限定在 'library' 数据库上。然后你再次尝试运行 mysqldump 命令,应该就可以成功了。
grant select,update on *.* to 'usertest'@'localhost' -> identified by 'testpwd'; 这段代码为什么报错
这段代码可能报错的原因有以下几种可能:
1. MySQL 版本问题:在某些 MySQL 版本中,可能不支持在 `GRANT` 语句中使用 `*.*` 为数据库和表名的通配符,需要明确指定要授权的数据库和表名。
2. 没有足够的权限:执行 `GRANT` 语句需要具有足够的权限,通常需要具有 `GRANT OPTION` 权限或 `SUPER` 权限。如果当前用户没有这些权限,那么该语句将会报错。
3. 语法错误:执行 `GRANT` 语句时,如果语法错误,也会导致该语句报错。你可以仔细检查语法是否正确,比如检查是否有拼写错误、缺少分号等。
你可以根据报错信息进一步排查问题,并进行调整。