登录数据库:
# mysql -u root -p
输入密码
首先mysql的用户账号以及权限信息都保存在mysql.user表中
查询mysql.user的所有用户信息
SELECT host,user,authentication_string password FROM mysql.user;
5.7新建账号赋予数据库权限
1、新建数据库账号,设置账号密码(有些版本在新建账号的时候会提示语法错误,这个时候直接使用2、修改账号权限 命令)
- 第一个chenyang表示用户名
- %表示所有的电脑都可以连接,也可以设置某个ip地址运行连接
- 第二个chenyang表示密码
create user 'chenyang'@'%' IDENTIFIED by 'chenyang';
2、修改账号权限 (会自动添加chenyang账号)
grant all on *.* to 'chenyang'@'%' identified by 'chenyang';
- ALL 表示可以有select、update、delete、insert、建表、建库等等的权限
- *.*表示所有数据库的所有表都有访问权限
- 第一个chenyang表示用户名
- %表示所有的电脑都可以连接,也可以设置某个ip地址运行连接
- 第二个chenyang表示密码
如下(重新授权之后,该用户就只能在localhost(本机)对test库进行select和update操作)
grant SELECT, UPDATE on test.* to 'chenyang'@'localhost' identified by 'chenyang';
8.0新建账号赋予数据库权限
create user 'xxx'@'%' identified WITH mysql_native_password by 'xxxx';
GRANT select ON xxx.* TO 'xxx'@'%';
远程账号能够 使用grant 权限 则需要授予权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
修改账号密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'chenyang';
查看账号权限
SHOW GRANTS FOR 'chenyang'@'%';
删除账号权限
REVOKE ALL PRIVILEGES ON *.* FROM 'chenyang'@'%';
命令立即生效
flush privileges;
(修改权限最简单的方法就是去mysql.user表中删除要修改的用户,重新创建)