需求引入 在日常运维中,DBA可能经常会查看某个Query_Id对应哪些SQL,例如追查大事务问题:也可能业务端需要查看某时间端内所有SQL. 然而mysql在输入全日志的时候没有在每行SQL前打印时间戳,对于存在多行的SQL也没有处理,故需要额外的工具解决这个问题, 为此写了这个脚本. 处理脚本 主要操作类: 1.完成换行补齐 2.时间戳添加 #!/usr/bin/env python26 #-*- coding:utf-8 -*- import os import sys import re…
在源码sql/sql_parse.cc中定义 const LEX_STRING command_name[]={ { C_STRING_WITH_LEN("Sleep") }, { C_STRING_WITH_LEN("Quit") }, { C_STRING_WITH_LEN("Init DB") }, { C_STRING_WITH_LEN("Query") }, { C_STRING_WITH_LEN("Fie…
场景: 有张表的数据需要用同步工具同步至其他库,需要 update_time 时间戳字段 来做增量同步. 解决方法: alter table quant_stk_calc_d_wxcp add update_time timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;…
在SQL SERVER下跟踪sql采用事件探查器,而在mysql下如何跟踪sql呢? 其实方法很简单,开启mysql的日志log功能,通过查看跟踪日志即可. 开启mysql的日志log方法: windows环境下的配置方法: 我使用的版本:Version: 5.0.37-community-nt-log (MySQL Community Edition (GPL)) 找到my.ini,我的是在“G:\Program Files (x86)\MySQL\MySQL Server 5.0”目录下,…
转自: MySQL慢日志查询全解析:从参数.配置到分析工具 - MySQL - DBAplus社群——围绕数据库.大数据.PaaS云,运维圈最专注围绕“数据”的学习交流和专业社群http://dbaplus.cn/news-11-694-1.html 一.慢查询日志概念 MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中.long_query_time的默认值为…
创建一个名称为mydb1的数据库,如果有mydb1数据库则直接使用,如果无则创建mydb1数据库 create database if not exists mydb1; create database if not exists mydb1;   创建一个使用UTF8字符集的mydb2数据库,注意这里不是UTF-8 create database if not exists mydb2 character set UTF8; create database if not exists mydb…
my.ini # power by phpStudy 2014 www.phpStudy.net 官网下载最新版 [client] port=3306 [mysql] default-character-set=utf8 [mysqld] port=3306 basedir="E:/phpStudy/MySQL/" datadir="E:/phpStudy/MySQL/data/" general_log=1 general_log_file="F:/da…
MySQL的二进制日志可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是事务安全型的. binlog日志的作用 其一:MySQL Replication在Master端开启binlog,Mster把它的二进制日志传递给slaves来达到master-slave数据一致的目的. 其二:自然就是数据恢复了,通过使用mysqlbinlog工具来使恢复数据. MySQL二进制日志包括两类文件:二进…
作者:王航威 - fordba.com 来源:http://fordba.com/box-anemometer-visual-mysql-slow.html,叶师傅对原文内容略有调整 备注:王航威是知数堂第8期同学,现任职有赞DBA MySQL 慢日志简介 MySQL慢日志(slow query log)想必大家都有听说,它是用来记录MySQL中的慢SQL(执行耗时超过 long_query_time 预设时间的SQL),并且扫描的行数超过min_examined_row_limit(如果也设置…
前言 开心一刻 某人养了一头猪,烦了想放生,可是猪认识回家的路,放生几次它都自己回来了.一日,这个人想了个狠办法,开车带着猪转了好多路进山区放生,放生后又各种打转,然后掏出电话给家里人打了个电话,问道:“猪回去了吗?”,家里人:“早回来了,你在哪了,怎么还没回来?”,他大怒道:“让它来接我,我特么迷路了!!!” 还不如我了 背景 某一天,楼主打完上班卡,坐在工位逛园子的时候,右下角的 QQ 闪了起来,而且还是个美女头像!我又惊又喜,脑中闪过我所认识的可能联系我的女性,得出个结论:她们这会不可能联…
在日常运维工作中,对mysql数据库的备份是万分重要的,以防在数据库表丢失或损坏情况出现,可以及时恢复数据. 下面对这种备份方案详细说明下:1.MySQLdump增量备份配置执行增量备份的前提条件是MySQL打开binlog日志功能,在my.cnf中加入log-bin=/opt/Data/MySQL-bin“log-bin=”后的字符串为日志记载目录,一般建议放在不同于MySQL数据目录的磁盘上. mysqldump >       导出数据 mysql <           导入数据  (…
前提 ​ 在互联网项目中最终还是读数据进行操作,都离不开曾删改查,那么数据是重中之重,数据库的备份就显得格外重要. ​ 但是每次都直接导出整个数据库的sql文件,显然是不现实的.对数据库的性能影响比较大. ## mysql备份的三种方式 热备 : 不关闭mysql服务的情况下,请求可以继续操作数据库,实现备份 温备 : 不关闭mysql服务的情况下,支持读,不支持写,实现备份 冷备 : 关闭mysql服务的情况下,实现备份 备份的类型 * 全量备份 : 一次性备份整个数据库的数据结构为sql文件…
慢日志的性能问题 造成 I/O 和 CPU 资源消耗:慢日志通常会扫描大量非目的的数据,自然就会造成 I/O 和 CPU 的资源消耗,影响到其他业务的正常使用,有可能因为单个慢 SQL 就能拖慢整个数据库的性能,而且这种慢 SQL,在实际业务场景下,通常都是程序发起数个 SQL 请求,通过 SHOW PROCESSLIST 命令可以捕捉到同时有 N 个类似的 SQL 请求在执行. 锁等待消耗:由于慢 SQL(select 查询)会阻塞 MDL 锁的获取,所以针对 XtraBackup 全量备份和…
Oracle补全日志(Supplemental logging)特性因其作用的不同可分为以下几种:最小(Minimal),支持所有字段(all),支持主键(primary key),支持唯一键(unique),支持外键(foreign key).包括LONG,LOB,LONG RAW及集合等字段类型均无法利用补全日志.最小(Minimal)补全日志开启后可以使得logmnr工具支持链式行,簇表和索引组织表.可以通过以下SQL检查最小补全日志是否已经开启:SELECT supplemental_l…
二进制日志:记录数据库修改的相关操作,作用是即时点回复,主从复制 可以按时间滚动,也可以按大小滚动 server-id:服务器身份标识 一.二进制文件的删除方法,千万不要手动删除 PURGE BINARY LOGS TO 'mysql-bin.010'; PURGE BINARY LOGS BEFORE '2008-04-02 22:46:26'; 二.常用的操作: SHOW MASTER STATUS; FLUSH LOGS; SHOW BINARY LOGS; SHOW BINLOG EVE…
mysql的日志文件 日志文件大致分为  error log, binary log, query log, slow query log, innodb redo log ;如图: 1.error log the error log file contains information indicating when mysqld was started and stopped also any critical errors that occur while the server is run…
php mysql数据库常用cmd命令集 show databases; 显示数据库 create database name; 创建数据库 use databasename; 选择数据库 drop database name 直接删除数据库,不提醒 show tables; 显示表 describe tablename; 显示具体的表结构 select 中加上distinct去除重复字段 mysqladmin drop databasename 删除数据库前,有提示. 显示当前mysql版本和…
二进制日志简单介绍 MySQL的二进制日志(binary log)是一个二进制文件,主要用于记录修改数据或有可能引起数据变更的MySQL语句.二进制日志(binary log)中记录了对MySQL数据库执行更改的所有操作,并且记录了语句发生时间.执行时长.操作数据等其它额外信息,但是它不记录SELECT.SHOW等那些不修改数据的SQL语句.二进制日志(binary log)主要用于数据库恢复和主从复制,以及审计(audit)操作. 官方文档关于二进制日志(binary log)的介绍如下: T…
简介 文中内容均为阅读前辈的文章所整理而来,参考文章已在最后全指明 本文分为上下两篇: 上篇:MySQL 的 SQL 执行时间分析 下篇:MySQL 性能优化 后端开发必然会接触到数据库,数据层的优劣会影响整个服务的响应时间.所以,数据库的优化技巧是必须掌握的,下面就是我在学习过程中整理的,备忘. SQL 执行时间分析 通过找到执行时间长的 SQL 语句,可以直观的发现数据层的效率问题. 1.通过 show processlist 来查看系统的执行情况 mysql> show processli…
一. mysql错误日志:错误日志记录的事件:a).服务器启动关闭过程中的信息b).服务器运行过程中的错误信息c).事件调试器运行一个事件时间生的信息d).在从服务器上启动从服务器进程时产生的信息log_error参数指定错误日志存放路径以及文件名.如果不指定文件,默认文件名是[host_name].err,保存路径为%datadir%.mysql> system hostnamemysqlmysql> show variables like '%datadir%';+------------…
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary { display: block } audio,canvas,progress,video { display: inline-block; vertical-align: baseline } audio:not([co…
本文由  网易云发布. MySQL慢日志(slow log)是MySQL DBA及其他开发.运维人员需经常关注的一类信息.使用慢日志可找出执行时间较长或未走索引等SQL语句,为进行系统调优提供依据.本文结合线上案例分析如何正确设置MySQL慢日志参数和使用慢日志功能,并介绍网易云RDS对MySQL慢日志功能增强. MySQL参数组功能 网易云RDS实例提供了参数组管理功能,可通过参数管理界面查看绝大部分常用的MySQL系统参数,用户可以了解当前运行值和建议值,如下所示: 用户还可通过参数管理页面…
ELK 介绍 ELK 最早是 Elasticsearch(以下简称ES).Logstash.Kibana 三款开源软件的简称,三款软件后来被同一公司收购,并加入了Xpark.Beats等组件,改名为Elastic Stack,成为现在最流行的开源日志解决方案,虽然有了新名字但大家依然喜欢叫她ELK,现在所说的ELK就指的是基于这些开源软件构建的日志系统. 我们收集mysql慢日志的方案如下: mysql 服务器安装 Filebeat 作为 agent 收集 slowLog Filebeat 读取…
简介 文中内容均为阅读前辈的文章所整理而来,参考文章已在最后全指明 本文分为上下两篇: 上篇:MySQL 的 SQL 执行分析 下篇:MySQL 性能优化 后端开发必然会接触到数据库,数据层的优劣会影响整个服务的响应时间.所以,数据库的优化技巧是必须掌握的,下面就是我在学习过程中整理的,备忘. 下面为上篇内容,分为以下部分: 一.SQL 执行时间分析 二.SQL 执行情况分析 一.SQL 执行时间分析 通过找到执行时间长的 SQL 语句,可以直观的发现数据层的效率问题. 1.通过 show pr…
日志文件:6类       一般查询日志:log,general_log,log_output       慢查询日志:       错误日志       二进制日志       中继日志       事务日志 二进制日志:      记录了当前服务器的数据修改和有潜在可能性影响数据修改的语句      默认在数据目录下,通常情况下为mysql-bin      可以通过mysqlbinlog来查看      时间记录 time      偏移位置 position      show mast…
Mysql添加一个新的用户并赋予权限 添加一个自己的用户到mysql 首先我们需要先用root用户登录mysql,但是刚安装完没有密码,我们先跳过密码 ailumiyana@ailumiyana:~/Git_Project/Go_Test$ sudo mysqld_safe --skip-grant-tables 2019-01-07T01:35:51.559420Z mysqld_safe Logging to syslog. 2019-01-07T01:35:51.563797Z mysql…
默认情况下,如果日志没有配置,则只记录错误日志,记录到syslog,配置文件 /etc/mysql/conf.d/mysqld_safe_syslog.cnf (ubuntu下) [mysqld_safe] syslog 移除 /etc/mysql/conf.d/mysqld_safe_syslog.cnf ,然后在 /etc/mysql/my.cnf 添加相关配置 MySQL有多种类型的日志:Error Log.General Query Log.Binary Log .Slow Query…
文章转自:http://www.ywnds.com/?p=3721 MySQL各类日志文件相关变量介绍 查询所有日志的变量   1 mysql> show global variables like '%log%'; GLOBAL表示查全局系统变量的状态值(大概有61变量左右). 一.错误日志 log_error=/var/log/mysqld.log 错误日志的存放位置,MySQL 5.5在数据目录下,MySQL 5.6在/var/log/mysql.log文件 log_warnings=1…
转. Oracle补全日志(Supplemental logging)特性因其作用的不同可分为以下几种:最小(Minimal),支持所有字段(all),支持主键(primary key),支持唯一键(unique),支持外键(foreign key).包括LONG,LOB,LONG RAW及集合等字段类型均无法利用补全日志. 最小(Minimal)补全日志开启后可以使得logmnr工具支持链式行,簇表和索引组织表.可以通过以下SQL检查最小补全日志是否已经开启: SELECT supplemen…
上篇文章<中小团队快速构建SQL自动审核系统>我们完成了SQL的自动审核与执行,不仅提高了效率还受到了同事的肯定,心里美滋滋.但关于慢查询的收集及处理也耗费了我们太多的时间和精力,如何在这一块也能提升效率呢?且看本文讲解如何利用ELK做慢日志收集 ELK介绍 ELK最早是Elasticsearch(以下简称ES).Logstash.Kibana三款开源软件的简称,三款软件后来被同一公司收购,并加入了Xpark.Beats等组件,改名为Elastic Stack,成为现在最流行的开源日志解决方案…