MySQL DBA运维实战—第4章—SQL3。

目录

一 DCL

1.权限级别

2.MySQL用户管理

==创建用户==

  ​==删除用户==

==mysql权限管理==

==MySQL权限(授权、收权)==

二 日志

1.日志分类:

2.Error  Log 错误日志

3.Binary Log(二进制日记)                    ​

4.SlowQuery Log


1.权限级别

1.  Global level   所有库,所有表的权限。

2. Database level    某个数据库中的所有表的权限。

3 .Table level    库中的某个表的权限

4. Column level    表中的某个字段,的权限。

2.MySQL用户管理

==创建用户==

 创建用户:CREATE   USER   user1@'localhost'  IDENTIFIED  BY   'QianFeng@123456';
 验证:select * from mysql.user\G;

  
==删除用户==

mysql> DROP USER 'user1'@'localhost';

操作提示:

mysql> selece * from mysql.user\G;         //查看每个用户列

mysql> drop 'user1'@'localhost';

查看数据库用户:

mysql> select * flrom mysql.user\G;           //查看每个用户详情列

 或者:myaql> select user from mysql.user;    //直接查看用户名列表

==mysql权限管理==

语法:grant 权限列表    on  库名.表名   to  '用户名'@'客户端主机'   [identified  by  '密码'   with  option参数];

 

==MySQL权限(授权、收权)==

1.授予权限:

   ==授权目标==

授予用户admin3 k1库 . 所有的表,具有所有权限(不包含授权)

mysql> GRANT ALL ON k1.* TO admin3@'%' IDENTIFIED BY 'QianFeng@123456';

  ==授权示例==

(1)准备测试账号:

root账号创建:CREATE USER admin3@'%' IDENTIFIED BY 'QianFeng@123';

     

(2)授权账户:

root 账户 授权:GRANT ALL ON k1.* TO admin3@'%' IDENTIFIED BY 'QianFeng@123'

(3)使用测试账号操作数据库

登录admin账号:mysql> mysql  -uadmin -p'QianFeng@123456';

查看数据库:mysql> show databases;

  

创建k1库:mysql> create database k1;

试试创建别的库:mysql> create dsatabase k2;

                          

2回收权限: 

==查看权限==

查看自己的权限:mysql> show grants\G;

查看别人的权限mysql> show grants for  admin3@'%'\G;

==回收权限REVOKE==(revoke)

语法:REVOKE 权限列表 ON 数据库名 FROM 用户名@‘客户端主机’

示例:REVOKE ALL PRIVILEGES  ON k1.*  FROM admin3@’%’;                              //回收所有权限

   

==删除用户的版本问题==

5.6之前,先   revoke all privilege        再  drop user

5.7之后,直接    drop user

二 日志

1.日志分类:

1 错误日志 :启动,停止,关闭失败报错。rpm安装日志位置 /var/log/mysqld.log

2 通用查询日志:所有的查询都记下来。

3 二进制日志:实现备份,增量备份。只记录改变数据,除了select都记。

4 中继日志:读取主服务器的binlog,在本地回放。保持一致。

5 slow log:慢查询日志,指导调优,定义某一个查询语句,定义超时时间,通过日志提供调优建议给开发人员。

6 DDL log: 定义语句的日志。

2.Error  Log 错误日志

   进入主配置文件,观察日志是否启动。

vim   /etc/my.cnf

   log-error=/var/log/mysqld.log
   该字段,标记是否启动日志,以及日志位置。

  如果哪天mysql服务起不来了,来这个日志文件看看。

 

3.Binary Log(二进制日记)

==默认没有开启,二进制日志

配置文件位置:/etc/my.con

==启动二进制日志:

# vim   /etc/my.cnf
log_bin	添加该字段。指启动二进制日志
server-id=2	群集问题,必须指定该主机的序号。数字随意

# systemctl restart mysqld	重启数据库

  

==测试==:

1.查看二进制日志文件当前状态:

ls /var/lib/mysql/*bin*	  #查询二进制文件生成完成。
mysqlbinlog -v /var/lib/mysql/localhost-bin.000001	 #查看二进制文件日志。后续讲解

# at 123  	#找到一个记录位置

2 进入数据库,进行数据操作

  创库,创表,创数据(过程略)

  

3 完成二进制日志启动,查询测试

mysqlbinlog  -v  /var/lib/mysql/localhost-bin.000001 

找到刚才创建的记录即可。

                    

4.SlowQuery Log

==默认慢查询日志未开启

==开启慢查询日志功能

# vim   /etc/my.cnf

         加入下面2行配置

slow_query_log=1

            启动慢查询日志
            这个参数设置为ON,可以捕获执行时间超过一定数值的SQL语句。

 long_query_time=3

            当SQL语句执行时间超过此数值时,就会被记录到日志中,建议设置为1或者更短。
        重启服务器

 #systemctl  restart  mysqld

==查看慢查询日志文件

# ll  /var/lib/mysql/*slow*

        查看日志文件已经生成

==模拟慢查询


mysql>SELECT BENCHMARK(500000000,2*3);

        基本测试语句,测试一个超长时间的查询。
        课后作业:收集数据库压力测试工具信息。(面试题)

==验证慢查询日志


# tail  /var/lib/mysql/localhost-slow.log 

        观察长查询日志记录,记录了刚才超长的查询结果。
稍后反馈给开发部,进行优化。

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DBA日记 序 3 前言之DBA的性格 7 前言之我的成长之路 11 第一部(1) 5月11日 20 第一部 (2) 5月12日 22 第一部 (3) 5月13日 24 第一部 (4) 5月14日 26 第一部 (5) 5月15日 28 第一部 (6) 5月18日 31 第一部 (7) 5月19日 南京 33 第一部(8) 5月20日 临晨的邮件通知短信 37 第一部(9) 5月22日 ODS系统和RAC 39 第一部(10) 5月23日 实时ODS 41 第一部 (11) 5月24日 重返沈阳 44 第一部(12) 5月25日 46 第一部(13) 5月26 优化方案 48 第一部(14) 5月27日 无奈 50 第一部(15) 5月29 突破困局 52 第一部(16) 5月31日 实施优化 54 第一部(17) 6月6日 实施优化 56 第一部(18) 6月7日 突发事件 58 第一部(19) 6月10日 性能问题 60 第一部(20) 6月11日 例会 62 第一部(21) 6月12日 64 第一部(22) 6月13日 演戏 66 第一部(23) 6月14日 转机 68 第一部(24) 6月14日之二 cache buffer chains 72 第一部(25) 6月15日 青岛 74 第一部(26)之二 6月15日 青岛 78 第一部(27) 6月16日 青岛机场 80 第一部 (28) 6月17日 完美的效果 85 第一部 (29) 6月18日 准备收工 88 第一部(30) 6月19日 突然事件 90 第一部(31) 7月20日 重回沈阳 92 第一部(32) 7月21日 课堂风波 95 第一部(33) 7月23 世博园一日游和心想事成 98 第一部 7月23日夜 漫长的一夜 (第一部完) 101 后记1 结束语 108 后记2 优化项目的流程之方案 109

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值