MySQL5.7 用户权限

前言

用户创建,操作权限,访问权限

① 创建用户

CREATE USER 'username'@'host' IDENTIFIED BY 'password';
  • username : 你准备创建的用户名
  • host : 指定该用户可以在哪个主机连接登录 , 如果是本地用户使用 localhost , 如果用户想从任意远程主机连接登录, 可以使用 % . (或者指定固定IP都可以)
  • password : 该用户的登录密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器

(〃‘▽’〃) 示例 :

## 创建一个用户名为 miduo , 密码为 dev1024 只允许在本地登录的账号 。
CREATE USER 'miduo'@'localhost' IDENTIFIED BY 'dev1024';
## 创建一个用户名为 miduo , 密码为 dev1024 只允许在 IP 为 192.168.1.101 的主机上登录的账号 。
CREATE USER 'miduo'@'192.168.1.101' IDENTIFIED BY 'dev1024';
## 创建一个用户名为 miduo , 密码为 dev1024 允许在任意主机上登录的账号 。
CREATE USER 'miduo'@'%' IDENTIFIED BY 'dev1024';
## 创建一个用户名为 miduo , 没有密码 允许在任意主机上登录的账号 。
CREATE USER 'miduo'@'%' IDENTIFIED BY '';
## 创建一个用户名为 miduo , 没有密码 允许在任意主机上登录的账号 。
CREATE USER 'miduo'@'%';

② 用户授权

GRANT privileges ON databasename.tablename TO 'username'@'host';
  • privileges : 用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL
  • databasename : 数据库名
  • tablename : 表名

(〃‘▽’〃) 示例 :

## 授权 miduo 操作所有数据库所有权限 
## ALL 代表所有操作权限
## *.* 代表所有数据库的所有表
## % 允许远程访问
GRANT ALL ON *.* TO 'miduo'@'%';
## 授权 miduo 用户 操作数据库mes下user表  查看和新增的权限 。开放远程访问
GRANT SELECT, INSERT ON mes.user TO 'miduo'@'%';

## 授权 miduo 用户 操作数据库mes下所有表  所有权限 。开放远程访问
GRANT ALL ON mes.* TO 'miduo'@'%';

注意:
以上命令只能使用 root 账户执行授权。
如果想使用其他账号 (前期是此账号有所有操作权限) 可在以上命令后加上 WITH GRANT OPTION;

## root 账号执行授权
GRANT privileges ON databasename.tablename TO 'username'@'host';
## 其他账号执行授权 (前期是此账号有所有操作权限)
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;

③ 设置/更改密码

## 使用root修改指定账户密码
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
## 修改当前登录用户密码
SET PASSWORD = PASSWORD("newpassword");

(〃‘▽’〃) 示例 :

## 修改用户 miduo 的密码为 5211314 , 并开放允许远方访问
SET PASSWORD FOR 'miduo'@'%' = PASSWORD("5211314");

④ 撤销/取消用户权限

REVOKE privilege ON databasename.tablename FROM 'username'@'host';
  • privileges : 用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL
  • databasename : 数据库名
  • tablename : 表名

(〃‘▽’〃) 示例 :

## 撤销 用户 miduo 的所有权限
REVOKE SELECT ON *.* FROM 'miduo'@'%';

⑤ 查看用户权限

SHOW GRANTS FOR 'username'@'host';
  • username : 用户名
  • host : 对应你用户名的访问权限 如 : localhost , % , 某IP 等等(如果是 % , 但是你写的 localhost , 运行命令会报错 )

(〃‘▽’〃) 示例 :

SHOW GRANTS FOR 'miduo'@'%';

⑥ 删除用户

DROP USER 'username'@'host';

(〃‘▽’〃) 示例 :

DROP USER 'miduo'@'%';

⑦ 刷新权限

建议进行任何权限操作后, 都执行下面命令进行刷新权限。

FLUSH PRIVILEGES;

⑧ 基础操作

⑧-① 登录数据库

mysql -uroot -p	## 回车后输入密码

⑧-② 查看所有数据库

show databases;

⑧-③ 使用某数据库

use mysql;	## 进入 mysql 数据库

⑧-④ 查看数据库用户

## 查看所有用户
select * from user;
select user , host from user;

## 或者直接访问 mysql.user 
select * from mysql.user;
select user , host from mysql.user;

⑧-⑤ 查看当前选择的数据库

select database();

⑧-⑥ 查看当前登录用户

select user();

⑧-⑦ 查看数据库版本

select version();

⑧-⑧ 退出数据库

quit;

总结

MySQL的操作很多,大家还是要多练习命令。多操作。陆续会更新。。。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在MySQL 5.7中更改用户权限,可以使用以下方法之一: 方法1:使用UPDATE语句直接编辑user表。首先登录到MySQL服务器,然后执行以下命令: ``` mysql -u root mysql ``` 然后执行以下命令来更新用户的密码: ``` UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root'; ``` 最后,刷新权限以使更改生效: ``` FLUSH PRIVILEGES; ``` 这将更改root用户的密码为"newpass"。\[1\] 方法2:如果你忘记了root密码,可以使用以下方法来重置密码。首先,停止MySQL服务器并以跳过权限验证的方式启动: ``` mysqld_safe --skip-grant-tables& ``` 然后再次登录到MySQL服务器: ``` mysql -u root mysql ``` 执行以下命令来更新root用户的密码: ``` UPDATE user SET password=PASSWORD("new password") WHERE user='root'; ``` 最后,刷新权限以使更改生效: ``` FLUSH PRIVILEGES; ``` 这将重置root用户的密码为"new password"。\[2\] 方法3:如果你想允许root用户进行远程登录,你需要为其创建一个远程登录的账号并赋予相应的权限。执行以下命令来创建一个允许root用户远程登录的账号: ``` GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'admin123'; ``` 如果你想为其他用户名和IP地址创建远程登录账号,可以使用以下命令: ``` GRANT ALL PRIVILEGES ON *.* TO 'YourUserName'@'YourIP' IDENTIFIED BY 'YourPassword'; ``` 这将允许指定的用户名和IP地址通过远程连接访问MySQL服务器,并赋予其所有权限。\[3\] 请根据你的具体需求选择适合的方法来更改用户权限。 #### 引用[.reference_title] - *1* *2* *3* [MySQL 修改root用户密码和设置权限](https://blog.csdn.net/loveLifeLoveCoding/article/details/126919740)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

快乐米多

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值