ZABBIX-监控系统:

------------------------------------报警内容: Free disk space is less than 20% on volume /

------------------------------------报警级别: PROBLEM

------------------------------------监控项目: Free disk space on / (percentage):1.94 %

------------------------------------报警时间:2016.02.23-11:01:07

好家伙,这个分区竟然是直接使用了根目录的空间,所以空间更是紧张了。

这个时候就需要调整数据的目录地址了。想想也就是调整datadir的地址即可。

首先是调整数据的目录地址,修改/etc/my.cnf,然后停库,因为空间的问题,最后没有剩余空间了,结果从库的应用直接hang住了,所以直接停库的时候等了一些时间。

# /etc/init.d/mysql stop

Shutting down MySQL (Percona Server)....................... SUCCESS!

启库的时候报了下面的错误。

# /etc/init.d/mysql start

Starting MySQL (Percona Server)..... ERROR! The server quit without updating PID file (/U01/app/mysql_3306/mysql.pid).

经过一番排查,发现原来是文件的目录权限的问题。

修复之后继续启动,还是同样的报错。

一时没有思路,就测试了一下,把文件目录改回了原来的路径,修改/etc/my.cnf里面的路径,再次启库,这个时候从库开始接受应用日志,过期的binlog都做了一些删除。和追库追平之后,再次停库就很快了。

# /etc/init.d/mysql stop

Shutting down MySQL (Percona Server)... SUCCESS!

但是迁移文件之后,修改/etc/my.cnf之后再次启库就还是同样的问题了。

[root@shadoop app]# /etc/init.d/mysql start

Starting MySQL (Percona Server)..... ERROR! The server quit without updating PID file (/U01/app/mysql_3306/mysql.pid).

查看error.log发现了下面的这一段内容,和之前一样,不过有了新的发现。

160223 11:59:38 mysqld_safe mysqld from pid file /U01/app/mysql_3306/mysql.pid ended

160223 11:59:56 mysqld_safe Starting mysqld daemon with databases from /U01/app/mysql_3306

2016-02-23 11:59:56 21600 [Note] Plugin 'FEDERATED' is disabled.

2016-02-23 11:59:56 21600 [Note] InnoDB: The InnoDB memory heap is disabled

2016-02-23 11:59:56 21600 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins

2016-02-23 11:59:56 21600 [Note] InnoDB: Compressed tables use zlib 1.2.3

2016-02-23 11:59:56 21600 [Note] InnoDB: Using Linux native AIO

2016-02-23 11:59:56 21600 [Note] InnoDB: Using CPU crc32 instructions

2016-02-23 11:59:56 21600 [Note] InnoDB: Initializing buffer pool, size = 4.0G

2016-02-23 11:59:57 21600 [Note] InnoDB: Completed initialization of buffer pool

2016-02-23 11:59:57 21600 [Note] InnoDB: Highest supported file format is Barracuda.

2016-02-23 11:59:57 21600 [Note] InnoDB: 128 rollback segment(s) are active.

2016-02-23 11:59:57 21600 [Note] InnoDB: Waiting for purge to start

2016-02-23 11:59:57 21600 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.14-rel62.0 started; log sequence number 278581

8494

2016-02-23 11:59:57 7ffa261f0700 InnoDB: Loading buffer pool(s) from .//ib_buffer_pool

^G/usr/sbin/mysqld: File '/home/mysql_3306/mysql-bin.000006' not found (Errcode: 2 - No such file or directory)

2016-02-23 11:59:57 21600 [ERROR] Failed to open log (file '/home/mysql_3306/mysql-bin.000006', errno 2)

2016-02-23 11:59:57 21600 [ERROR] Could not open log file

2016-02-23 11:59:57 21600 [ERROR] Can't init tc log

2016-02-23 11:59:57 21600 [ERROR] Aborting

就是mysql会尝试去找一个binlog /home/mysql_3306/mysql-bin.000006这部分的信息在哪里呢。

# less relay-index.index

/home/mysql_3306/mysql-relay.000008

/home/mysql_3306/mysql-relay.000009

/U01/app/mysql_3306/mysql-relay.000010

/U01/app/mysql_3306/mysql-relay.000011

带着新鲜劲,手工修改了一下这个文件,看看能不能生效。

修改为:

# vi relay-index.index

/U01/app/mysql_3306/mysql-relay.000008

/U01/app/mysql_3306/mysql-relay.000009

/U01/app/mysql_3306/mysql-relay.000010

/U01/app/mysql_3306/mysql-relay.000011

然后尝试change master让它基于最新的时间点重新同步。

> change master to master_host='10.127.0.xx',master_port =3306,master_user='repl',master_password='slaveuser',master_auto_position=1;

Query OK, 0 rows affected, 2 warnings (0.00 sec)

启动slave的时候就报了下面的错误。

> start slave;

ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository

重启之后,继续尝试start slave,发现错误依旧。

这个时候的方法只有reset slave了。

> start slave;

ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository

> reset slave;

Query OK, 0 rows affected (0.00 sec)

> change master to master_host='10.127.0.xx',master_port =3306,master_user='repl',master_password='slaveuser',master_auto_position=1;

Query OK, 0 rows affected, 2 warnings (0.04 sec)

> start slave;

Query OK, 0 rows affected (0.01 sec)

再次查看slave已经和主库的日志追平了。

> show slave status\G

***************************

Replicate_Ignore_Server_Ids:

Master_Server_Id: 200

Master_UUID: 170281bc-1957-11e4-ad6e-842b2b4841e9

Master_Info_File: /U01/app/mysql_3306/master.info

SQL_Delay: 0

