mysql伺服器的主從配置,本來是一件很簡單的事情,無奈不是從零開始,總是在別人已經安裝好的mysql伺服器之上 ,這就會牽扯到,mysql的版本,啟動檔案,等一些問題。
不過沒關係,先問清楚兩點
1、mysql配置檔案my.cnf的位置
2、如何啟動、停止mysql,找好啟動檔案
假設有兩台機器,已經安裝好了mysql(盡量同版本,且兩台機器同一網路,可以ping通)
有朋友說:「從伺服器,不能低於主伺服器的版本」,不過我是低於的,沒有出現問題。
主機a: 192.168.1.100
從機b:192.168.1.101
可以有多台從機
1、先登入主機 a
mysql>grant replication sl**e on *.* to 『backup』@』192.168.1.101『 identified by 『123456』;
賦予從機許可權,有多台叢機,就執行多次
2、 開啟主機a的my.cnf,輸入
server-id = 1 #主機標示,整數
log_bin = /var/log/mysql/mysql-bin.log #確保此檔案可寫
read-only =0 #主機,讀寫都可以
binlog-do-db =test #需要備份資料,多個寫多行
binlog-ignore-db=mysql #不需要備份的資料庫,多個寫多行
3、開啟從機b的my.cnf,輸入
server-id = 2
log_bin = /var/log/mysql/mysql-bin.log
master-host =192.168.1.100
master-user =backup
master-pass =123456
master-port =3306
master-connect-retry=60 #如果從伺服器發現主伺服器斷掉,重新連線的時間差(秒)
replicate-do-db =test #只複製某個庫
replicate-ignore-db=mysql #不複製某個庫
4、同步資料庫
有多種方法,我說最笨的一種,先mysqldump匯出主機a的資料test為 test.sql
然後在,從機b上建立資料庫test,mysql匯入 test.sql到test庫中
5、先重啟主機a的mysql,再重啟從機b的mysql
6、驗證
在主機a中,mysql>show master status\g;
在從機b中,mysql>show sl**e status\g;
能看到大致這些內容
file: mysql-bin.000001
position: 1374
binlog_do_db: test
binlog_ignore_db: mysql
可以在主機a中,做一些insert, update, delete 操作,看看主機b中,是否已經被修改
以下是一些其他朋友寫的,我也做了參考
mysql主從伺服器配置特殊問題
1.由於設定了sl e的配置信hpghul息,mysql在資料庫data目錄下生成master.info,所以如有要修改相關slwww.cppcns.com e的配置要先刪除該檔案,否則修改的配置不能生效。提示 如果修改了主伺服器的配置,記得刪除從伺服器上的master.info檔案。否則從伺服器使...
Mysql設定主從伺服器
首先明白如何實現的資料同步 主伺服器發生變化的時候,會將sql語句寫入binarylog檔案中,從資料庫一直再觀察著這個檔案,發生變化的時候就將變化讀入,並寫入到replaylog檔案中,從伺服器的sql執行緒會執行replaylog中的語句實現資料同步 具體實現 首先設定主伺服器my.cnf檔案,...
solr伺服器主從的配置
solr的主從同步是按core進行配置的,每個core的solrconfig.xml都需要進行主從的配置。主節點的core下面的solrconfig.xml的配置 html view plaincopy在code上檢視 片派生到我的 片 commit startup schema.xml 這個配置的...