首页
学习
活动
专区
圈层
工具
发布

MySQL慢日志占满磁盘空间导致业务主库宕机解决

我们知道数据库中有很多重要的日志,如错误日志error log、慢日志slow log、二进制日志binary log、查询日志general log等等其他日志,错误日志error log是我们分析问题参考的依据...通常我们在业务主库是开启慢日志功能并通过参数long_query_time这个参数来控制执行时间多长的SQL被记录进慢日志中,且对于执行时间超过1s的SQL就认为是慢SQL,这样的设定值,很多场合下不会记录太多的慢...[ERROR] /opt/app/mysql/bin/mysqld: Error writing file '/opt/app/mysql/tmp/mysqld.pid' (Errcode: 28 -...虽然我们的业务主库有MMM高可用架构,事实发现VIP确实是漂移到另一台master上,但仍然给我们的其他slave造成了复制同步错误的故障,更为严重的是影响到了我们的多源复制库的使用,内部人员使用和维护也带来很大的影响...[root@172-16-3-190 shells]# bash clean_mysql_slow_log.sh 1746208 5 [root@172-16-3-190 shells]# bash clean_mysql_slow_log.sh

1.5K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    linux系统MySQL主从同步--使用binlog日志方式

    (2)linux 系统的Mysql数据库(一个作为从数据库,注意:从数据库可以多个) ? 注意:同步的两个数据库版本一致,windows系统安装的MySql数据库命令有所不同。...2,配置Master(主数据库) 1,如果数据库正在运行,请先停止服务, 执行命令:service mysql stop 2,修改配置文件(my.cnf),安装路径不同,注意配置文件所在的位置...##当sync_binlog =N (N>0) ,MySQL 在每写 N次 二进制日志binary log时,会使用fdatasync()函数将它的写二进制日志binary log同步到磁盘中去, #...3,配置从Slave(从数据库) 1,如果数据库正在运行,请先停止服务, 执行命令:service mysql stop 2,修改配置文件(my.cnf),安装路径不同,注意配置文件所在的位置,windows...##当sync_binlog =N (N>0) ,MySQL 在每写 N次 二进制日志binary log时,会使用fdatasync()函数将它的写二进制日志binary log同步到磁盘中去, #

    2.1K30

    通过RMAN设置standby接收日志后主库归档日志才可删除

    但DG环境中因为某些原因导致主库事务没有即使传到standby,而这时如果主库的archivelog也被清理掉了,主备库就产生了日志GAP export  ORACLE_SID=abc export  ...crosscheck archivelog all; DELETE NOPROMPT ARCHIVELOG until time 'sysdate-7'; } exit; EOF 如何能够确保standby日志接收到了...,主库archivelog才会被删除呢?...一种情况standby正常开启,但MPR不开启应用redo,其实standby也能接收主库传递过来的archivelog但并没有被应用,这时主库的archivelog是可以被清理的 默认 CONFIGURE...主库切换生成新log,模拟gap SQL> alter system switch logfile; SQL> / 4.因为standby未接收到archivelog,对主库备份archivelog同时加了

    2.2K20

    Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步

    配置少,路径短,延迟也更容易控制。但在生产环境里,Oracle 实时同步的链路往往要 7x24 小时挂在生产库旁边。...主库继续处理业务写入,并按 DataGuard 机制传输 redo。备库接收 redo,生成并保留归档日志。...Oracle 备库可能配置多个本地归档目录,默认目录不一定包含同步任务需要的全部日志。如果同步工具只盯着一个目录,就可能在日志切换或归档策略调整后找不到日志。...对于备库配置了多套本地归档目录的环境,可以显式告诉任务从哪些位置读取日志,减少默认路径不匹配带来的风险。...目标端也可以换成 Elasticserach、PostgreSQL、Kafka、MySQL 等十几种 CloudCanal 支持的数据源。

    50210

    mysql主库更新后,从库都读到最新值了,主库还有可能读到旧值吗?

    binlog文件是mysql的server层日志,记录了用户对数据库有哪些变更操作,比如建数据库表加字段,对某些行的增删改等。 它的位置可以通过下面的查询语句看到。...如果两个mysql配置好了主从的关系,那么他们之间会建立一个tcp长连接,主要用于传输同步数据。 除此之外,主库还会再起一个binlog dump线程将binlog文件的变更发给从库。...从库在收到binlog后,会有一个io线程负责把收到的数据写入到relay log(中继日志)中。...mysql主从同步 到这里,我们可以开始回答文章开头的第一个问题。 主库更新后,主库都读到最新值了,从库还有可能读到旧值吗?...当更新一行数据后,立马去读主库,主库的数据肯定是最新值,这点没什么好说的,但如果此时主从延迟过大,这时候读从库,同步可能还没完成,因此读到的就是旧值。

    1K20

    【MySQL】Mysql 日志

    介绍 在任何一种数据库中,都会有各种各样的日志,记录着数据库工作的方方面面,以帮助数据库管理 员追踪数据库曾经发生过的各种事件。MySQL 也不例外。...日志分类  错误日志 二进制日志 查询日志 慢查询日志 错误日志 错误日志是 MySQL 中最重要的日志之一,它记录了当 mysqld 启动和停止时,以及服务器在运行 过程中发生任何严重错误时的相关信息...该日志是默认开启的 , 默认存放目录为 mysql 的数据目录, 默认的日志文件名为  hostname.err(hostname是主机名)。...此日志对于灾难时的数据恢复起着极其重要的作用,MySQL的主 从复制, 就是通过该binlog实现的。...二进制日志,MySQl8.0默认已经开启,低版本的MySQL的需 要通过配置文件开启,并配置MySQL日志的格式。

    4.9K20

    PostgreSQL 12 的同步流复制搭建及主库hang问题处理与分析

    PostgreSQL流复制,有两种方式,分别是异步流复制和同步流复制。...异步流复制模式中,当备库出现异常,主库可以正常的进行读写; 同步流复制模式中,当备库出现异常,主库则可能会hang住(DML、DDL)。...主库的postgresql.conf中: #同步流复制 synchronous_standby_names = 'standbydb1' #同步流复制才配置该值 synchronous_commit...但是始终无法改变备库的状态为同步流复制(也尝试多次设置synchronous_commit参数,但是只有当该参数为local的时候,主库才不会hang住)。...此时数据库在进行DML和DDL操作的时候,则会等待备库的响应,但备库又为异步流复制,所以不会给主库回复wal已经接收到或者写入磁盘。因此,主库会一直hang住。

    2.3K40

    MySQL 复制 - 性能与扩展性的基石 2:部署及其配置

    # 二进制日志路径 d) 重启 mysql 服务使配置生效 service mysql restart e) 启动容器 重启 mysql 服务时会使得 docker 容器停止,需要重启容器。...=/var/lib/mysql/mysql-bin # 二进制日志路径 relay_log=/path/to/logs/relay-bin # 中继日志路径 3) 关联 master 和 slave...包括从主库复制数据、从另外一台备库克隆数据,以及使用最近的一次备份来启动备库等。而这些方法都需要有三个条件来让主库与备库保持同步: 在某个时间点的主库的数据快照。...在主库上二进制日志最重要的选项是 sync_binlog: sync_binlog=1 如果开启该选项,MySQL 每次在提交事务前会将二进制日志同步到磁盘上,保证在服务器崩溃时不会丢失时间。...log_bin=/var/lib/mysql/mysql-bin 在备库上,同样开启如下培训,为中继日志指定绝对路径: relay_log=/path/to/logs/relay-bin skip_slave_start

    1K20

    MySQL 中主库跑太快,从库追不上怎么整?

    但是问题就来了,读从库时的数据要与主库保持一致,那就需要主库的数据在写入后同步到从库中。如何保持主库与从库的数据一致性,主库又是通过什么样的方式将数据实时同步到从库的?...基本原理 Mysql 中主从复制时有两个很重要的日志文件: binlog(二进制日志文件) relay log(中继日志文件) ?...在主从同步的过程中,主库会将所有的操作事件记录在 binlog 中,从库通过开启一个 I/O 线程保持与主库的通信,并在一定时间间隔内探测 binlog 日志文件是否发生改变。...主从延迟原因 上面的流程我们已经知道了主从复制的相关过程了,但是主库有更新就会同步从库,那为什么会出现主从延迟的情况呢?...随机重放 Mysql 主库中写 binlog 的操作是顺序写的,之前我们提到过,磁盘的顺序读写速度是很快的。同样的,从库中的 I/O 线程操作日志的速度效率也是很高的。

    1.8K31

    Mysql主库跑太快,从库追不上怎么做?

    但是问题就来了,读从库时的数据要与主库保持一致,那就需要主库的数据在写入后同步到从库中。如何保持主库与从库的数据一致性,主库又是通过什么样的方式将数据实时同步到从库的?...基本原理 Mysql主从复制时有两个很重要的日志文件 binlog (二进制日志文件) relay log (中继日志文件) ?...在主从同步的过程中,主库会将所有的操作事件记录在 binlog 中,从库通过开启一个 I/O 线程保持与主库的通信,并在一定时间间隔内探测 binlog 日志文件是否发生改变。...主从复制原因 上面的流程我们已经知道了主从复制的相关过程了,但是主库有更新就会同步从库,那为什么会出现主从延迟的情况呢?...随机重放 Mysql 主库中写 binlog 的操作是顺序写的,之前我们提到过,磁盘的顺序读写速度是很快的。同样的,从库中的 I/O 线程操作日志的速度效率也是很高的。

    1.5K50

    Mysql 中主库跑太快,从库追不上怎么整?

    但是问题就来了,读从库时的数据要与主库保持一致,那就需要主库的数据在写入后同步到从库中。如何保持主库与从库的数据一致性,主库又是通过什么样的方式将数据实时同步到从库的?...基本原理 Mysql 中主从复制时有两个很重要的日志文件: binlog(二进制日志文件) relay log(中继日志文件) 在主从同步的过程中,主库会将所有的操作事件记录在 binlog 中,从库通过开启一个...主从延迟原因 上面的流程我们已经知道了主从复制的相关过程了,但是主库有更新就会同步从库,那为什么会出现主从延迟的情况呢?...随机重放 Mysql 主库中写 binlog 的操作是顺序写的,之前我们提到过,磁盘的顺序读写速度是很快的。同样的,从库中的 I/O 线程操作日志的速度效率也是很高的。...主从延迟处理 MySQL 5.6版本以后通过并行复制的方式来解决 SQL 单线程产生的主从延迟问题。对于低版本来说,可以通过降低主库的并发来解决。

    1.6K30

    MySQL 中主库跑太快,从库追不上怎么整?

    但是问题就来了,读从库时的数据要与主库保持一致,那就需要主库的数据在写入后同步到从库中。如何保持主库与从库的数据一致性,主库又是通过什么样的方式将数据实时同步到从库的?...基本原理 Mysql 中主从复制时有两个很重要的日志文件: binlog(二进制日志文件) relay log(中继日志文件) ?...在主从同步的过程中,主库会将所有的操作事件记录在 binlog 中,从库通过开启一个 I/O 线程保持与主库的通信,并在一定时间间隔内探测 binlog 日志文件是否发生改变。...主从延迟原因 上面的流程我们已经知道了主从复制的相关过程了,但是主库有更新就会同步从库,那为什么会出现主从延迟的情况呢?...随机重放 Mysql 主库中写 binlog 的操作是顺序写的,之前我们提到过,磁盘的顺序读写速度是很快的。同样的,从库中的 I/O 线程操作日志的速度效率也是很高的。

    1.8K20

    mysql主从环境: 主库磁盘坏了(os error 5), 从库更是先一步不同步了(my-01595)

    导读某mysql双主(其实是mariadb 10.5)环境,但实际上只有一个节点写,我们记录主库为db-A,从库为db-B故我们当作主从来分析要简单点.问题: 发现数据库切换了, 还丢了部分数据(部分变更的数据找不到了...log write failure: could not queue event from master我们查询mysql源码(我手里就mysql源码, 这种报错都差不多的),发现报错逻辑为:我们根据主库的日志记录时间...如果主库能修复,那么我们只需要将从库的数据同步完主库即可切换过来.如果主库修复失败, 就只能忍受丢一部分数据了(没得备份.)重启OS后(环境特殊,未验证不重启是否可行),使用xfs_repaire -L...顺利"修复了"xfs文件系统, 再次重启后,主库正常, 待主库数据同步完之后, 即可切换到主库, 并重建从库.总结本次案例为: 主库磁盘问题导致切换, 但切换之前主从就已经不同步了,故切换后的库数据实际上是不完整的...; 但好在成功修复了主库, 并将从库产生的日志回放成功了; 之后重建从库后主从状态均正常.

    24920

    MySQL 日志

    # MySQL 日志 错误日志 二进制日志 介绍 格式 查看 删除 查询日志 慢查询日志 # 错误日志 错误日志是 MySQL 中最重要的日志之一,它记录了当 mysqld 启动和停止时,以及服务器在运行过程中发生任何严重错误时的相关信息...在MySQL8版本中,默认二进制日志是开启着的,涉及到的参数如下: show variables like '%log_bin%'; -rw-r----- 1 mysql mysql 523...# 格式 MySQL服务器中提供了多种格式来记录二进制日志,具体格式及特点如下: 日志格式 含义 STATEMENT 基于SQL语句的日志记录,记录的是SQL语句,对数据进行修改的SQL都会记录在日志文件中...:ss" 之前产生的所有日志 也可以在mysql的配置文件中配置二进制日志的过期时间,设置了之后,二进制日志过期会自动删除。..., 如果没有指定, 默认的文件名为 host_name.log general_log_file=mysql_query.log 开启了查询日志之后,在MySQL的数据存放目录,也就是 /var/lib

    2.5K20
    领券