基于RHEL6.0的mysql服务器复制的主主架构实现
?基于RHEL6.0的mysql服務器復制的主主架構實現
說明:本文選用172.16.22.1和172.16.22.3作為主服務器
兩個主服務器的軟件版本應相同
兩個主服務器server-id 應不同
兩個主服務器互為主從,所以在這里一個主服務器即是另一個主服務器的從服務器
一、準備條件:安裝mysql(本文選用類似于一種綠色軟件的方式安裝mysql,特點:方便、快捷)
1.在172.16.22.1主機上安裝mysql-5.5.22
(1) .新建用戶以安全方式運行進程:
(2).安裝并初始化mysql-5.5.22
(3).為mysql提供主配置文件:
并修改此文件中thread_concurrency的值為你的CPU個數乘以2(由于只有一顆CPU,所以這里thread_concurrency = 2),另外還需要添加如下行指定mysql數據文件的存放位置:
thread_concurrency = 2
datadir = /usr/local/mysql/data
(4).為mysql提供sysv服務腳本,并添加mysqld至服務列表,而后啟動服務測試。
為了使用mysql的安裝符合系統使用規范,并將其開發組件導出給系統使用,這里還需要進行如下步驟:
(5).輸出mysql的man手冊至man命令的查找路徑:
編輯/etc/man.config,添加如下行即可:
MANPATH? /usr/local/mysql/man
(6).輸出mysql的頭文件至系統頭文件路徑/usr/include:
這可以通過簡單的創建鏈接實現:
# ln -sv /usr/local/mysql/include? /usr/include/mysql
(7)輸出mysql的庫文件給系統庫查找路徑, 而后讓系統重新載入系統庫:
(8).修改PATH環境變量(直接在/etc/profile文件里添加“PATH=$PATH:/usr/local/mysql/bin”即可),讓系統可以直接使用mysql的相關命令:
2.在172.16.22.3主機上安裝mysql-5.5.22
(1) .新建用戶以安全方式運行進程:
(2).安裝并初始化mysql-5.5.22
(3).為mysql提供主配置文件:
并修改此文件中thread_concurrency的值為你的CPU個數乘以2(由于只有一顆CPU,所以這里thread_concurrency = 2),另外還需要添加如下行指定mysql數據文件的存放位置:
thread_concurrency = 2
datadir = /usr/local/mysql/data
(4).為mysql提供sysv服務腳本,并添加mysqld至服務列表,而后啟動服務測試。
為了使用mysql的安裝符合系統使用規范,并將其開發組件導出給系統使用,這里還需要進行如下步驟:
(5).輸出mysql的man手冊至man命令的查找路徑:
編輯/etc/man.config,添加如下行即可:
MANPATH? /usr/local/mysql/man
(6).輸出mysql的頭文件至系統頭文件路徑/usr/include:
這可以通過簡單的創建鏈接實現:
# ln -sv /usr/local/mysql/include? /usr/include/mysql
(7)輸出mysql的庫文件給系統庫查找路徑,?而后讓系統重新載入系統庫:
(8).修改PATH環境變量(直接在/etc/profile文件里添加“PATH=$PATH:/usr/local/mysql/bin”即可),讓系統可以直接使用mysql的相關命令:
?
二、配置主服務器
1.配置主服務器(172.16.22.1):
(1).編輯/etc/my.cnf配置文件開啟中繼日志與二進制日志:
log-bin=mysql-bin?? (默認情況下都已經開啟,此時不需要做修改)
在“log-bin=mysql-bin”下面增加四項:
relay-log = relay-bin
relay-log-index = relay-bin.index
auto_increment_offset = 1
auto_increment_increment = 2
(2).建立復制權限用戶:
?
2.配置主服務器(172.16.22.3):
(1).編輯/etc/my.cnf配置文件,更改server-id使它和主服務器(172.16.22.1)的server-id不一樣,開啟二進制日志和中繼日志:
# vim /etc/my.cnf
找到server-id,并改為
server-id = 11
log-bin=mysql-bin?? (默認情況下都已經開啟,此時不需要做修改)
在“log-bin=mysql-bin”下面增加四項:
relay-log = relay-bin
relay-log-index = relay-bin.index
auto_increment_offset =?2
auto_increment_increment = 2
(2).建立復制權限用戶:
(3).在從服務器(172.16.22.1)上指定它的主服務器:
如果看到方框內的兩項都為‘yes’的話,說明你的從服務器已經正常啟動了。
(4).在從服務器(172.16.22.3)上指定它的主服務器:
如果看到方框內的兩項都為‘yes’的話,說明你的從服務器已經正常啟動了。
三、對主服務器進行測試
在172.16.22.1上執行如下操作:
在172.16.22.3執行如下操作:
此時可以看到兩個主服務器的數據庫都是四個。
現在我們在主服務器(172.16.22.1)上創建一個數據庫testdb和表test,看從服務器(172.16.22.3)上是否也有呢?
在172.16.22.1上執行如下操作:
在172.16.22.3上查看是否有testdb數據庫以及test1表:
此時發現在172.16.22.3上有testdb數據庫和test表,說明成功了一半。
?現在我們在主服務器(172.16.22.3)上創建一個數據庫lh,看從服務器(172.16.22.1)上是否也有呢?
在172.16.22.1上查看是否有數據庫lh?
此時我們發現在172.16.22.1上有數據庫lh,說明我們mysql服務器的主主架構完全實現了。
轉載于:https://blog.51cto.com/lihuan/830959
總結
以上是生活随笔為你收集整理的基于RHEL6.0的mysql服务器复制的主主架构实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 对于访问IIS元数据库失败的解决
- 下一篇: linux 系统维护的几样工具