首頁 資料庫 mysql教程 CentOS 6.3下MySQL主从复制笔记

CentOS 6.3下MySQL主从复制笔记

Jun 07, 2016 pm 05:29 PM
主從複製

MySQL主从复制结构是基于mysql bin-log日志基础上,从库通过打开IO进程收到主库的bin-log日志增量信息,并保存到本地relay log,而

      MySQL主从复制结构是基于mysql bin-log日志基础上,从库通过打开IO进程收到主库的bin-log日志增量信息,并保存到本地relay log,而后再通过打开MYSQL进程从relay log上获取的增量信息并翻译成SQL语句后写到从数据库。

      主从复制结构,实际上可以实现两个功能:

      1.从库充当主库的数据库备份实例

      2.读写分离,主库负责正常读写数据,从库只负责读数据

      实际生产环境,,因为很多应用实际读数据库的次数远大于写数据库的次数,所以在项目开发初期,编写程序时做一个判断,对所有读的操作全部推到从库,若从库无法获取数据,则再向主库获取数据,从而在一定意义上实现读写分离,缓解主库的IO压力。

      所以生产环境下推荐使用这种架构。


系统环境:CentOS6.3 x64

数据库:  mysql-5.6.10

 


mysql master:192.168.100.90

mysql slave:192.168.100.91

 

 

 

一.部署环境:


1.关闭iptables和SELINUX

# service iptables stop

# setenforce 0

# vi /etc/sysconfig/selinux

---------------

SELINUX=disabled

---------------

 


2.安装配置mysql传送门:

二.主mysql配置:(mysql master)

修改mysql配置文件:

# vi /etc/my.cnf

添加:

-----------------

# Replication Master Server

# bin日志路径

log-bin = /usr/local/mysql/log/bin.log

# 服务器ID号

server-id = 1

# 忽略mysql系统库复制

binlog-ignore-db=mysql

binlog-ignore-db=information_schema

------------

重启服务

# service mysqld restart


登录mysql后台:

# mysql -u root -p123456

查看此刻登录账号:

> select user();


在master为slave添加同步帐号:

> grant replication slave on *.* to 'slave'@'192.168.100.91' identified by '123456';


查看创建的用户:

> select user.host from mysql.user;


查看权限:

> show grants for 'slave'@'192.168.100.91';


mysql锁表只读(其他账户登录mysql后无法进行写表操作,防止备份数据库后,主mysql表更新,导致和从数据库内容不一致)

> flush tables with read lock;


查看锁表倒计时时间:

> show variables like '%timeout%';

------------------------

....


wait_timeout                | 28800

------------------------


将master的数据库表全部备份导出,并传送到slave服务器上。


# /usr/local/mysql/bin/mysqldump -u root -p123456 --opt  --flush-logs  --all-database > /root/allbak.sql

# cd ~

# scp allbak.sql root@192.168.100.91:/root


查看mysql偏移量(数据库如果有写操作,偏移值会递增)

# mysql -u root -p123456 -e "show master status"

----------------------

+------------+----------+--------------+------------------+-------------------+

| File      | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |

+------------+----------+--------------+------------------+-------------------+

| bin.000009 |    120 |              |                  |                  |

+------------+----------+--------------+------------------+-------------------+

----------------------

保证FILE列和Position列与从库配置一致:

linux

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PHP實作MySQL資料庫主從複製的方法 PHP實作MySQL資料庫主從複製的方法 May 17, 2023 am 08:18 AM

PHP實作MySQL資料庫主從複製的方法

建構高可用的MySQL叢集:主從複製與負載平衡的最佳實務指南 建構高可用的MySQL叢集:主從複製與負載平衡的最佳實務指南 Sep 09, 2023 am 10:57 AM

建構高可用的MySQL叢集:主從複製與負載平衡的最佳實務指南

MySQL中的資料主從複製技術 MySQL中的資料主從複製技術 Jun 14, 2023 pm 02:10 PM

MySQL中的資料主從複製技術

Redis的主從複製功能詳解 Redis的主從複製功能詳解 May 11, 2023 am 10:00 AM

Redis的主從複製功能詳解

如何配置MySQL資料庫的主從複製? 如何配置MySQL資料庫的主從複製? Jul 13, 2023 pm 10:05 PM

如何配置MySQL資料庫的主從複製?

MySQL中的主從複製和高可用架構 MySQL中的主從複製和高可用架構 Sep 09, 2023 pm 12:03 PM

MySQL中的主從複製和高可用架構

叢集模式下的負載平衡與災備:MySQL主從複製的深度解析與實踐 叢集模式下的負載平衡與災備:MySQL主從複製的深度解析與實踐 Sep 11, 2023 pm 05:51 PM

叢集模式下的負載平衡與災備:MySQL主從複製的深度解析與實踐

PHP實作Memcached資料庫主從複製的方法 PHP實作Memcached資料庫主從複製的方法 May 15, 2023 pm 06:40 PM

PHP實作Memcached資料庫主從複製的方法

See all articles