pt-query-digest 慢查询日志分析
Write by lyc at 2018-12-27MySQL慢查询分析工具pt-query-digest详解
一、分析slow_log直接输入慢查询日志,并以文件形式输出。
12345# 分析整份慢查询日志$ pt-query-digest slow_log_3306.log > 3306_slow_report.log# 分析某个时间段$ pt-query-digest --since "2019-12-09 12:00:00" --until "2019-12-09 23:59:59" 20191209_xxx.xxx.50.244_3306_slowlog.log > /data/slave4.log
二、报告解析第一部分:总体统计结果12345678910111213141516171819202122232425 1 2 # A software update is available: 3该工具分析本日志分析的: 用户时间 系统时间 占用物理内存 占用虚拟内存 4 ...
mysqldump逻辑备份与恢复
Write by lyc at 2018-12-20Modify by lyc at 2019-12-19
一、mysqldump逻辑备份1.mysqldump 原理12345678910111213141. flush tables # 刷新内存中的数据到磁盘2. flush table with read lock # 锁库3. Set session transaction isolation level repeatable read; # 设置事务4. start transaction # 开始一个事务,用于备份时还原到同一时刻的位置点5. show master status; # 记录这个时刻的binlog位置点6. unlock tables; # 解锁7. show create database wubx; # 备份库8. savepoint sp # 事务的位置点9. show create table wbx10. select * from wubx11. ...
Redis 过期策略
Write by lyc at 2018-12-20Redis内存满了的几种解决方法关于Redis数据过期策略为什么Redis内存不宜过大
一、Redis三种过期键删除策略
被动删除:当读/写一个已经过期的key时,会触发惰性删除策略,直接删除掉这个过期key
主动删除:由于惰性删除策略无法保证冷数据被及时删掉,所以Redis会定期主动淘汰一批已过期的key
maxmemory限制: 当前已用内存超过 maxmemory 限定时,触发主动清理策略 maxmemory-policy
二、被动删除1.被动删除介绍被动删除的条件:
key设置了过期时间
2.key过期了
3.key有被访问到
这种删除策略对CPU是友好的,删除操作只有在不得不的情况下才会进行,不会其他的expire key上浪费无谓的CPU时间。
但是这种策略对内存不友好,一个key已经过期,但是在它被操作之前不会被删除,仍然占据内存空间。如果有大量的过期键存在但是又很少被访问到,那会造成大量的内存空间浪费。
2.被动删除的缺点可能存在一些key永远不会被再次访问到,这些设置了过期时间的key也是需要在过期后被删除 ...
xtrabackup全量备份与恢复
Write by lyc at 2018-12-04XtraBackup 官网XtraBackup 官网下载
1. xtrabackup 安装xtrabackup 安装12yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm -yyum install percona-xtrabackup-24 -y
xtrabackup 常用参数
xtrabackup命令参数详解
基础参数:
--defaults-file 指定mysql的配置文件,该参数要放在第一个参数的位置。my.cnf 不要放在数据目录下,一般放在 /data 下,copy-back 以后再 mv到数据目录下
--user=USER 指定备份用户,不指定的话为当前系统用户
--password=PASSWD 指定备份用户密码
--port=PORT 指定数据库端口
--socket 指定连接到本地数据库sever时使 ...
Percona Monitoring Plugins for Zabbix
Write by lyc at 2018-12-4
一、Percona Monitoring Plugins for Zabbix监控MySQL单实例
分布式监控系统Zabbix–完整安装记录(7)-使用percona监控MySQL
1.安装 Percona Monitoring Plugins安装依赖、创建 zabbix@localhost 或 zabbix@127.0.0.1 监控用户。
1234567# 安装依赖$ yum install -y php php-mysql# 在 mysql master配置zabbix监控账户mysql > GRANT SELECT, PROCESS, SUPER, REPLICATION CLIENT ON *.* TO 'zabbix'@'localhost' identified by 'fVQ0BFAP4CWAo1HO23EmJVLV';mysql > GRANT SELECT, PROCESS, SUPER, REPLICATION CLIENT ON *.* ...
xtrabackup增量备份与恢复(file+pos)
一、xtrabackup增量备份1.增量备份过程
每次增量备份都会生成一个以时间命名的备份目录,用以存放所有增量备份的数据。
第1次增量备份--incremental-basedir=要指向上一次完全备份的路径,而后每一次增量备份--incremental-basedir=都要指向上一次增量的备份。
增量备份目录中的“xtrabackup_checkpoints”文件backup_type = incremental表示当前备份的类型。
增量备份仅能应用于InnoDB或XtraDB表,对于MyISAM表而言,执行增量备份实际上进行的是完全备份。
2.第1次增量备份123456innobackupex --defaults-file=/data/mysql_data_3306/my.cnf --user=mysqlbackup --password=76qbg20WV7dk3KUE --incremental /backup/mysql/ --incremental-basedir=/backup/mysql/2018-06-11_07-56-10/# 参数说明--defaults-f ...
Redis zabbix自动发现监控redis多实例
Write by lyc at 2018-12-03zabbix_version:3.0.22
1.zabbix 控制台上传监控模板zbx_export_templates_redis.xml 下载模板
1$ get https://res.lyc7456.com/zbx_export_templates_redis.xml
2.zabbix-agent 配置文件123$ cat userparameter_redis.confUserParameter=redis_discovery[*],sudo /bin/sh /etc/zabbix/scripts/redis_discovery.sh $1UserParameter=redis_stats[*],sudo /bin/sh /etc/zabbix/scripts/redis_check.sh $1 $2
3.自动发现脚本:redis_discovery.sh1234567891011121314151617181920212223#!/bin/bash# Modify by lyc at 20 ...
zabbix-4.0.x RPM安装
Write by lyc at 2018-11-27zabbix 官网
zabbix-4.0 RPM安装1.yum安装zabbix4.0安装zabbix4.0 RPM源
12$ rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm$ yum clean all
安装zabbix-server
1$ yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent
zabbix-server-mysql zabbix server mysql版
zabbix-web-mysql php代码 mysql版
zabbix-agent zabbix-agent
2.配置mysql创建zabbix库和zabbix账号
123mysql > create database zabbix character set utf8 collate utf8_bin;m ...
pt-table-checksum 数据一致性校验
Write by lyc at 2018-11-22pt-table-checksum使用实践
pt-table-checksum
用于检测MySQL主、从库的数据是否一致。
最重要的一点就是:要在主库上授权,能让主库ip访问。这一点不能忘记!(实验证明从库上可以不授权,但最好还是从库也授权)注意:
根据测试,需要一个即能登录主库,也能登录从库的账号;
只能指定一个host,必须为主库的IP;
在检查时会向表加S锁;
运行之前需要从库的同步IO和SQL进程是YES状态。
1.添加授权用户1234# mastermysql > create user 'checksum'@'192.168.%.%';mysql > GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, PROCESS, SUPER, LOCK TABLES, REPLICATION SLAVE ON *.* TO 'checksum'@'192.168.%.%' IDENTIFIED ...
percona-toolkit 安装
Write by lyc at 2018-11-22percona-toolkit工具(数据一致性监测、延迟监控)
percona-toolkit 安装1.percona-toolkit组件percona-toolkit工具中最主要的三个组件分别是:
pt-table-checksum 负责监测mysql主从数据一致性
pt-table-sync 负责当主从数据不一致时修复数据,让它们保存数据的一致性
pt-heartbeat 负责监控mysql主从同步延迟
2.RPM在线安装
官网
123# CentOS6/7通用$ yum install http://www.percona.com/downloads/percona-release/redhat/0.1-6/percona-release-0.1-6.noarch.rpm -y$ yum install percona-toolkit -y
3.RPM手动安装
官网下载地址
因为yum安装的很慢,rpm手动安全需要解决依赖的问题。
CentOS6/7的rpm包是不一样的
安装依赖1$ yum install pe ...