解決刪除映象時image is referenced in multiple repositories
阿新 • • 發佈:2020-08-13
環境說明
主機名 | IP | 角色 | 資料庫 |
---|---|---|---|
node1 | 192.168.114.129 | MySql | demo |
node2 | 192.168.114.133 | Mysql | demo |
目標
開啟主從複製,並保證node1 和 node2 節點資料的一致性。
主資料庫node1
建立測試資料
mysql> create databse demo default charset utf8; mysql> use demo; mysql> CREATE TABLE `school` ( `id` varchar(32) NOT NULL, `school_name` varchar(32) NOT NULL COMMENT '學校名稱', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='學校'; mysql> insert into school values('1','北京大學'); mysql> insert into school values('2','清華大學');
建立同步賬號
mysql> create user 'sync'@'192.168.114.%' identified by '123456';
mysql> grant replication slave on *.* to 'sync'@'192.168.114.%';
mysql> show master status;
匯出測試資料
mysql> mysqldump --master-data=2 --single-transaction --routines --triggers --events -uroot -p demo > demo.sql
- --master-data=2 change master to 作為註釋新增到dump檔案中 , 1 表示作為語句出現在dump檔案中
- --routines 匯出儲存過程
- --triggers 觸發器
- --events 事件
複製到從資料庫上
scp demo.sql [email protected]:/www/sql
從資料庫node2
mysql -uroot -p -e"create database demo default charset utf8"; #匯入資料 mysql -uroot -p demo< demo.sql #設定master資訊 change master to master_host='192.168.114.129',master_user='sync',master_log_file='mysql-bin.000001',MASTER_LOG_POS=154,master_password='123456'; #master_host : master 主機ip #master_log_file : dump後的日誌記錄了這個值 #MASTER_LOG_POS : dump後的日誌有這個值,記錄了日誌的位置 #開啟複製鏈路 mysql> start slave; mysql> show slave status \G
tips
主資料庫必須開啟bin log日誌
每個資料庫配置不同的server_id 和 uuid
vim /etc/my.cnf
log-bin=mysql-bin
server_id=9