当前位置: 首页 > news >正文

mysql上课总结(2)(DCL的所有操作总结、命令行快速启动/关闭mysql服务)

目录

一、DCL小结(数据控制语言)

1、查询表不在当前使用的数据库,可以在表名前加数据库名。

2、系统数据库mysql 的 user 表。

3、在系统数据库mysql 的 user 表当中如何判断创建的用户是否唯一?

4、系统数据库mysql 的 user 表当中的用户密码是加密的。

5、系统数据库mysql 的 user 表去中创建用户的语法。

6、命令行快速启动与关闭mysql服务。

7、如何在创建用户后去授予权限?

8、给用户授权时的几种常用权限。

9、撤销权限。

10、查询用户权限。

11、删除用户。

12、修改用户密码(高、低版本)。


一、DCL小结(数据控制语言)

1、查询表不在当前使用的数据库,可以在表名前加数据库名
#如下
select * from 指定数据库名.表名;
2、系统数据库mysql 的 user 表。
  • 在MySQL数据库当中用户的信息、用户所具有的权限的信息。这些都是存放在系统数据库mysql 的 user 表当中。

3、在系统数据库mysql 的 user 表当中如何判断创建的用户是否唯一?
  • 不是单纯的看"User"这一列,而是还要看"Host"这一列。两个都满足一样,才冲突!!
  • Host字段。值设置为"localhost"表示这个用户只能在本机访问数据库服务器。值设置为"%"(百分号)表示任何一台电脑都能通过创建的用户访问数据库服务器。

4、系统数据库mysql 的 user 表当中的用户密码是加密的。

(不是明文,不安全!)

  • 其中对应的密文字段是"authentication_string"。
5、系统数据库mysql 的 user 表去创建用户的语法。
  • 创建用户的语法。
#语法:
CREATE USER 用户名@地址 IDENTIFIED BY '密码';
#创建用户
#localhost/% 表示本机访问还是可远程访问
CREATE USER 用户名@localhost/% IDENTIFIED BY '密码';
  • 两种创建的举例。
--user1用户只能在localhost这个IP登录mysql服务器
CREATE USER user1@localhost IDENTIFIED BY '123';--user2用户可以在任何电脑上登录mysql服务器
CREATE USER user2@'%' IDENTIFIED BY '123';
6、命令行快速启动与关闭mysql服务。

(以管理员身份运行)

  • 启动服务:命令行敲命令"net start mysql"即可。

  • 关闭服务:命令行敲命令"net start mysql"即可。

  • 退出mysql。

命令行输入"exit"。

7、如何在创建用户后去授予权限?
  • 关键字:GRANT

  • 授予权限的语法。

(1)其中"on"的意思就是把某些库的某些表的什么权限给这个用户。

(2)"to"的意思就是给指定的用户。

GRANT 权限1, … , 权限n ON 数据库.* TO 用户名;

  • 注意事项。

(1)其中多个权限之间,使用逗号分隔。

(2)授权时,数据库名和表名可以使用 * 进行通配,代表所有


  • 举例如下。
#赋予数据库mydb1的所有表的指定权限
GRANT CREATE,ALTER,DROP,INSERT,UPDATE,DELETE,SELECT ON mydb1.* TO user1@localhost; #赋予数据库mydb1的所有表的所有权限
GRANT ALL ON mydb1.* TO user2@localhost;

  • mysql做不到控制用户只能访问某些列。没有这么精细的控制。
  • 但是可以在Java代码中做权限控制。
8、给用户授权时的几种常用权限。

下述只是简单罗列了常见的几种权限描述

(其他权限描述及含义,可以直接参考官方文档)官方文档icon-default.png?t=O83Ahttps://dev.mysql.com/doc/refman/8.0/en/privileges-provided.html

9、撤销权限。
  • 关键字:REVOKE

  • 撤销权限就是收回,也就是"from"。表示从哪个用户收回权限。授予权限就是给"to"。

  • 撤销权限的语法。
REVOKE权限1, … , 权限n ON 数据库.* FORM 用户名;
  • 举例如下。
REVOKE CREATE,ALTER,DROP ON mydb1.* FROM user1@localhost;
  • 注意撤销权限之后,尽量让这个用户重新登录测试!
10、查询用户权限。
  • 语法。
SHOW GRANTS FOR 用户名;
SHOW GRANTS FOR user1@localhost;
  • 举例。

11、删除用户。
  • 语法。
DROP USER 用户名;
DROP USER user1@localhost;
  • 注意事项。

1、在MySQL中需要通过用户名@主机名的方式,来唯一标识一个用户

2、主机名可以使用 % 通配。

3、这类SQL开发人员操作的比较少,主要是DBA( Database Administrator 数据库管理员)使用。

12、修改用户密码(高、低版本)。
  • mysql高版本语法。

  • mysql低版本语法。
USE mysql;
UPDATE USER SET authentication_string=PASSWORD('新密码') WHERE User='用户名' and Host='IP';
#下面这个代表刷新
FLUSH PRIVILEGES; 

http://www.lryc.cn/news/473059.html

相关文章:

  • 法律智能助手:开源NLP系统助力法律文件高效审查与检索
  • 如何使用AdsPower指纹浏览器克服爬虫技术限制,安全高效进行爬虫!
  • 四、虚拟化配置寄存器(HCR_EL2)
  • 我要成为算法高手-滑动窗口篇
  • jenkins搭建及流水线配置
  • Vue v-on
  • 快速生成高质量提示词,Image to Prompt 更高效
  • SELS-SSL/TLS
  • 算法:排序
  • MyBatis-Plus 更新对象时如何将字段值更新为 null
  • Unreal5从入门到精通之如何在VR中使用3DUI
  • ViSual studio如何安装 并使用GeographicLib
  • Java程序设计:spring boot(11)——分布式缓存 Ehcache 整合
  • 豆包,攻克数字是个什么工具?《GKData-挖掘数据的无限可能》(数据爬虫采集工具)
  • 说一说QWidget
  • Web3.0技术入门
  • spygalss cdc 检测的bug(二)
  • 集合论(ZFC)之 选择公理(Axiom of Choice)注解
  • JS:字符串操作
  • .NET 一款二进制文件转换Shellcode的工具
  • 【CSS】——基础入门常见操作
  • LuaJIT源码分析(五)词法分析
  • 005 匿名信
  • 聊聊Web3D 发展趋势
  • 【数据结构与算法】LeetCode: 贪心算法
  • Date 日期类的实现(c++)
  • 智能家居10G雷达感应开关模块,飞睿智能uA级别低功耗、超高灵敏度,瞬间响应快
  • 头歌——人工智能(机器学习 --- 决策树2)
  • 一七一、React性能优化方式
  • 编写dockerfile生成镜像,并且构建容器运行