登录 MySQL:
使用 MySQL 的 root
用户登录到 MySQL 服务器。在命令行终端中输入以下命令:
mysql -u root -p
然后输入 root
用户的密码来登录。
1.查询用户权限:
一旦成功登录,可执行以下 SQL 查询语句来查看用户的权限情况
SELECT user, host, Super_priv, Grant_priv FROM mysql.user;
这条查询语句会显示 mysql.user
表中所有用户的权限情况。具体字段解释如下:
如果只想查看具有
GRANT OPTION
权限的用户,可以修改查询语句为:
user
:用户名host
:连接主机Super_priv
:是否拥有超级权限 (Y
表示有,N
表示没有)Grant_priv
:是否拥有GRANT OPTION
权限 (Y
表示有,N
表示没有)
SELECT user, host FROM mysql.user WHERE Grant_priv = 'Y';
执行查询后,会显示符合条件的用户列表及其连接主机。从结果中,你可以看到具有 GRANT OPTION
权限的用户。
2.创建用户
1.使用 CREATE USER
命令创建新用户。
例如,创建一个名为 newuser
,允许从任何主机连接的用户,可以这样做:
CREATE USER 'newuser'@'%' IDENTIFIED BY 'password';
'newuser'
是新用户的用户名。'%'
表示允许从任何主机连接。你也可以指定具体的主机,如'localhost'
或一个 IP 地址。'password'
是新用户的密码。确保替换为实际的安全密码。
2.授予权限:
- 使用
GRANT
命令为新用户授予适当的权限。例如,授予新用户在所有数据库上的所有权限: -
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%';
如果只想授予特定数据库的权限,可以将
*.*
替换为数据库名和表名,例如mydatabase.*
。
3.刷新权限:
-
在修改了用户权限之后,确保刷新 MySQL 的权限缓存,使更改生效:
-
FLUSH PRIVILEGES;
4.退出 MySQL:
-
完成用户创建和权限设置后,使用
exit;
退出 MySQL 客户端。
3.删除用户
1.可以执行 DROP USER
命令来删除指定用户。
DROP USER 'username'@'hostname';
其中:
username
是要删除的用户名。hostname
是与该用户名关联的主机名。
例如,如果要删除 CC
用户在 ccry
主机上的权限,可以执行以下命令:
DROP USER 'CC'@'ccry';
如果要删除 root
用户在 localhost
主机上的权限(注意这个操作需要特别小心),可以执行:
DROP USER 'root'@'localhost';
2.确认操作:
执行 DROP USER
命令后,MySQL 不会显示任何删除确认信息,所以务必在执行之前确认输入的信息是正确的。
3.退出 MySQL:
执行完删除操作后,可以键入 exit;
或者使用快捷键 Ctrl + D
退出 MySQL。
删除用户时需要小心,确保不要意外删除了重要用户。特别是删除 root
用户或具有重要权限的用户可能会导致系统问题。