1. 程式人生 > >Mysql之主從復制

Mysql之主從復制

mysql

參考文檔:http://www.178linux.com/60625

節點一

修改配置文件設置唯一ID開起二進制日誌

[[email protected] ~]# vim /etc/my.cnf 增加以下內容
    [mysqld]
    log-bin=master_bin  開起二進制日誌
    server_id=1     給主節點一個唯一的ID號
    innodb_file_per_table=on    innodb開起獨立表空間
    skip_name_resolve=on    開啟跳過主機名反解

啟動服務創建有遠程復制權限的賬戶

[[email protected]
/* */ ~]# service mariadb start [[email protected] ~]# mysql MariaDB [(none)]> show global variables like ‘%log%‘; 查看二進制日誌log_bin是否開啟了 MariaDB [(none)]> show global variables like ‘%server%‘; 查看DI號是否為1 MariaDB [(none)]> show master logs; 查看主節點二進制日誌的位置,從節點從主節點最後一個日誌的位置開始復制 MariaDB [(none)]> grant replication slave,replication client on *.* to [email protected]
/* */%.%‘ identified by ‘passwd‘; 創建並授權一個遠程復制賬號copy密碼為passwd MariaDB [(none)]> flush privileges; 刷新用戶權限

節點二

修改配置文件設置唯一ID開起中繼日誌

[[email protected] ~]# vim /etc/my.cnf
    relay_log=relay_log 開起中繼日誌
    relay-log-index=relay-log.index 
    server_id=2     同樣的也需要設置唯一的ID號
    innodb_file_per_table=on
    skip_name_resolve=on

[[email protected]
/* */ ~]# service mariadb start [[email protected] ~]# mysql MariaDB [(none)]> show global variables like ‘%log%‘; 查看中繼日誌relay_log是否開起 MariaDB [(none)]> show global variables like ‘%server%‘; 查看ID號是否為2 主節點為192.168.1.107,遠程復制賬號為copy,密碼為passwd,復制二進制日誌的起始位置為000003的245處 MariaDB [(none)]> change master to master_host=‘192.168.1.107‘,master_user=‘copy‘,master_password=‘passwd‘,master_log_file=‘master_bin.000003‘,master_log_pos=245; MariaDB [(none)]> start slave; 啟動從節點復制線程 MariaDB [(none)]> show slave status\G; *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 192.168.1.107 Master_User: copy Master_Port: 3306 Connect_Retry: 60 Master_Log_File: master_bin.000003 Read_Master_Log_Pos: 491 Relay_Log_File: relay_log.000003 Relay_Log_Pos: 776 Relay_Master_Log_File: master_bin.000003 Slave_IO_Running: Yes 這兩項必須為yes Slave_SQL_Running: Yes 這兩項必須為yes Replicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0 Last_Error: Skip_Counter: 0 Exec_Master_Log_Pos: 491 Relay_Log_Space: 1064 Until_Condition: None Until_Log_File: Until_Log_Pos: 0 Master_SSL_Allowed: No Master_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: Seconds_Behind_Master: 0 Master_SSL_Verify_Server_Cert: No Last_IO_Errno: 0 Last_IO_Error: Last_SQL_Errno: 0 Last_SQL_Error: Replicate_Ignore_Server_Ids: Master_Server_Id: 1 1 row in set (0.00 sec)

註意

如果Slave_IO_Running不為yes的解決辦法

如:ERROR 1201 (HY000)

MariaDB [(none)]> slave stop;   停止從節點
MariaDB [(none)]> reset slave;  重新設置從節點

查找設置有問題的地方重新給從節點授權

MariaDB [(none)]> change master to master_host=‘192.168.1.107‘,master_user=‘copy‘,master_password=‘passwd‘,master_log_file=‘master_bin.000003‘,master_log_pos=245;
MariaDB [(none)]> start slave;  啟動從節點
MariaDB [(none)]> show slave status\G;  查看狀態

註意從節點上一定不能進行寫操作

驗證

主節點

MariaDB [(none)]> create database msdb;
MariaDB [msdb]> create table xx (id int(4) not null auto_increment,name varchar(30) not null,primary key(id)) engine=innodb charset=utf8;
MariaDB [msdb]> insert into xx (id,name) values (1,‘king‘);

從節點

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| msdb               |
| mysql              |
| performance_schema |
| test               |
+--------------------+
MariaDB [(none)]> use msdb;
MariaDB [msdb]> show tables;
+----------------+
| Tables_in_msdb |
+----------------+
| xx             |
+----------------+
MariaDB [msdb]> select * from xx;
+----+------+
| id | name |
+----+------+
|  1 | king |
+----+------+


本文出自 “汪立明” 博客,請務必保留此出處http://afterdawn.blog.51cto.com/7503144/1928219

Mysql之主從復制

相關推薦

Mysql主從

mysql參考文檔:http://www.178linux.com/60625節點一修改配置文件設置唯一ID開起二進制日誌[[email protected]/* */ ~]# vim /etc/my.cnf 增加以下內容 [mysqld] log-bin=master_bin

Mysql 主從

