mysql创建用户,并授权

1.创建用户

CREATE USER 'username'@'host' IDENTIFIED BY 'password';

host分下列3种情况:
'%' - 所有情况都能访问
‘localhost’ - 本机才能访问
’111.222.33.44‘ - 指定 具体ip 才能访问

 新用户默认只能看到test数据库和information_schema数据库。

 

2.修改密码

UPDATE USER  SET password=password('新密码') where user='username';

password('密码')   ,password方法为密码加密

 

 3. 授权

GRANT ALL PRIVILEGES ON databasename.tablename TO 'username'@'host' IDENTIFIED BY 'password';

ALL 可以替换成 select,delete,update,create,drop ,多个权限用逗号分隔

 

 例1: 授权给用户‘user1’在本地机器以外的任意机器上用密码‘123456’访问jstudio数据库的所有权限

           GRANT ALL PRIVILEGES ON jstudio.* TO 'user'@'%' IDENTIFIED BY '123456';

例2:  授权给用户‘user1’在本地机器以外的任意机器上用默认密码访问jstudio数据库中的table1表的所有权限

           GRANT ALL PRIVILEGES ON jstudio.table1 TO 'user'@'%' ;

例3:  授权给用户‘user1’在本地机器上用默认密码访问j所有数据库的所有权限

           GRANT ALL PRIVILEGES ON *.*TO 'user'@'localhost' ;

例4: 授权给用户‘test’在除本地以外的任意机器上用密码123456访问test数据库,拥有select和update的权限

          GRANT select,update on test.* to 'test'@'%' IDENTIFIED BY '123456';

@"%" 表示对所有非本地主机授权,不包括localhost。(ocalhost地址设为127.0.0.1)

 

4.删除用户

DROP user 用户名@'%';

DROP user 用户名@ localhost;

当没有给用户分配数据库的时候需要以下方式进行用户删除:

DELETE FROM user WHERE User='Username' and Host='localhost';

 

5.立即生效
flush privileges;

 

posted @   猪脚踏浪  阅读(719)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示