我想在MS Windows 2008 R2下使用MySQL 5.6.14进行MySQL复制,Master和Slave的端口应为1000(PC1上的master数据库,PC2上安装的slave数据库).
我为master My.ini添加了以下参数
[mysqld]
server-id=1
log-bin=black-bin.log
datadir=d:\mysql\master\
innodb_flush_log_at_trx_commit=1
sync_binlog=1
然后我编辑了奴隶My.ini添加以下参数:
[mysqld]
server-id=2
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin
datadir=d:\mysql\slave
之后,我使用root用户登录Master数据库并执行以下命令
CREATE USER repl_user@slave_ip;
GRANT REPLICATION SLAVE ON *.* TO repl_user@slave_ip IDENTIFIED BY 'password';
初始化复制我登录到slave数据库并执行以下命令:
CHANGE MASTER TO MASTER_HOST='maset_ip',
-> MASTER_USER='repl_user',
-> MASTER_PASSWORD='password';
start slave;
如果主服务器的端口是3306,则复制正常,但如果端口已更改,则它不再起作用.我的问题是:如何使slave连接到端口1000?我试图将以下参数添加到slave my.ini master-port = 1000然后重新启动从属SID但它没有工作(服务没有启动,错误消息:未知参数主端口).请指教,谢谢.
解决方法:
您需要为主服务器添加端口到my.ini
[mysqld]
server-id=1
port=1000
log-bin=black-bin.log
datadir=d:\mysql\master\
innodb_flush_log_at_trx_commit=1
sync_binlog=1
并重启mysql
首先运行这个
STOP SLAVE;
SHOW SLAVE STATUS\G
从输出
>使用Relay_Master_Log_File作为CurrentLogFile
>使用Exec_Master_Pos作为CurrentLogPosition
和mentioned in the comment一样,在Slave上运行CHANGE MASTER TO就像这样
CHANGE MASTER To
MASTER_HOST='ipaddrofmaster',
MASTER_PORT=1000,
MASTER_USER='repl_user',
MASTER_PASSWORD='password'
MASTER_LOG_FILE='CurrentLogFile',
MASTER_LOG_POS=CurrentLogPosition;
START SLAVE;
试试看 !!!