LNMPMySQL資料庫主從同步
這篇文章主要是一種記錄,參考網路上很多技術文章操作的一個過程,我自己在使用中貌似也遇到一些問題,但是為了避免日後遺忘還是決定溫習下這個過程。文章是在兩臺美國VPS已安裝軍哥LNMP一鍵包的環境下操作的。MySQL資料庫主從同步的優點很多,對我這種膚淺的人來說最有用的是當做備份吧。
準備工作
本例採用的兩臺VPS主機均為CentOS系統,LNMP環境
主伺服器:209.148.95.* MySQL5.5.42
從伺服器:192.227.240.* MySQL5.5.42
***如何檢視MySQL版本:mysql –version***
注意:主伺服器的MySQL版本不要比從伺服器版本更高,可以相同或者低於從伺服器。
配置MySQL主伺服器
因為本例我採用的兩臺主機都已經安裝了LNMP一鍵包,所以MySQL都是裝好了的,還有PhpMyadmin可以管理資料庫,所以就略過了安裝過程,後面的有些操作也直接在PhpMyadmin里加。
先在主伺服器建立資料庫,新增使用者,我直接在PhpMyadmin操作,視覺化!
如上圖,我添加了一個名為zhaorong的資料庫。然後新增使用者,我也設定使用者名稱為zhaorong,並賦予他對資料庫zhaorong的全部許可權。
注意上面設定的資料庫名稱和使用者名稱稱是可以任意設定的,這裡方便記我直接設為一樣了。
接下來我們在主伺服器上為資料庫zhaorong建立一個從同步使用者,設定密碼。
上圖建立了一個使用者zhaorong_c,並指定只能從從伺服器IP來訪問,注意下面的許可權,只有備份許可權。
接下來我們將主伺服器中的資料庫匯出到從伺服器中,ssh登陸到主伺服器執行。
mysqldump -uroot -p**** –default-character-set=utf8 –opt -Q -R –skip-lock-tables zhaorong > /home/zr.sql
上面的***是MySQL資料庫root密碼(skip前面2個-)。
將備份資料庫傳入從伺服器,這裡我也放入home目錄。
scp /home/zr.sql [email protected]*:/home
之後我們轉到從伺服器設定。
配置MySQL從伺服器
先匯入之前主伺服器傳入的資料庫。
上圖的命令依次為:
mysql –uroot –p***** #登陸資料庫
create database zhaorong; #建立資料庫zhaorong
use zhaorong #進入資料庫
source /home/zr.sql #匯入備份到資料庫
然後我們試試在從伺服器中登陸到主伺服器:
mysql -uzhaorong_c -h 192.227.240.* -p*****
極有可能連不上,就如我上圖中第一次連結的情況,遇到這種問題可以到主伺服器把iptables關閉試試。
配置MySQL主從伺服器的my.cnf
先來配置主伺服器的my.cnf檔案,lnmp的my.cnf在/etc/my.cnf
vi /etc/my.cnf #編輯
server-id=1 #這行本身有
log-bin=mysql-bin #這行本身有
binlog-do-db=zhaorong #加入,需同步的資料庫
binlog-ignore-db=mysql #不同步MySQL系統資料庫
儲存,退出。
service mysql restart #重啟資料庫
mysql -uroot -p**** #進入MySQL資料庫控制檯
mysql> show variables like ‘server_id’; #檢視server-id值是不是1
mysql> show master status; #檢視主伺服器資訊
上面兩行我還是用截圖來表達:
上圖中的mysql-bin.000006和107記錄下來,後面需用。
然後我們配置從伺服器的my.cnf檔案。
vi /etc/my.cnf #一樣的,編輯檔案
server-id=2 #預設是1改成2
log-bin=mysql-bin #這行本身有
replicate-do-db=zhaorong #需要同步的資料庫
replicate-ignore-db=mysql #不同步系統資料庫
read_only #設只讀許可權
儲存,退出。
service mysql restart #重啟資料庫
mysql -uroot -p**** #進入MySQL資料庫控制檯
mysql> show variables like ‘server_id’; #檢視server-id是2了
mysql>slave stop; #停止從伺服器同步程序
mysql>change master to master_host=’209.148.95.*’,master_user=’zhaorong_c’,master_password=’***’,master_log_file=’mysql-bin.000006′ ,master_log_pos=107; #這一行比較長,注意那個mysql-bin.000006和107就是之前記錄下來的
###
備註:注意 命令的格式錯誤
參考如下:
change master to master_host='192.168.56.100',master_user='haoxiaoyu',master_password='123456',master_log_file='mysql-bin.000093' ,master_log_pos=107;
###
mysql>slave start; #啟動同步程序
mysql>SHOW SLAVE STATUS\G #檢視從伺服器同步資訊
如上圖,看到我紅框中兩行都是Yes就OK了。
之後,我們可以測試下,在主伺服器建立一個表,然後登陸從伺服器資料庫檢視是否同步建立了這張表。
相關推薦
LNMPMySQL資料庫主從同步
這篇文章主要是一種記錄,參考網路上很多技術文章操作的一個過程,我自己在使用中貌似也遇到一些問題,但是為了避免日後遺忘還是決定溫習下這個過程。文章是在兩臺美國VPS已安裝軍哥LNMP一鍵包的環境下操作的。MySQL資料庫主從同步的優點很多,對我這種膚淺的人來說最有用的是當做備份
linux配置 資料庫主從同步
資料庫的讀寫分離能很大程度上減輕資料庫的壓力,讀寫分離的前提就是主從資料同步,然後在主庫做增刪改,從庫做查詢。 例如: 主庫:192.168.0.1 從庫:192.168.0.2 兩個資料庫都安裝了Mysql資料庫,保證允許遠端連線 主資料庫配置 1.修改mysql配置檔案 /etc/my.cnf
高併發架構系列:資料庫主從同步的3種一致性方案實現,及優劣比較
在高併發場景下,資料主從同步是必然的方式,除了資料庫主從同步外,還會涉及到分散式環境下的資料同步(文末有介紹~)。 今天分享資料庫主從同步解決方案。 資料主從同步的由來 網際網路的很多業務,特別是在高併發的場景下,基本都是讀遠遠大於寫,如果資料庫讀和寫的壓力都同在一臺主機上,這顯然不太合理。
Linux下MySQL資料庫主從同步配置
Linux下MySQL資料庫主從同步配置 一.配置mysql主資料庫#172.30.65.122 mysql -u root-p#進入控制檯 create databasecesudb#建立資料庫測速db insert intomysql.user(Host,User,Pa
MySQL資料庫主從同步延遲分析及解決方案
一、MySQL的資料庫主從複製原理 1.主庫對所有DDL和DML產生的日誌寫進binlog; 2.主庫生成一個 log dump 執行緒,用來給從庫I/O執行緒讀取binlog; 3.從庫的I/O
資料庫主從同步延遲導致坑
背景: 線上出現了使用者註冊了多條重複記錄 排查問題: 第一種一開始懷疑是不是併發問題造成,後來查了大多數都是隔了幾秒鐘,併發出現概率小 第二種就是看出現重複資料的時間,然後線上看到從庫出現了延遲複製的問題,這就問題出現的關鍵 原來程式碼邏輯
Redis快取維護方案-考慮資料庫與快取雙寫、redis和本地資料庫事務一致性、資料庫主從同步延遲的情況怎麼解決快取與資料庫不一致
一般常用的快取方案有兩種: 第一種 讀的時候,先讀快取,快取沒有的話,讀資料庫,取出資料後放入快取,同時返回響應。 更新的時候,
MySQL資料庫主從同步
一、主從同步的原因 為了減輕伺服器處理海量併發訪問所產生的效能問題,其中最主流的方案之一就是讀寫分離。 二、MySQL主從同步流程圖 &nb
搭建 mariadb 資料庫主從同步
# 一、主(master)資料庫配置 ## 1. my.cnf 新增配置 ```bash [mariadb] log-bin server_id=1 log-basename=master1 binlog-format=mixed max_binlog_size=200M expire_logs_days
Linux資料庫管理——day13——Redis的主從同步、資料格式
主從同步 原理:從庫向主庫傳送同步請求(sync),接收到後啟動一個程式進行後臺儲存,然後把儲存的rdb檔案發給從庫,然後從庫讀取檔案實現同步,之後主庫每進行一次寫操作就會啟動一個程式,把修改命令發給從庫,實現實時同步 配置: &nbs
實現兩個MySQL資料庫之間的主從同步_資料庫技術
www.syncnavigator.cn SyncNavigator 資料酷同步工具 做資料同步時所支援的資料庫型別: 支援sqlserver 2000-2014所有版本,全相容,和MYsql 4.x 、MYsql 5.x 、MYsql 6.x版本。 來源資料庫和目標資料庫可以版本不
資料庫讀寫分離,主從同步實現方法
SyncNavigator 資料酷同步工具 做資料同步時所支援的資料庫型別: 支援sqlserver 2000-2014所有版本,全相容,和MYsql 4.x 、MYsql 5.x 、MYsql 6.x版本。 來源資料庫和目標資料庫可以版本不同,比如:來源資料庫是sq
資料庫讀寫分離,主從同步實現方法
前言 眾所周知,隨著使用者量的增多,資料庫操作往往會成為一個系統的瓶頸所在,而且一般的系統“讀”的壓力遠遠大於“寫”,因此我們可以通過實現資料庫的讀寫分離來提高系統的效能。 實現思路 通過設定主從資料庫實現讀寫分離,主資料庫負責“寫操作”,從資料庫負責
MySQL5.6 資料庫主從(Master/Slave)同步安裝與配置詳解
安裝環境 作業系統 :CentOS 6.5 資料庫版本:MySQL 5.6.27 主機A:192.168.1.1 (Master) 主機B:192.168.1.2 (Slave) 這裡強調的資料庫的版本,是因為MySQL在5.6之前和之後的安裝方式是不
為我的部落格網站資料庫使用Docker實現MySQL主從同步
前言 個人部落格使用了阿里雲的伺服器,此文是筆者實現WordPress+Docker+MySQL主從同步架構的記錄。 環境 Docker version 1.13.1 LNMP: - 阿里雲centos 7.3 - nginx version: ng
Zabbix 檢測Mysql資料庫的主從同步
在高併發網站架構中,MySQL資料庫主從同步是不可或缺的,不過經常會發生由於網路原因或者操作錯誤,MySQL主從經常會出現不同步的情況,那麼如何監控MySQL主從同步,也變成檢測網站正常執行的重要環節。 MySQL同步功能由3個執行緒(master上1個,slave上2個
MySQL5.6 (5.7)資料庫主從(Master/Slave)同步安裝與配置詳解
安裝環境 作業系統 :CentOS 6.5 資料庫版本:MySQL 5.6.27 主機A:192.168.1.1 (Master) 主機B:192.168.1.2 (Slave) 這裡強調的資料庫的版本,是因為MySQL在5.6之前和之後的安裝方式是不一樣的。 本人
MySQL資料庫主從(主主)同步配置
作者:dante一、系統環境:centos7.4 (centos 1708)mysql 5.7master主機的IP地址為192.168.159.50slave主機的IP地址為192.168.159.51Master主機的同步使用者名稱和密碼:slave/[email
MySQL資料庫設定主從同步
MySQL主從同步是目前使用比較廣泛的資料庫架構,技術比較成熟,配置也不復雜,特別是對於負載比較大的網站,主從同步能夠有效緩解資料庫讀寫的壓力。 1 MySQL主從同
兩個Mysql資料庫主從庫單向同步
鄙人一個技術菜鳥,但是也有一個渴望成功夢想,所以想在新的一年裡,在技術方面有所提升,閒暇之餘,我將寫點部落格,對自己學到的東東加以鞏固,但技術功底有限,內容可能比較膚淺…… 很久之前安排給我同一個戰壕的同事讓搞一個mysql主從庫備份的,但是遺憾的是都2