亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

MySQL主從配置及haproxy和keepalived搭建過程解析

 更新時間:2022年05月20日 08:23:29   作者:itabel  
這篇文章主要介紹了MySQL主從配置及haproxy和keepalived搭建,本次運行環(huán)境是在docker中,也會介紹一些docker的知識,需要的朋友可以參考下

本篇文章主要介紹如何搭建MySQL主主配置、主從配置、haproxy、keepalived,已經(jīng)搭建過程中的一些問題。本次運行環(huán)境是在docker中,也會介紹一些docker的知識

docker 小知識

創(chuàng)建本機可訪問的MySQL容器

1、直接用 docker 拉取別人搭建好的MySQL
2、自己創(chuàng)建 centos 或者其他容器,下載安裝MySQL
我是采用的第二種方案
命令: docker run -itd --name mysql_server1 -p 13306:3306 centos:7
13306 是本地的端口,3306是容器的端口。這樣本地可以根據(jù)端口13306訪問容器中的數(shù)據(jù)庫
-i: 交互式操作。
-t: 終端。
-d: 后臺運行容器,并返回容器ID;

創(chuàng)建harpoxy、Keepalive 的容器

docker run -itd --privileged=true --name mysql_server1 -p 23396:3306 centos:7 /sbin/init
--privileged=true 和 /sbin/init 加上這兩個可以在容器中使用systemctl的命令
然后通過docker exec -it 容器ID 進入
如果沒有 systemctl 運行haproxy和Keepalive會遇到一些問題,且不容易找到錯誤日志

下載MySQL

1、粘貼MySQL社區(qū)最新的MySQL rpm包鏈接,wget下載
2、rpm -ivh mysql.rpm (下載的rpm文件)
3、yum install mysql
4、在 /var/log/mysqld.log 中找到初始化密碼,登錄,設(shè)置密碼

MySQL主主配置

我分別在172.17.0.2和172.17.0.4 中安裝了MySQL,用于搭建主主配置

172.17.0.2 MySQL 配置

1、編輯 MySQL 配置文件 vim /etc/my.cnf。不知道配置文件在哪的可以執(zhí)行 mysql --help | grep 'Default options' -A 1 這個命令

server-id = 1 # 唯一的不能重復(fù)
log-bin = mysql-bin  # 開啟二進制日志
binlog_format = ROW # 日志格式
max_binlog_size = 100M # 最大日志文件大小
binlog-do-db = itma1 # 支持主從的db

2、老的MySQL版本可能需要配置讓主鍵不同的參數(shù),本次使用環(huán)境是MySQL8.0默認不會主鍵沖突,不需要額外配置

172.17.0.2的配置

server-id = 2
log-bin = mysql-bin
binlog_format = ROW
max_binlog_size = 100M
binlog-do-db = itma1

執(zhí)行sql命令

# 172.17.0.2 執(zhí)行命令
# 創(chuàng)建用戶
create user slave@"%" IDENTIFIED BY "test123";
# 授予權(quán)限
GRANT REPLICATION SLAVE ON *.* TO slave@"%";
show master status\G
# 172.17.0.4 執(zhí)行命令
change master to master_host="gateway",master_port=13306, master_user="slave",master_password="test123",master_log_file="mysql-bin.000001",master_log_pos=157;
start slave;
show slave status\G

以上是 0.2是主,0.4是從。上邊的命令兩個機器反過來分別執(zhí)行一次,即可配置成 0.4主,0.2是從,這樣主主配置搭建完成


配置過程中可能會出現(xiàn)一些錯誤,利用 show slave status\G 可以查看具體錯誤信息,不過也有可能出現(xiàn)命令操作太快,還未鏈接成功的情況。本人還遇到過主的賬號(slave賬號)需要在主的服務(wù)器登錄一次,從服務(wù)器才能鏈接成功的情況,暫時不確定什么原因,有知道的可以留言,非常感謝

MySQL主從配置

1、從庫配置文件,所屬主庫為 172.17.0.2

server-id = 11 
log-bin = mysql-bin
binlog_format = ROW
log_slave_updates = 1
max_binlog_size = 100M
replicate-do-db = itma1 # 從庫更新也寫binlog

2、執(zhí)行命令

