1、環境準備:在一臺服務器上搭建 2 個 MySQL 實例,其中,3306 端口的 MySQL 實例作爲主庫,3307 端口的 MySQL 實例作爲從庫
[root@localhost scripts]# netstat -lnp | grep 330
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 28934/mysqld
tcp 0 0 0.0.0.0:3307 0.0.0.0:* LISTEN 29663/mysqld
2、主庫上的操作
[root@localhost ~]# vim /data/3306/my.cnf # 修改主庫配置文件
[mysqld] # 注意是在 mysqld 模塊下server-id = 1 # 各個實例的 server-id 不能相同log-bin = /data/3306/mysql-bin # 打開 binlog 日誌
[root@localhost ~]# /data//> show variables like +---------------+-------+ | Variable_name | Value | +---------------+-------+ | log_bin | ON | +---------------+-------+ mysql> grant replication slave on *.* to 'rep'@'192.168.5.%' identified by 'pzk123'; mysql> flush privileges;
[root@localhost ~]# mkdir /data/3306/backup [root@localhost ~]# mysqldump -uroot -ppzk123 -S /data/3306/mysql.sock --events -A -B | gzip > /data/3306/backup/mysql_bak.$(date +%F).sql.gz
mysql> unlock tables; # 導出數據後解鎖主庫,恢復可寫mysql> show master status; # 記住下面兩個值,等下在從庫會用到+------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000011 | 333 | | | +------------------+----------+--------------+------------------+