SQL_Remaining_Delay: NULL

Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it

Master_Retry_Count: 86400

reset slave会使得slave忘记主从复制关系的位置信息。该语句会删除master.info文件和relay-log.info 文件以及所有的relay log 文件并重新启用一个新的relaylog文件。

使用reset slave之前必须使用stop slave 命令将复制进程停止,所有的relay log将被删除不管他们是否被SQL thread进程完全应用。

不过如果延迟不大,这些都不是事。毕竟这个问题解决了总比隔三差五收到报警手工处理要好很多。

mysql 07001_MySQL迁移文件的小问题相关推荐

  1. mysql导入ibdata文件_MySQL ibdata1文件迁移

    目的:主机系统/var目录快满了,经查询最大的文件是mysql的ibdata1文件,有17G大小,故需要迁移这个文件到其他目录下,以释放/var目录空间. 1.先备份下数据库是个好习惯 # mysql ...

  2. MySql的数据文件迁移

    最近在windows服务器上安装了一个mysql,发现数据文件只能装在c盘,我那可怜的c盘只有50G,数据库放上去,估计以后系统就别想跑了,所以需要把mysql的数据放在D盘.但是在网上找了一圈中文资 ...

  3. MySQL数据库配置data文件_MySQL数据库之MySQL数据库迁移data文件夹位置详细步骤

    本文主要向大家介绍了MySQL数据库之MySQL数据库迁移data文件夹位置详细步骤 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 由于yum安装mysql的时候,数据库的da ...

  4. 关于laravel 框架运行数据库迁移文件的一个小坑以及常用php artisan命令

    小白我因为最近开发的一系列项目都是用的laravel框架,所以为了方便有时候就会直接复制一份代码以此作为新项目的基础.可能因为"因为夜路走多了,所以掉坑里了">>> ...

  5. 删除MySql表中的大量记录后,文件不变小的解决方法

    前两天升级系统,重启系统后,由于没有自动mount共享资源,造成bacula警告日志飞快增长.mysql的Log.*文件超过了11GB,表的行数超过了4000万行:( 于是命令行下删除了99%的日志. ...

  6. mysql 删除数据后myd_Windows下的MySQL删除data文件夹后……

    MySQL删除data文件夹后,怎么都无法启动了,出现错误: 150106 9:28:43 [Note] Plugin 'FEDERATED' is disabled. wampmysqld: Tab ...

  7. python做mysql数据迁移_Python中MySQL数据迁移到MongoDB脚本的方法

    MongoDB简介 MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库 ...

  8. 不同场景下MySQL的迁移方案

    文章目录 不同场景下MySQL的迁移方案 一 .为什么要迁移 生产环境中,有以下情况需要做迁移工作,如下: 二.MySQL 迁移方案概览 三.MySQL 迁移实战 3.1. 场景一:一主一从结构迁移从 ...

  9. mysql 数据迁移_MySQL海量数据迁移

    数据库迁移 本主前一段时间写毕业设计主要使用MySQL,紧锣密鼓的开发了将近一个多月,项目数据层.接口层.数据采集层已经开发完成,算法还在不断的优化提速,由于请了几位大佬帮我做Code Review, ...

  10. mysql从data文件夹恢复数据

    此文操作的前提: mysql的data文件夹里的数据未丢失 本次操作在Mac上操作, linux一样, wins未尝试过, 应该差不多 第一步: 备份data文件夹 做好备份是数据操作的前提; 第二步 ...

最新文章

  1. 2009年上半年网络工程师考试下午试卷参考答案(一)
  2. 智能车竞赛云上比赛第二天
  3. python文本分类特征选择_文本挖掘之特征选择(python 实现)
  4. 回顾2018——区块链行业十大关键词
  5. [Alpha阶段]第六次Scrum Meeting
  6. session的removeattribute移除一个不存在的属性会怎么用_公认峡谷机制最完美,对线几乎无解,夏侯惇高端局为何火不起来?...
  7. oracle转换指定类型,PL/SQL 类型格式转换
  8. python 十六进制打印编码
  9. 【OpenCV 例程 300 篇】101. 自适应中值滤波器
  10. win7映射网络驱动器消失了_win7系统映射网络驱动器出现问题的解决方法
  11. 无法启动 因为计算机丢失msvcp71,Win7丢失msvcp71.dll文件程序无法启动怎么办?
  12. easyUI filebox限定文件大小
  13. Oracle DB audit
  14. Ansheng的SRE学习之路-linux基础篇
  15. 人工解决问题和用计算机解决问题的相同点,第2学时:计算机解决问题的过程_20120207110033703.doc...
  16. 云电脑是否可以玩挂机网游
  17. Python程序员面试,这些问题你必须提前准备!
  18. 3d打印英语文献_多材料的增材制造(3D打印)
  19. BCK生态链第一条价值共识侧链CK正式上线
  20. 基于dwr2.0的Push推送技术详细解析以及实例

热门文章

  1. ipython tesseract_python使用Tesseract库识别验证
  2. linux 快速合并文本文件,Linux-Linux中高效合并文本文件的方法
  3. js打印插件_使用 Nodejs 开发一个 commitlint-release 插件
  4. java arraylist 字符串数组_java中String,数组,ArrayList三者之间的转换
  5. NYOJ 643 发短信(模拟)
  6. python cprofile_Python Profilers 分析器
  7. ai快捷键常用表_掌握这些AI常用快捷键和小技巧,提高速度
  8. 求两个整数最大公约数
  9. Python降低XGBoost 过度拟合多种方法
  10. 风控中英文术语手册(银行_消费金融信贷业务)_v3