MySQL 8.x 创建用户并授权

一、登入 root 用户,一般只有 root 用户具有最高权限

1、登入

mysql -uroot -proot

2、切换至 mysql 数据库

use mysql

3、创建用户

#查询用户
select User,Host from user;

#创建用户
create user 'hkl'@'%' identified by 'test@1234';

创建 hkl 用户,%为不限IP登录,密码为test@1234

4、刷新权限,每次权限变更都要刷新特权

flush privileges;

5、连接测试

 

发现只有一个 information_schema 数据库,所以还需要为该用户授权 

二、授权

1、给 hkl 用户授予所有权限 all privileges

语法:grant 权限名 on 数据库.数据表 to '用户名'@'访问权限' with grant option;
示例1:grant all privileges on *.* to 'root'@'%' with grant option;
示例2:grant select,insert,update on test_db_one.* to 'hkl'@'%' with grant option;
示例3:grant select,insert,update,delete,create,drop,index,alter on nacos.* to 'hkl'@'%' with grant option;

grant all privileges on test_db_one.* to 'hkl'@'%' with grant option;

 说明:
(1):all privileges 所有权限
(2):这里的 all privileges 可以替换为 select, update, delete, insert, drop, create等
(3):*.* 左右星号分别为数据库和数据表
(4):''@'' 艾特符号左右分别代表(用户名)和(访问权限),%为不限制远程IP访问
(5):with grant option 表示该用户可以给其他用户赋权,但是不能超过该用户的权限

2、查看用户权限,show grants for 'hkl'@'%';

三、撤销用户的权限

1、撤销权限

revoke all privileges on test_db_one.* from 'hkl'@'%';
或
revoke all privileges,grant option from 'hkl'@'%';

撤销用户 hkl 对数据库 test_db_one 的所有操作权限

2、 删除用户

drop user 'hkl'@'%';

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 好的,这是创建 MySQL 用户并授权的步骤: 1. 连接到 MySQL 数据库服务器,可以使用以下命令: ``` mysql -u root -p ``` 2. 创建新用户,可以使用以下命令: ``` CREATE USER 'username'@'localhost' IDENTIFIED BY 'password'; ``` 其中,`username` 是新用户的用户名,`localhost` 表示该用户只能从本地访问,`password` 是该用户的密码。 3. 授权用户访问数据库,可以使用以下命令: ``` GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost'; ``` 其中,`database_name` 是要授权的数据库名,`username` 是刚刚创建的用户名,`localhost` 表示该用户只能从本地访问。 4. 刷新权限,使修改生效,可以使用以下命令: ``` FLUSH PRIVILEGES; ``` 完成以上步骤,你就成功地创建了一个新的 MySQL 用户并授权访问数据库。 ### 回答2: 在MySQL中新建用户并授予其权限需要按照以下步骤进行操作。 首先,通过以下命令以root用户身份登录到MySQL服务器: mysql -u root -p 输入密码后,按下回车键登录。 接下来,使用以下命令创建新用户(例如,用户名为"newuser",密码为"password"): CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; 请注意,'localhost'表示新用户只能从本地主机连接到MySQL服务器。如果希望允许从其他主机连接,请将'localhost'改为其他主机名或IP地址。 然后,通过以下命令为新用户授予所有数据库的所有权限: GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'localhost'; 该命令中的"*.*"表示所有数据库的所有表格。可以根据需要更改为特定的数据库或表格。如果只想授予读取权限,可以将"ALL PRIVILEGES"替换为"SELECT"。 最后,通过以下命令使更改立即生效: FLUSH PRIVILEGES; 完成上述步骤后,新用户就已经成功创建并且被授予了相应的权限。可以使用以下命令退出MySQL会话: EXIT; ### 回答3: 在MySQL中,我们可以使用以下步骤来创建新用户并为其授权: 1. 首先,以root用户身份登录到MySQL数据库中。 2. 使用以下命令创建一个新用户(假设我们要创建一个名为“newuser”的用户): CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password'; 此命令将创建一个名为“newuser”的用户,并为其指定密码为“password”。请注意,将“localhost”用作主机名,表示该用户只能从本地登录。 3. 如果你希望允许用户从远程主机登录,请替换“localhost”为用户的IP地址或使用“%”表示任何主机: CREATE USER 'newuser'@'%' IDENTIFIED BY 'password'; 这样,用户就可以从任何远程主机登录。 4. 接下来,我们需要为用户授予适当的权限。例如,如果我们想要授予用户对所有数据库的读取和写入权限,可以使用以下命令: GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost'; 这将为用户“newuser”在“localhost”上的所有数据库授予所有权限。 5. 最后,使用以下命令使更改生效: FLUSH PRIVILEGES; 这将使MySQL重新加载权限表,并将新授权应用到用户。 通过按照上述步骤创建新用户并为其授权,你就可以为MySQL数据库中的新用户提供所需的访问权限了。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值