MySQL中一些用户相关的常用命令

 

登录到MySQL服务器,使用具有管理权限的账号。

 

-- 重置密码
ALTER USER 'user_yang'@'localhost' IDENTIFIED BY 'new_password';
-- 查看所有用户列表(用户名@主机)
SELECT user, host FROM mysql.user ORDER BY user, host;
-- 查看某个单独用户权限
SHOW GRANTS FOR 'user_yang'@'localhost';

SHOW GRANTS FOR 'user_zhang'@'xxx.xx.xx.xxx';

SHOW GRANTS FOR 'user_wang'@'%';

接下来重头戏,之前常用root用户连所有,包括host直接设置%,这种操作高风险,不推荐!

-- 创建用户 'user_li',允许从 localhost 连接
CREATE USER 'user_li'@'localhost' IDENTIFIED BY 'your_password';
-- 创建用户 'user_zhang',允许从指定IP 连接
CREATE USER 'user_zhang'@'xxx.xx.xx.xxx' IDENTIFIED BY 'your_password';
-- 创建用户 'user_wang',允许从任意 IP 连接(谨慎使用)
CREATE USER 'user_wang'@'%' IDENTIFIED BY 'your_password';
-- 授予user_li对指定数据库的所有权限
GRANT ALL PRIVILEGES ON database_name.* TO 'user_li'@'localhost';
-- 授予user_zhang从指定IP登录,对指定数据库的部分操作权限(常用)
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON database_name.* TO 'user_zhang'@'xxx.xx.xx.xxx';
-- 授予user_wang从任意地方可登录对指定库中的指定表的select和insert权限
GRANT SELECT, INSERT ON database_name.table_name TO 'user_wang'@'%';

最后记得刷新权限,使更改生效

-- 刷新权限,使更改生效:
FLUSH PRIVILEGES;

 

posted @ 2025-10-11 16:41  Allen3  阅读(16)  评论(0)    收藏  举报