SQL-DCL-数据控制语言

一、 DCL-管理用户

二、DCL-权限控制SQL-DCL-数据控制语言_第1张图片

一、 DCL-管理用户,主要是DBA数据库管理员使用,开发使用较少
# 1、查询用户
use mysql;
show tables;
desc user;
select * from user;
# host为主机地址, 主机地址和用户名确定唯一性

# 2、创建用户
create user 'itcast'@'localhost' identified by '123456'; # 用户itcast在localhost本机,密码123456,此时权限不完全
create user 'user1'@'%' identified by '123456';# %代表任意主机

# 3、修改用户密码
alter user 'user1'@'%' identified with  mysql_native_password by '654321';# 修改本地用户

# 4、删除用户
drop user 'itcast'@'localhost';



二、DCL-权限控制
# 查询权限
show  grants for 'user1'@'%' ;
# GRANT USAGE ON *.* TO `itcast`@`localhost`仅仅可以连接登陆mysql
# 授予权限
grant  alter,drop on itcast.* to 'user1'@'%' ;
grant  all on itcast.* to 'user1'@'%' ;# 授权数据库的全部表
grant  all on *.* to 'user1'@'%' ;# 授权全部数据库

# 撤销权限
revoke all on itcast.* from 'user1'@'%' ;
revoke alter on itcast.* from 'user1'@'%' ;
### cmd


C:\Users\hym>mysql -u user1 -p
Enter password: ******
ERROR 1045 (28000): Access denied for user 'user1'@'localhost' (using password: YES)

C:\Users\hym>mysql -u user1 -p
Enter password: ******
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 8.0.39 MySQL Community Server - GPL

Copyright (c) 2000, 2024, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| performance_schema |
+--------------------+
2 rows in set (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| itcast             |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)

你可能感兴趣的:(SQL,sql,数据库)