2020/01/09 03-用户和权限管理

触发器

当某个行为发生的时候,会触发某个行为执行
事前触发就是,当你要进行一个操作的时候,系统撤销,并且代替一个操作,比如要你修改不让你修改,
当你购买东西,就需要库存里-1,订单表增加记录,也希望库存里-1

trigger 触发器
2020/01/09 03-用户和权限管理
before在事件发生前,先执行触发器,相当于用触发器代替了增删改,after,是在执行操作之后
2020/01/09 03-用户和权限管理
2020/01/09 03-用户和权限管理
2020/01/09 03-用户和权限管理学生信息加一个,那么学生总量的表也需要加一个
echorow 针对每一行触发
触发的结果就是增加总量的笔啊
2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理
创建2个表,创建2个触发器
2020/01/09 03-用户和权限管理
现在有两个触发器
2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理
触发器信息放在这个数据库里
2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理
增加记录应该触发了insert执行2020/01/09 03-用户和权限管理
增加两条记录也递增了
2020/01/09 03-用户和权限管理
delete会触发count表更新2020/01/09 03-用户和权限管理
truncate就不会触发
2020/01/09 03-用户和权限管理
删除触发器
2020/01/09 03-用户和权限管理

用户管理

2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理
可以针对数据库,主机,用户,还有字段,某些字段是否有权限取操作,表的权限
2020/01/09 03-用户和权限管理
usage只是链接数据库的权限,好多权限是没有的
2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理
就可以从8.6的机器上链接2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理
只能看到一个数据库
2020/01/09 03-用户和权限管理
权限不允许
2020/01/09 03-用户和权限管理
这个账号是不能在其他主机上登录的
2020/01/09 03-用户和权限管理
授权一个8.x网段的2020/01/09 03-用户和权限管理
现在就可以登录2020/01/09 03-用户和权限管理
可以删除用户
2020/01/09 03-用户和权限管理
把空账号删除
2020/01/09 03-用户和权限管理
2020/01/09 03-用户和权限管理
专门修改口令,PASSWORD这个函数其实是给口令加密
2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理
也可以update直接修改,update无法立即生效
2020/01/09 03-用户和权限管理
需要flush privileges 刷新特权
2020/01/09 03-用户和权限管理
这是mysqladmin工具
2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理
mysqladmin shutdown可以关闭数据库,只能关闭没有启动 2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理

忘记root口令该怎么办2020/01/09 03-用户和权限管理
如果没有数据可以删除,重启动数据库2020/01/09 03-用户和权限管理
但是这种不适合生产环境
2020/01/09 03-用户和权限管理
**root口令2020/01/09 03-用户和权限管理skip grant table忽略授权表,就可以绕过数据库的登录验证2020/01/09 03-用户和权限管理临时绕过但是还需要**口令,直接update先清空2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理
把刚才加的注销
2020/01/09 03-用户和权限管理
重启数据库
2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理
能否创建临时表
2020/01/09 03-用户和权限管理
能否创建用户
2020/01/09 03-用户和权限管理
能不能创建管理文件
2020/01/09 03-用户和权限管理
超级用户
2020/01/09 03-用户和权限管理
能否查看数据库
2020/01/09 03-用户和权限管理
能否数据库主从复制,锁表
2020/01/09 03-用户和权限管理
管理进程
2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理
获得的权限转增给别人2020/01/09 03-用户和权限管理
2020/01/09 03-用户和权限管理
可以只授权增删改,这样就不能drop2020/01/09 03-用户和权限管理
grant是授权,revoke是取消授权
对于某一个资源有完全的权限ALL PRIVILEGES 或ALL,on对某个对象进行授权(表,视图)
2020/01/09 03-用户和权限管理
数据库级别

  • 和*。*应该是一样的
  • 授权某一个数据库db_name
    可以具体到表tbl_name
    routine_name 存储过程,函数
    2020/01/09 03-用户和权限管理
    查询频率
    多少个用户selectse

    2020/01/09 03-用户和权限管理
    创建账号

2020/01/09 03-用户和权限管理
只有授权的库才能看到2020/01/09 03-用户和权限管理
创建一个更小的权限的
2020/01/09 03-用户和权限管理
针对特定的列
2020/01/09 03-用户和权限管理
test数据库,谁都能访问

select只能看到三列,其他被拒绝了
2020/01/09 03-用户和权限管理
只能看三列
2020/01/09 03-用户和权限管理
取消权限
2020/01/09 03-用户和权限管理
现在test用户权限很大可以删除2020/01/09 03-用户和权限管理
现在可以取消权限,不能执行delete,from针对哪个用户,少了点权限
2020/01/09 03-用户和权限管理
重新登录生效下
2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理通过连接管理模块,让用户可以连接到数据库进行操作
mysql是多线程,要管理线程就是线程管理模块,连接一个用户就要消耗一个线程,所以有一个线程池,通过线程池,当新用户发送请求的时候从线程池中抽取出一个线程来给用户提供服务
还有命令分发器,用户执行指令有一个分发器,不仅要执行指令,还要把一些结果缓存下来
、、
查询缓存模块,查询表里的内容,如果还想要访问,就可以缓存下来,提高速度,不用跑到慢速磁盘上找
、、
日志记录模块,对数据库的操作都有记录,尤其增删改,不记录就有可能造成破坏,比如事务日志,事务要实现ACID特性,才能对日志保持跟踪,保证数据的完整性,没日志怎么撤销
用户管理模块,创建用户
收到命令以后,还需要解析执行
要做优化,对表修改,表维护,去复制,状态模块,查看
还有访问控制权限模块 grant revoke 授权和取消权限
表管理模块,对表里的内容进行增删改
要进行修改的最后还是要体现在磁盘上的,就需要有存储引擎的接口,来负责最后保存到磁盘物理类存储设备来进行交互,不同的存储引擎在磁盘上保存的人家格式是不一样的
存储引擎才是决定如何写到磁盘上去

使用的线程是三个2020/01/09 03-用户和权限管理
其实有些线程处于空闲状态2020/01/09 03-用户和权限管理
mysql协议抓包下看看
2020/01/09 03-用户和权限管理
三次握手
2020/01/09 03-用户和权限管理
口令抓到了但是加密了2020/01/09 03-用户和权限管理
mysql协议帮你把口令加密,不是原来的口令2020/01/09 03-用户和权限管理
use数据库
2020/01/09 03-用户和权限管理
试试查询的能否抓到
2020/01/09 03-用户和权限管理2020/01/09 03-用户和权限管理
mysql一般跨内网使用,这是不加密的

相关文章:

  • 2021-08-12
  • 2021-06-20
  • 2021-11-07
  • 2022-02-08
  • 2021-10-13
  • 2021-12-01
  • 2022-01-04
  • 2021-08-17
猜你喜欢
  • 2021-10-29
  • 2021-12-11
  • 2022-12-23
  • 2021-09-12
  • 2021-06-08
  • 2021-06-20
  • 2021-12-05
相关资源
相似解决方案