公司現需要遷移mariadb資料庫,從一臺機器遷移到另一臺機器,總共5張表,每張表資料量都有幾十到幾百M,原資料庫中的資料變化頻繁,遷移的程序中服務不能停,且遷移之后要能隨時切換到新的資料庫,切換時必須保證兩個資料庫中的資料完全一致,即資料庫遷移和切換的程序不能丟失用戶資料。不知道有什么方式或者什么工具可以解決?
uj5u.com熱心網友回復:
這個感覺有點困難啊…頻繁變化、不能影響服務、還要隨時切換uj5u.com熱心網友回復:
發布公告,某月某日早上2點-6點例行停機維護uj5u.com熱心網友回復:
但是這樣的話就會打亂大家的作息時間,不到萬不得已我不希望這樣做,而且這也是我們組長留給我一個新人的任務
uj5u.com熱心網友回復:
有人有更好的建議嗎?自己頂一下
uj5u.com熱心網友回復:
配置復制就可以了吧uj5u.com熱心網友回復:
加一個從庫就可以解決。uj5u.com熱心網友回復:
主從復制
* IP - 192.168.1.81 -- 主
~~~txt
[root@localhost ~]# vim /etc/my.cnf
#[mysqld]
#GTID
server_id=81
gtid_mode=on
enforce_gtid_consistency=on
#binlog
log_bin=master-binlog
log-slave-updates=1
binlog_format=row
#relay log
skip_slave_start=1
[root@localhost ~]# systemctl restart mysqld
~~~
~~~txt
mysql> use mysql;
mysql> update user set host = '%' where user ='root';
mysql> flush privileges;
~~~
* IP - 192.168.1.82 -- 從
~~~txt
[root@localhost ~]# vim /etc/my.cnf
#[mysqld]
#GTID
server_id=82
gtid_mode=on
enforce_gtid_consistency=on
#binlog
log-bin=slave-binlog
log-slave-updates=1
binlog_format=row
#relay log
skip_slave_start=1
[root@localhost ~]# systemctl restart mysqld;
~~~
~~~txt
mysql> use mysql;
mysql> update user set host = '%' where user ='root';
mysql> flush privileges;
~~~
~~~txt
[root@localhost ~]# mysql -u root -p
mysql> CHANGE MASTER TO
MASTER_HOST='192.168.1.81',
MASTER_USER='root',
MASTER_PASSWORD='123456',
MASTER_PORT=3306,
MASTER_AUTO_POSITION = 1;
~~~
~~~txt
mysql> start slave;
~~~
~~~txt
mysql> show slave status \G;
~~~
uj5u.com熱心網友回復:
各位大神,有木有會在win10上安裝mysql的,我安完后沒有顯示系統,再按還提示有沖突,請給我大神幫幫小弟,感謝樓主的貼uj5u.com熱心網友回復:
可以做備用庫嗎?就想oracle的主從庫一樣轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/95173.html
標籤:MySQL
上一篇:postgresql結合zhparser時,一直報重置資料庫
下一篇:MATLAB+Access insert函式應用問題 Variable fields and insert fields do not match.
