王新阳

wangxinyang

MYSQL创建用户并指定一个数据库、修改用户密码

参考:https://www.jianshu.com/p/b38255b96006

添加用户

方法一:

create user '用户名'@'本机名'  indentified by '密码'
grant all(权限) on 数据库名.*(表)  '用户名'@'本机名' indentified by '密码'

方法二:

/*添加新用户test_usr*/
USE mysql;
INSERT INTO USER(`Host`,`User`,`Password`, `ssl_cipher`, `x509_issuer`, `x509_subject`) VALUES('%','test_usr',PASSWORD('test_pwd'),'','','');
FLUSH PRIVILEGES;

/*给test_usr赋予数据库test_db的管理权*/
GRANT ALL PRIVILEGES ON test_db.* TO test_usr@`%`;
FLUSH PRIVILEGES;

方法三:

/*直接添加新用户text_usr,密码为test_pwd,并赋予数据库test_db的管理权*/
GRANT ALL PRIVILEGES ON test_db.* TO test_usr@'%' IDENTIFIED BY 'test_pwd';
FLUSH PRIVILEGES;

IDENTIFIED BY 'test_pwd' 表示用户不存在时自动添加,并设置密码为test_pwd

/*单独指定权限权限*/
GRANT SELECT ON test_db.* TO test_usr@`%`;
GRANT UPDATE ON test_db.* TO test_usr@`%`;
GRANT DELETE ON test_db.* TO test_usr@`%`;
GRANT INSERT ON test_db.* TO test_usr@`%`;
/*或*/
GRANT select,update,delete,insert ON test_db.* TO test_usr@`%`;


删除用户

方法一 删除用户同时删除与之对应的管理权限

DROP USER test_usr@`%`;
FLUSH PRIVILEGES;

方法二

/*删除用户*/
DELETE FROM mysql.user WHERE Host = '%' AND User = 'test_usr';
/*删除此用户管理的数据库管理权限(管理的数据库本身不变)*/
DELETE FROM mysql.db WHERE Host='%', User='test_usr';
FLUSH PRIVILEGES;


操作权限列表


修改密码

方法一:使用 SET PASSWORD 命令

mysql -u root -p
set password form root@localhost=password('新密码');

方法二:UPDATE直接编辑user表,然后刷新权限

update mysql.user set `password`=password('新密码') where user='用户名' and Host ='localhost';
flush privileges;


2021-04-22
2024-05-04 星期六 农历三月二十六