![mySQL:从属服务器无法连接到主服务器进行复制](https://linux22.com/image/801152/mySQL%EF%BC%9A%E4%BB%8E%E5%B1%9E%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%97%A0%E6%B3%95%E8%BF%9E%E6%8E%A5%E5%88%B0%E4%B8%BB%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%BF%9B%E8%A1%8C%E5%A4%8D%E5%88%B6.png)
在我的主人身上,我做了:
GRANT REPLICATION SLAVE ON *.* TO 'repluser'@'%' IDENTIFIED BY 'mypassword';
在我的奴隶身上,我看到:
mysql> show slave status \G;
*************************** 1. row ***************************
Slave_IO_State: Connecting to master
Master_Host: 12.34.56.78
Master_User: repluser
Master_Port: 6666
Connect_Retry: 60
Master_Log_File:
Read_Master_Log_Pos: 4
Relay_Log_File: mysqld-relay-bin.000002
Relay_Log_Pos: 4
Relay_Master_Log_File:
Slave_IO_Running: Connecting
Slave_SQL_Running: Yes
Replicate_Do_DB: mydb
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 0
Relay_Log_Space: 107
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 1045
Last_IO_Error: error connecting to master '[email protected]:6666' - retry-time: 60 retries: 86400
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 0
然后它就挂了。但如果我尝试通过 连接mysql -u repluser -h 12.23.45.67 -P 6666 p
,我就能顺利连接到主服务器。
我的端口 6666 是开放的并且允许。
不确定还能做什么。
答案1
我找到了答案http://nerdherd.com/archives/524
Note the error code 1045, which indicates a credentials problem. Double-check the length of your password; MySQL has a MASTER_PASSWORD maximum length limit of 32 characters. Shorten that puppy up and have another try.
答案2
我需要为 SERVER 中的从属设备起一个名字,因此我将其命名为servidor
,如下所示:
GRANT REPLICATION SLAVE ON *.* TO 'servidor'@'%' IDENTIFIED BY 'servidor';
服务器上的下一行是:
MASTER STATUS
我得到了下一个:
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000005 | 1232 | pizzeria | |
+------------------+----------+--------------+------------------+
因此我需要按照以下方式调用客户端:
CHANGE MASTER TO MASTER_HOST='172.25.3.44', MASTER_USER='servidor'
MASTER_PASSWORD='servidor', MASTER_LOG_FILE='mysql-bin.000005',
MASTER_LOG_POS=1232;