ITPub博客

首页 > 云计算 > 虚拟化 > 好程序员云计算培训分享msyql知识点讲解

好程序员云计算培训分享msyql知识点讲解

原创 虚拟化 作者:好程序员 时间:2020-08-13 14:09:03 0 删除 编辑

   好程序员云计算培训分享msyql 知识点讲解 , 在本篇文章中将给大家讲解下msyql 中 now() 、 sysdate() 、 curdate() 区别:

   SELECT date_sub(date_sub(date_format(now(),'%y-%m-%d '),interval extract( day from now())-1 day),interval 1 month) ;

   select date_sub('2019-06-01',interval 1 month);

   上个月第一天

   select date_sub(date_sub(date_format(now(),'%y-%m-%d'),interval extract( day from now()) day),interval 0 month)

   上个月最后一天

   select date_sub(date_sub(date_format(now(),'%y-%m-%d'),interval extract( day from now())-1 day),interval 0 month)

   select date_format(now(),'%Y-%m-01 ') ;

   这个月第一天

   Mysql 日志管理

   error log 错误日志 排错 /var/log/mysqld.log 【默认开启】

   bin log 二进制日志 备份 增量备份 DDL DML DCL

   Relay log 中继日志 复制 接收 replication master

   slow log 慢查询日志 调优 查询时间超过指定值

   Error Log

   log-error=/var/log/mysqld.log

   Binary Log( 用于备份恢复数据 )

   产生binlog 日志:

   log-bin=/var/log/mysql-bin/slave2

   serve-id=2

   # mkdir /var/log/mysql-bin/slave2

   #chmod mysql.mysql /var/log/mysql-bin/slave

   #systemctl restart mysqld

   1. 重启 mysqld 会截断旧日志产生新的日志

   2. 刷新日志会截断旧日志产生新的日志

   mysql> flush logs

   3. 删除所有 binlog (禁用)

   mysql> reset master

   4. 删除部分日志

   mysql> PURGE BINARY LOGS TO 'mysql-bin.010';

   mysql> PURGE BINARY LOGS BEFORE '2016-04-02 22:46:26';

   5. 暂停 binlog 日志功能(仅对当前会话生效)

   mysql> SET SQL_LOG_BIN=0;

   mysql> SET SQL_LOG_BIN=1;

   读取binlog 日志:

   # mysqlbinlog mysql.000002

   按datetime 读取:

   # mysqlbinlog mysql.000002 --start-datetime="2018-12-05 10:02:56"

   # mysqlbinlog mysql.000002 --stop-datetime="2018-12-05 11:02:54"

   # mysqlbinlog mysql.000002 --start-datetime="2018-12-05 10:02:56" --stop-datetime="2018-12-05 11:02:54"

   按position 读取:

   # mysqlbinlog mysql.000002 --start-position=260

   # mysqlbinlog mysql.000002 --stop-position=260

   # mysqlbinlog mysql.000002 --start-position=260 --stop-position=930

   查看带加密的binlong 日志

   mysqlbinlog ---output=decode-rows -v 日志文件

   根据binlog 恢复数据:

   根据时间点恢复数据

   # mysqlbinlog --start-datetime='2014-11-25 11:56:54' --stop-datetime='2014-11-25 11:57:41' tiger-bin.000001 | mysql -u root -p1

   根据位置点恢复数据

   # mysqlbinlog --start-position 106 --stop-position 527 tiger-bin.000001 | mysql -u root -p1

   刷新bin-log 日志 :

   #mysqladmin flush-logs

   去除binlog 加密:

   transaction_isolation=repeatable-read

   binlog_format=mixed

   慢查询:

   slow_query_log=1

   slow_query_log_file=/var/log/mysql-slow/slow.log

   long_query_time=3

   # mkdir /var/log/mysql-slow/

   # chown mysql.mysql /var/log/mysql-slow/

   # systemctl restart mysqld

   查看慢查询日志

   测试:BENCHMARK(count,expr)

   SELECT BENCHMARK(50000000,2*3)


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69913864/viewspace-2711408/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-03-20

  • 博文量
    342
  • 访问量
    195009