linux mysql5.045复制从机器
在线mysql 复制主机重新启动(迁移环境)
复制从机 遇到奇怪复制错误
(复制主机的参数my.cnf 简单修改了,从他的binlog 看他的是正常的
-rw-rw---- 1 mysql mysql 1.1G Aug 14 22:15 mysql-bin.001048
-rw-rw---- 1 mysql mysql 1.1G Aug 15 17:40 mysql-bin.001049
-rw-rw---- 1 mysql mysql 1.1G Aug 16 05:34 mysql-bin.001050
-rw-rw---- 1 mysql mysql 1.1G Aug 16 20:43 mysql-bin.001051
-rw-rw---- 1 mysql mysql 746M Aug 17 06:44 mysql-bin.001052----------从这里开始重新启动 按道理正常应该1.1g大小
现在仅仅机器重新启动后为 746M
-rw-rw---- 1 mysql mysql 376M Aug 17 14:24 mysql-bin.001053
)我在从机器从err.log里 取 mysql-bin.001052的最后丢失position 连接 复制主机
但是从机器死活不能正常连接到主机器
总是
Slave_IO_Runnin yes
Slave_SQL_Running no结果类似下面错误
110817 8:34:13 [Note] Slave I/O thread: connected to master 'myuser@... 3306', replication started in log 'mysql-bin.00153' at position 280764
110817 8:34:13 [Note] Slave SQL thread exiting, replication stopped in log 'mysql-bin.00153' at position 646
110817 8:40:33 [Note] Slave I/O thread killed while reading event
按照 正常道理
replication stopped in log 'mysql-bin.00153' at position 646 这个 数值应该大于 at position 280764但从错误日志里 'mysql-bin.00153' at position 646 到底为什么(position 646)会小
而且我在 'mysql-bin.00153'死活找不到 646 这个position 这有400 800 (中间是没有646的 而且我是从position 280764开始change master的
而且 我从 280764后面找到一些insert 有主键的语句 发现后面有些sql实际 是在从机器已经执行的
这里从机器的错误positon 为什么是错误的。 该如何找到 正确的postion
) ?
在线mysql 复制主机重新启动(迁移环境)
复制从机 遇到奇怪复制错误
(复制主机的参数my.cnf 简单修改了,从他的binlog 看他的是正常的
-rw-rw---- 1 mysql mysql 1.1G Aug 14 22:15 mysql-bin.001048
-rw-rw---- 1 mysql mysql 1.1G Aug 15 17:40 mysql-bin.001049
-rw-rw---- 1 mysql mysql 1.1G Aug 16 05:34 mysql-bin.001050
-rw-rw---- 1 mysql mysql 1.1G Aug 16 20:43 mysql-bin.001051
-rw-rw---- 1 mysql mysql 746M Aug 17 06:44 mysql-bin.001052----------从这里开始重新启动 按道理正常应该1.1g大小
现在仅仅机器重新启动后为 746M
-rw-rw---- 1 mysql mysql 376M Aug 17 14:24 mysql-bin.001053
)我在从机器从err.log里 取 mysql-bin.001052的最后丢失position 连接 复制主机
但是从机器死活不能正常连接到主机器
总是
Slave_IO_Runnin yes
Slave_SQL_Running no结果类似下面错误
110817 8:34:13 [Note] Slave I/O thread: connected to master 'myuser@... 3306', replication started in log 'mysql-bin.00153' at position 280764
110817 8:34:13 [Note] Slave SQL thread exiting, replication stopped in log 'mysql-bin.00153' at position 646
110817 8:40:33 [Note] Slave I/O thread killed while reading event
按照 正常道理
replication stopped in log 'mysql-bin.00153' at position 646 这个 数值应该大于 at position 280764但从错误日志里 'mysql-bin.00153' at position 646 到底为什么(position 646)会小
而且我在 'mysql-bin.00153'死活找不到 646 这个position 这有400 800 (中间是没有646的 而且我是从position 280764开始change master的
而且 我从 280764后面找到一些insert 有主键的语句 发现后面有些sql实际 是在从机器已经执行的
这里从机器的错误positon 为什么是错误的。 该如何找到 正确的postion
) ?
解决方案 »
- 各位有没有主流数据库性能比较图呀
- 这两条sql条件执行在join前还是join后
- 如何解决:mysql-gui-tools-5[1].0-r9a-win32不支持中文件的问题?
- mysql的mysql_real_escape_string在存储过程里有相同功能的函数吗?
- 关于My SQL存储过程的问题,创建不了存储过程啊!!!急
- MYSQL使用不了TOP是吗?
- 如何在数据库中找到外键为NULL的纪录?要不存在NULL外键的表也行
- 我的mysql数据库怎么突然起动不了了?
- 关于mysqldump的问题,(与数据库的版本有关)
- 问一个select语句
- SET GLOBAL log_bin_trust_function_creators = 1 如何在my.cnf里面配置?
- MYSQL事件为什么会这样?
110817 8:34:13 [Note] Slave SQL thread exiting, replication stopped in log 'mysql-bin.00153' at position 646
110817 8:40:33 [Note] Slave I/O thread killed while reading event
replication stopped in log 'mysql-bin.00153' at position 646 这个 数值应该大于 at position 280764但从错误日志里 'mysql-bin.00153' at position 646 到底为什么(position 646)会小
如果主服务器没有sync_binlog 配置 主服务器 他可能 不会 在崩溃前把二进制日志事件写入磁盘。
从服务器io线程 因此也会处于读取永远不会到达磁盘的事件(上面问题比这个简单)的过程中。当主服务器重新启动,从服务器会重新俩连接并且再次读,但主服务器响应无法找到该事件。二进制日志转存过程通常是同时,这个ofen见到。
解决是从下一个日志开始读取。如果设置 sync-binlog可以防止日志事件丢失