ges start row RoCE star 系統 網絡 format binlog日誌 一、數據庫主從復制基本要求: 1、操作系統版本一致(建議)。 2、數據庫版本一致(建議)。 3、配置文件參數一致(是指一些性能參數)。 二、網絡拓撲 三、主數據庫配置文件 [mys

配置mysql主從

ati 測試 進程 file com repl 同步 sta oca mysql版本:5.6 主服務器的ip:192.168.134.178 從服務器的ip:192.168.134.180 現在主從機器分別安裝mysql的5.6版本,安裝過程省略; 1  修改主服務器的

MySQL   主從

mysql 主從復制企業Linux運維場景數據同步方案1.1 文件級別的異機同步方案scp/sftp/nc命令可以實現遠程數據同步。搭建ftp/http/svn/nfs 服務器,然後在客戶端上也可以把數據同步到服務器。搭建Samba文件共享服務,然後在客戶端上也可把數據同步到服務器。利用rsync/csy

6、MongoDB學習主從

ges 方式 blog for data- director 分享 .com 復制 環境: 主:127.0.0.1:27017 從:127.0.0.1:27018 一、主庫添加配置文件(master = true) port = 27017 dbpath = /data

Redis集群方案主從(待實踐)

ati replicat tps 數據 targe slaveof article 主從 edi Redis有主從復制的功能,一臺主可以有多臺從,從還可以有多臺從,但是從只能有一個主。並且在從寫入的數據不會復制到主。 配置 在Redis中,要實現主從復制架構非常簡單,只

使用Spring實現讀寫分離( MySQL實現主從

sign eve replicat win [] 做了 用戶名 指定 ati 1. 背景 我們一般應用對數據庫而言都是“讀多寫少”,也就說對數據庫讀取數據的壓力比較大,有一個思路就是說采用數據庫集群的方案, 其中一個是主庫,負責寫入數據,我們稱之為:寫庫; 其它都是從庫,

mysql實現主從

ast 其他 增刪改 來看 快速 state 執行時間 repl art 今天說一下MySQL的主從復制如何做到! 準備工作: 1.兩個虛擬機:我這裏用的是CentOS5.5,IP地址分別是192.168.1.101 和192.168.1.105;        101做

MySQL主從與讀寫分離原理

訂單 中繼 運維 提交 磁盤 com 引擎 庫服務器 文件 前言:我們前面搭建過LAMP和LNMP,做過了web服務器群集和熱備,web服務器壞了我們是不怕了,但是我們要知道,網站的數據有很多是存儲在數據庫裏面的,例如註冊的會員,發的文章,購物的訂單等信息。當然我們可以給數

實現MYSQL主從

MySQL主從復制 linux 數據庫 一、MYSQL 主從復制原理1、在每個事務更新數據完成之前,master在二進制日誌記錄這些變化。寫入二進制日誌完成後,master通知存儲引擎提交事務。 2、slave將master的binary log復制到其中繼日誌。slave開始一個工作線程--I

MySQL主從介紹及配置

MySQL1.MySQL主從復制介紹 MySQL數據庫支持單向、雙向、鏈式級聯、環狀等不同業務場景的復制。在復制過程中,一臺服務器充當主服務器(Master),接收來自用戶的內容更新,而一個或多個其他的服務器充當從服務器(Slave),接收來自主服務器binlog文件的日誌內容,解析出SQL,重新更新到

mysql基礎+主從、讀寫分離、高可用原理

mysql基礎1)創建數據庫 create database wpj1105;2)創建數據庫 create database wpj1105;3)判斷是否存在庫 : drop database if exists wpj1105;4)使用該數據庫

配置MySQL GTID 主從

creat global 參考 create nlog connect warning 從庫 一致性 1、更簡單的實現failover,不用以前那樣在需要找log_file和log_pos。2、更簡單的搭建主從復制。3、比傳統的復制更加安全。4、GTID是連續的沒有空洞的,

MySQL主從+雙主模式

數據 io線程 msyql mysql- 關閉 cat ges enter 就是 MySQL的主從復制 部署環境: MySQL master 192.168.40.21 MySQL slave 192.168.40.22 思路: 當主MySQL上進行數據上的操作或

Redis 主從與切換

eof oss erro 守護 方法 作用 err 數據 code 一、Redis 主從復制作用 作用:保證Redis的數據安全,提升應用服務高可用 二、網絡環境 三、在從服務器設置同步 1、查看從Redis 服務器上現有的數據 [root@web01 redis]# .

Redis 主從 + Keepalived 實現高可用

edi keepal images 守護 定位 process 安裝redis RoCE 進程 一、Redis 主從復制 + Keepalived 實現高可用 作用:保證Redis高可用,首先搭建Redis 主從復制,然後在主從兩臺機器上分別安裝keepalived服務,把

MongoDB主從和副本集(四)

dmi 數據庫 mongo alloc already urn tor 安全性 db2 簡單主從復制 采用一主一從或一主多從的布署模式,可以將讀寫分離開來,提高數據庫的可用性,不過mongodb的主從模式並不能在主節點崩潰後,從節點替換主節點的工作,一般可以在開發階段使用

mysql+centos7+主從

恢復 原理 ria 原因 命令 有效 安裝 機制 global MariaDB數據庫管理系統是MySQL的一個分支,主要由開源社區在維護,采用GPL授權許可。開發這個分支的原因之一是:甲骨文公司收購了MySQL後,有將MySQL閉源的潛在風險,因此社區采

MYSQL主從與讀寫分離

amp pan 滿足 art 5.1 tap sta 訪問服務器 方式 在實際生產環境中,如果對數據庫的讀和寫都在同一個數據庫服務器中操作,無論是安全性,高可用性,還是高並發性等各個方面都是不能滿足實際需求,因此,一般來說都是通過主從復制的方式來同步詩句,再通過讀寫分離來提