Mysql 删除从数据库的relay logs最佳方式、最安全方式
2018-01-05 11:46
148 查看
删除Mysql 从数据库的relay logs最安全方式
情景
MySQL数据库主从复制在默认情况下从库的relay logs会在SQL线程执行完毕后被自动删除。但是:在relay_log_purge = 0和MHA集群下,不会被自动删除,需要手动删除。如何安全的删除relay logs就比较关键了!主要有两种方式:
方式一:
通过MHA中自带的工具 purge_relay_logs 工具来删除。步骤:
创建工作目录
目的为了提高性能,这个工作目录必须跟mysql在同一个磁盘分区
mkdir -p /data/mha_tmp
purge relay logs
/usr/bin/purge_relay_logs --user=USERNAME --password=PASSWORD --host=Mysql_IP --disable_relay_log_purge --workdir=/data/mha_tmp 2>&1
加入到crontab中
0 4 * * * /usr/bin/purge_relay_logs --user=USERNAME --password=PASSWORD --host=Mysql_IP --disable_relay_log_purge --workdir=/data/mha_tmp 2>&1
说明:
–disable_relay_log_purge:自动设置”relay_log_purge = 1“
方式二:
手动删除 relay log1. 设置relay_log_purge = 1
SET GLOBAL relay_log_purge = 1
2. flush logs
通过管理员用户登陆从数据库,然后执行下面命令:flush logs;
可以执行多次!
注意:
观察堆积的relay logs日志是否已经删除,如果删除,直接执行下面第6步“恢复relay_log_purge = 0“;如果未删除,继续从下面第3步”停止slave“往下操作!!!
3. 停止slave
通过管理员用户登陆从数据库,然后执行下面命令:stop slave;
4. 删除relay logs
可以通过rm直接删除relay logs通使用下面方式安全删除:
(1) 统计所有关于relay的文件(包括 relay_log_name.index)总个数
ls -A1 |grep relay | sort -rn | wc -l
(2) 列出要删除所有有关relay的文件:
ls -A1 |grep relay | sort -rn | tail -n 100
说明: 100 为要删除的relay logs 数量
(3) 确定没有问题,删除relay logs:
ls -A1 |grep relay | sort -rn | tail -n 100 | xargs rm -rf {}
注意:
要保留最新的两个relay log
要保留relay log的index文件
relay log的index一般命名为: relay_log_name.index
例如: relay-bin.index
5. 启动slave
通过管理员用户登陆从数据库,然后执行下面命令:start slave;
6 . 恢复relay_log_purge = 0
通过管理员用户登陆从数据库,然后执行下面命令:SET GLOBAL relay_log_purge=0;
扩展
如果你对从数据库要求不高,可以将relay_log_purge = 1相关文章推荐
- mysql删除数据库中的所有表
- MySql 5.7中添加用户,新建数据库,用户授权,删除用户,修改密码
- mysql通过拷贝数据文件的方式进行数据库迁移
- mysql 在B数据库下 创建一个与A数据库中一样的表和删除表和修改列的信息
- mysql创建数据库,创建数据库表导入xlsx、txt文本,查询、删除、插入数据语句的使用
- MySQL 删除数据库
- PHP使用数据库永久连接方式(mysql_pconnect)操作MySQL的是与非
- MySQL —— 数据库,数据表的创建,修改,删除
- linux(ubuntu 14.04)安装,删除mysql,更改数据库路径(datadir)和帐户密码
- 如何在mysql中删除某个数据库中的所有的表
- 数据库优化之mysql系统的优化方式
- MySQL 数据库设计之各种 INTEGER 类型最佳实践
- 安装Mysql 数据库 5.7 server(和以往的版本配置方式有所不同) 直接看一篇靠谱的文档
- Mysql 登陆&退出、创建&删除&选择数据库、基本数据类型、创建&删除表格
- MySQL删除数据库的两种方法
- centos LAMP第一部分-环境搭建 Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课
- MySQL性能优化、故障排查及最佳实践秘籍,阿里云数据库专家玄惭的“武功”全记录
- PHP使用数据库永久连接方式操作MySQL的是与非
- mysql自动定时备份数据库的最佳方法-支持windows系统
- VBS连接数据库—oracle mysql的连接方式,测试可用