mysql grant授权与update密码

本文介绍了如何在MySQL命令行中进行用户授权,包括`GRANT`全权限和特定权限的操作,以及如何使用`UPDATE`修改用户密码。还提到了查看用户权限的方法,如`SHOW GRANTS`和查询`mysql.user`表,并介绍了如何撤销权限和更新密码的命令。
摘要由CSDN通过智能技术生成

 grant all privileges on *.* to root@"%";  远程任意主机的所有权限

 FLUSH PRIVILEGES;  刷新

 

 

习惯了使用Navicat For MySQL之类的工具带来的便利,所以对mysql在命令行下的操作渐于生梳 。之前虽然mysql也对外不公开,不过可以使用Navicat For MySQL提供的ssh连接直连到现网的主机上,再进行操作 。但目前在设置过堡垒机和安全优化后,不需要对公的 mysql 不但取消了公网IP ,而且隐于堡垒机之后 。这样再使用工具就不好操作了 。以至于要新增用户,一时连grant授权和update密码都不知道怎么用了。

一、grant授权

grant命令的格式如下:

grant 权限on 数据库对象to 用户

例如,给一个名为common的用户,让其在任意主机上可以连接到testdb上进行查询、插入、更新、删除操作,具体grant 如下:

grant select on testdb.* to common@'%'
grant insert on testdb.* to common@'%'
grant update on testdb.* to common@'%'
grant delete on testdb.* to common@'%'

其中的%号表示任意主机 ,对一段IP设置为 192.168.0.%,对本机设置,后面就换为localhost 。不过上面的写法太繁琐,完全也可以用一条命令完成操作:

grant select, insert, update, delete on testdb.* to common@'%'

平时常用的权限如下图:

mysqlgrant

该图是使用Navicat For MySQL 工具操作时,截的一个图 。出于安全考虑,一般的程序只需select 、insert、update、delete、index、create tmp tables 或者create view几个权限完全够用了。没必要赋予更大的权限  ,程序有特别需要例外 。

想赋予上面提到的几个权限可以如下sql语句完成:

CREATE USER '361way'@'192.168.0.%' IDENTIFIED BY '12345';
grant select,insert,update,delete,create,index,trigger,create temporary tables on sky.* to '361way'@'192.168.0.%';
FLUSH PRIVILEGES;

注:特别注意下创建临时表的权限和上图上的不一致 。具体详细用法也可以参看官方文档 

二、查看用户及所授权限

如果想查看给所有用户,可以查看mysql.user表,查看具体用户所授予的权限,可以使用show grants命令。

1、查看所有用户:

mysql> SELECT DISTINCT CONCAT
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值