change master to master_host="gateway",master_port=13306, master_user="slave",master_password="test123",master_log_file="mysql-bin.000001",master_log_pos=157;
start slave;

haproxy 配置

新創(chuàng)建centos容器

yum install haproxy
# 配置文件
vim /etc/haproxy/haproxy.cfg # 最好先備份一下
systemctl start haproxy
systemctl start haproxy

配置如下圖,注意:model 需要時tcp,http雖然檢測沒問題,但是通過本服務(wù)器的地址鏈接不到MySQL服務(wù)

配置成功之后,就可以在其他服務(wù)器通過該服務(wù)器地址鏈接MySQL了

Keepalived 配置

使用haproxy同樣的服務(wù)器

yum install keepalived
# 配置文件
vim /etc/keepalived/keepalived.conf 最好先備份
systemctl start keepalived
systemctl status keepalived

配置如下圖

haproxy 和keepalived 可以配置到多個服務(wù)器上,keepalived 會根據(jù)優(yōu)先級去判斷使用哪臺主機,至于這樣配置的好處這里就不過多介紹

到此這篇關(guān)于MySQL主從配置及haproxy和keepalived搭建的文章就介紹到這了,更多相關(guān)mysql haproxy和keepalived搭建內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL表中添加時間戳的幾種方法

    MySQL表中添加時間戳的幾種方法

    這篇文章主要介紹了MySQL表中添加時間戳的幾種方法,有張表的數(shù)據(jù)需要用同步工具同步至其他庫,需要 update_time 時間戳字段 來做增量同步,需要的朋友可以參考下
    2019-06-06
  • MySQL中的游標和綁定變量

    MySQL中的游標和綁定變量

    這篇文章主要介紹了MySQL中的游標和綁定變量方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Python版Mysql爆破小腳本

    Python版Mysql爆破小腳本

    本文給大家分享的是使用Python制作的MySQL在線用戶密碼的暴力破解腳本,非常的好用,有需要的小伙伴可以參考下
    2016-10-10
  • MySQL5.7 JSON類型使用詳解

    MySQL5.7 JSON類型使用詳解

    MySQL5.7發(fā)布后,專門設(shè)計了JSON數(shù)據(jù)類型以及關(guān)于這種類型的檢索以及其他函數(shù)解析。 我們先看看MySQL老版本的JSON存取方式,具體內(nèi)容詳情大家參考下本文吧
    2017-10-10
  • MySQL中Multiple primary key defined報錯的解決辦法

    MySQL中Multiple primary key defined報錯的解決辦法

    這篇文章主要介紹了MySQL中Multiple primary key defined報錯的解決辦法以及相關(guān)實例內(nèi)容,有興趣的朋友們學(xué)習下。
    2019-08-08
  • MySQL索引長度限制原理解析

    MySQL索引長度限制原理解析

    這篇文章主要介紹了MySQL索引長度限制原理解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2019-12-12
  • 使用Visual Studio Code連接MySql數(shù)據(jù)庫并進行查詢

    使用Visual Studio Code連接MySql數(shù)據(jù)庫并進行查詢

    這篇文章主要介紹了使用Visual Studio Code連接MySql數(shù)據(jù)庫并進行查詢,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2021-02-02
  • mysql獲取字符串長度函數(shù)(CHAR_LENGTH)

    mysql獲取字符串長度函數(shù)(CHAR_LENGTH)

    本文介紹一下關(guān)于mysql獲取字符串長度的方法,希望此教程對各位同學(xué)會有所幫助哦。
    2013-11-11
  • 聊一聊MyISAM和InnoDB的區(qū)別

    聊一聊MyISAM和InnoDB的區(qū)別

    這篇文章主要介紹了聊一聊MyISAM和InnoDB的區(qū)別,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • Linux下安裝mysql-5.6.4 的圖文教程

    Linux下安裝mysql-5.6.4 的圖文教程

    在開始安裝前,先說明一下mysql-5.6.4與較低的版本在安裝上的區(qū)別,從mysql-5.5起,mysql源碼安裝開始使用cmake了,因此當我們配置安裝目錄./configure --perfix=/.....的時候和以前的會有些區(qū)別,這點我們稍后會提到
    2013-06-06

最新評論