SQL-DCL-数据控制语言

一、 DCL-管理用户

二、DCL-权限控制

sql 复制代码
一、 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'@'%' ;
sql 复制代码
### 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)
相关推荐
洪小帅18 分钟前
Django的models.model如何使用
数据库·python·django·sqlite
程序员入门中1 小时前
深入理解 @Transactional 注解与 Spring 事务机制
java·数据库·spring
MrZhangBaby1 小时前
SQL-leetcode—1193. 每月交易 I
数据库·sql·leetcode
m0_548514771 小时前
Microsoft SQL Serve的下载与安装
数据库·sql·microsoft
马船长1 小时前
ASP.NET代码审计 SQL注入篇(简单记录)
开发语言·数据库·sql·网络安全·asp.net
AI航海家(Ethan)1 小时前
django使用踩坑经历
数据库·postgresql·django·sqlite
m0_748245741 小时前
如何在docker中的mysql容器内执行命令与执行SQL文件
sql·mysql·docker
有杨既安然1 小时前
Docker 从零开始掌握容器化技术
linux·运维·数据库·ubuntu·docker·容器·负载均衡
洪小帅2 小时前
Django实现数据库的表间三种关系
数据库·python·django·sqlite
GeniuswongAir3 小时前
升级到Mac15.1后pod install报错
java·前端·数据库