我有两个mysql服务器之间的复制设置,一个是主服务器,另一个是从服务器。
这是很好的工作,除非主人是重新启动的任何原因。当它恢复时,奴隶就不连接了。在这个奴隶上,我做了一个起始奴隶,然后它失败了
090922 17:49:59 错误未能打开中继日志‘/var/run/mysqld/mysqld/mysqld-中继-bin.000009’(relay_log_pos 67391580) 090922 17:49:59 错误在中继日志初始化期间找不到目标日志
我被迫从主程序中获取所有数据,并将其加载回奴隶中,然后重新启动。
我怎样才能避免这种情况发生,所以如果主程序重新启动,就不是重新执行所有数据库的任务。
以下是配置文件Red 5,mysql 5.0.45
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
old_passwords=1
server-id = 9180
slave_compressed_protocol=1
max_allowed_packet=16M
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid发布于 2009-09-23 02:28:19
听起来好像是因为某种原因重新启动主程序删除了二进制日志。MySQL本身不会这样做;它要么在某个时候接收命令RESET MASTER,要么在服务器启动时清除/var/run。
发布于 2009-09-23 01:15:48
当从服务器上的配置使用DNS名称连接到主服务器时,我曾见过这种情况。在我的例子中,解决方案是使用IP地址。
顺便说一句,当你说“我做了一个奴隶”时,你首先要阻止它,不是吗?
发布于 2009-10-16 19:20:40
我以前见过这个。不要将日志放在/var/run中。如果我没有记错,系统会自动删除此目录中的文件。尝试将您的绑定日志放到另一个目录,并查看您的错误是否再次出现。
https://serverfault.com/questions/67860
复制相似问题