我想在MS Windows 2008 R2下使用MySQL 5.6.14进行MySQL复制,Master和Slave的端口应该是1000(PC1上的主库,PC2上安装的从库)。
我为 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
Run Code Online (Sandbox Code Playgroud)
然后我编辑从My.ini
添加以下参数:
[mysqld]
server-id=2
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin
datadir=d:\mysql\slave
Run Code Online (Sandbox Code Playgroud)
之后,我使用 root 用户登录到 Master 数据库并执行以下命令
CREATE USER repl_user@slave_ip;
GRANT REPLICATION SLAVE ON *.* TO repl_user@slave_ip IDENTIFIED BY 'password';
Run Code Online (Sandbox Code Playgroud)
为了初始化复制,我登录到从数据库并执行以下命令:
CHANGE MASTER TO MASTER_HOST='maset_ip',
-> MASTER_USER='repl_user',
-> MASTER_PASSWORD='password';
start slave;
Run Code Online (Sandbox Code Playgroud)
如果 master 的端口是 3306,则复制工作正常,但如果端口更改,则它不再工作。我的问题是:如何让从设备连接到端口 1000?我尝试将以下参数添加到从属my.ini
master-port=1000
然后重新启动从属 SID 但它不起作用(服务未启动,错误消息:未知参数主端口)。请指教,谢谢。
我已经通过 PerconaXtrabackup 工具创建了一个 MySQL 备份(感谢本指南):
innobackupex --user=backupmysqluser --password=xyz --compress --stream=xbstream ./ > /var/backups/db/firstBackup.db
Run Code Online (Sandbox Code Playgroud)
它成功创建了热备份。现在我想测试它的恢复情况,所以,首先,我解压它:
cd /var/backups/db
mkdir decompressed
xbstream -x -C decompressed
Run Code Online (Sandbox Code Playgroud)
现在我试着准备它:
innobackupex --apply-log /var/backups/db/decompressed/
Run Code Online (Sandbox Code Playgroud)
结果是这个错误:
160719 20:06:28 innobackupex: Starting the apply-log operation
IMPORTANT: Please check that the apply-log run completes successfully.
At the end of a successful apply-log run innobackupex
prints "completed OK!".
innobackupex version 2.4.3 based on MySQL server 5.7.11 Linux (x86_64) (revision id: 6a46905)
xtrabackup: cd to /var/backups/db/decompressed
xtrabackup: This target seems to be …
Run Code Online (Sandbox Code Playgroud)