Mysql8创建用户以及赋权操作

1.使用root 进入mysql

mysql>  mysql -uroot -p

 

2.使用命令创建用户 tmc 设置密码 123456

mysql> create user 'tmc'@'%' identified by '123456';
Query OK, 0 rows affected (0.10 sec)

 

3.刷新权限

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

 

4.切换到msyql库并查看用户

mysql> use mysql;
Database changed
mysql> select user ,host from user;
+------------------+-----------+
| user | host |
+------------------+-----------+
| root | % |
| tmc | % |
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
+------------------+-----------+
5 rows in set (0.00 sec)

 

5.给用户设置mysql库的权限

mysql> grant all privileges on mysql* to 'tmc'@'%' with grant option;
Query OK, 0 rows affected (0.03 sec)

 

设置其他库的权限

mysql> grant all privileges on sycdemo.* to 'tmc'@'%' with grant option;
Query OK, 0 rows affected (0.00 sec)

 

6.使用命令查看用户所有库权限

mysql> show grants for 'tmc'@'%';
+-----------------------------------------------------------------------+
| Grants for tmc@% |
+-----------------------------------------------------------------------+
| GRANT USAGE ON *.* TO `tmc`@`%` |
| GRANT ALL PRIVILEGES ON `mysql`.* TO `tmc`@`%` WITH GRANT OPTION |
| GRANT ALL PRIVILEGES ON `sycdemo`.* TO `tmc`@`%` WITH GRANT OPTION |
| GRANT ALL PRIVILEGES ON `sycdemo01`.* TO `tmc`@`%` WITH GRANT OPTION |
| GRANT ALL PRIVILEGES ON `sycdemo02`.* TO `tmc`@`%` WITH GRANT OPTION |
| GRANT ALL PRIVILEGES ON `test_grant`.* TO `tmc`@`%` WITH GRANT OPTION |
+-----------------------------------------------------------------------+

 

7.使用命令删除 用户指定库的权限

revoke all privileges on test_grant.* from 'tmc'@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> revoke all privileges on sycdemo02.* from 'tmc'@'%';
Query OK, 0 rows affected (0.00 sec)

 

8.查看用户权限

mysql> show grants for 'tmc'@'%';
+----------------------------------------------------------------------+
| Grants for tmc@% |
+----------------------------------------------------------------------+
| GRANT USAGE ON *.* TO `tmc`@`%` |
| GRANT ALL PRIVILEGES ON `mysql`.* TO `tmc`@`%` WITH GRANT OPTION |
| GRANT ALL PRIVILEGES ON `sycdemo`.* TO `tmc`@`%` WITH GRANT OPTION |
| GRANT ALL PRIVILEGES ON `sycdemo01`.* TO `tmc`@`%` WITH GRANT OPTION |
| GRANT USAGE ON `sycdemo02`.* TO `tmc`@`%` WITH GRANT OPTION |
| GRANT USAGE ON `test_grant`.* TO `tmc`@`%` WITH GRANT OPTION |
+----------------------------------------------------------------------+
6 rows in set (0.00 sec)

 

9.也可以使用命令分类 select,insert,update,delete,drop,create等权限,只需要替换 all privileges

mysql> grant select,create on sycdemo02.* to 'tmc'@'%' with grant option;
Query OK, 0 rows affected (0.01 sec)

mysql> show grants for 'tmc'@'%';
+----------------------------------------------------------------------+
| Grants for tmc@% |
+----------------------------------------------------------------------+
| GRANT USAGE ON *.* TO `tmc`@`%` |
| GRANT ALL PRIVILEGES ON `mysql`.* TO `tmc`@`%` WITH GRANT OPTION |
| GRANT ALL PRIVILEGES ON `sycdemo`.* TO `tmc`@`%` WITH GRANT OPTION |
| GRANT ALL PRIVILEGES ON `sycdemo01`.* TO `tmc`@`%` WITH GRANT OPTION |
| GRANT SELECT, CREATE ON `sycdemo02`.* TO `tmc`@`%` WITH GRANT OPTION |
| GRANT USAGE ON `test_grant`.* TO `tmc`@`%` WITH GRANT OPTION |
+----------------------------------------------------------------------+
6 rows in set (0.00 sec)

 

posted @ 2022-11-11 19:17  爵士灬  阅读(1100)  评论(0编辑  收藏  举报