mysql优化 - mysql 主从复制 Slave_IO_Running 进程为no ?
天蓬老师
天蓬老师 2017-04-17 13:16:19
0
2
529

主从复制失败,发现Slave_IO_Running这个进程一直是NO

查看错误日志,得到信息是slave用户无法连接到master服务器上

 position 98, relay log './mysqld-relay-bin.000001' position: 4
150921  4:11:08 [ERROR] Slave I/O thread: error connecting to master 'repl@192.168.126.132:3306': Error: 'Host '192.168.126.132' is not allowed to connect to this MySQL server'  errno: 1130  retry-time: 60  retries: 86400
150921  5:06:57 [Note] Slave I/O thread killed while connecting to master
150921  5:06:57 [Note] Slave I/O thread exiting, read up to log 'binlog_name.000001', position 98
150921  5:06:57 [Note] Error reading relay log event: slave SQL thread was killed

但是我在slave主机,可以直接使用repl用户连接到master服务器上查询相关的表,为什么说我不允许连接这个机器呢?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回覆(2)
伊谢尔伦

我後來解決了

1.應該在slave機器上使用change master to 寫上 master機器的ip,我卻寫了slave自己的ip位址

2.當我修改完ip後,發現報一個The slave I/O thread stops because master and slave have equal MySQL server ids(slave和master使用了公共的一個server-id號)

查詢了一下my.cnf文件,發現原來預設已經分配了relication的server-id號

# Replication Master Server (default)
# binary logging is required for replication
# log-bin=mysql-bin 

# required unique id between 1 and 2^32 - 1
# defaults to 1 if master-host is not set
# but will not function as a master if omitted
server-id       = 2 

而這個預設的server_id號,把我上面的server_id號給覆蓋了,導致了兩個server_id號相同了

黄舟

可能在master上'binlog_name.000001', position 98,如果是以為檔案被截斷了或刪除了,這樣可以透過change master to 裡面的master_log_file和master_log_pos來設定到下一個binlog的位置

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!