CentOS 6.3下MySQL主从复制笔记
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列与从库配置一致:

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

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

隨著互聯網的快速發展,Web應用程式越來越多地整合了資料庫操作。 MySQL作為一款世界知名的關聯式資料庫系統,使用廣泛。在高並發的Web應用中,MySQL主從複製是提高資料庫效能和可用性的重要方式。本文將介紹如何使用PHP實作MySQL資料庫主從複製。一、什麼是MySQL主從複製MySQL主從複製是指將一個MySQL資料庫伺服器的資料複製到另一個伺服器上

建立高可用的MySQL叢集:主從複製與負載平衡的最佳實踐指南近年來,隨著互聯網的快速發展,資料庫已成為大部分Web應用的核心資料儲存和處理引擎之一。在這個場景下,高可用性和負載平衡成為了資料庫架構設計中的重要考量。而MySQL作為最受歡迎的開源關係型資料庫之一,其叢集化部署方案備受關注。本文將介紹如何透過MySQL主從複製與負載平衡實現高可用的資料庫集群

MySQL資料庫是一種非常流行的關聯式資料庫管理系統,支援多種資料複製技術,其中較常用的是主從複製技術。本文將介紹MySQL中的資料主從複製技術,包括原理、實作方法、常見問題及因應措施等面向。一、主從複製技術的原理MySQL中的主從複製技術可以將一個MySQL資料庫的資料複製到其他伺服器上,以實現資料備份、負載平衡、讀寫分離等功能。它的基本原理是將主資料庫

Redis是一個開源的基於記憶體的鍵值儲存系統,常用於快取、佇列和即時資料處理等場景。在大規模應用時,為了提高Redis的可用性和效能,常常需要採用分散式架構,其中主從複製是常用的機制。本文將介紹Redis的主從複製功能,包括定義、原理、配置和應用場景等面向。一、定義Redis的主從複製是指將一個Redis節點(即主節點)的資料自動同步到其他節點(即從節點

如何配置MySQL資料庫的主從複製? MySQL資料庫的主從複製是一種常見的資料備份和高可用性解決方案。透過配置主從複製,可以實現將資料從一個MySQL伺服器(主伺服器)同步到另一個(從伺服器),從而提高資料庫的可用性和效能。以下將介紹如何在MySQL資料庫中設定主從複製,並提供對應的程式碼範例。確保MySQL伺服器安裝並啟動首先,確保你的系統中已經安裝了MyS

叢集模式下的負載平衡與災備:MySQL主從複製的深度解析與實務隨著網路產業的快速發展,資料儲存與處理的需求越來越高。在應對高並發存取和海量資料儲存的情況下,叢集模式成為了常見的解決方案。而負載平衡與災備則是叢集系統中的重要組成部分,其中MySQL主從複製更是一種被廣泛應用的方式。本文將深入探討叢集模式下的負載平衡與災備,並著重分析MySQL主從複製的原理

MySQL中的主從複製和高可用架構隨著互聯網應用和資料量的不斷增長,資料庫的高可用性和可擴展性變得越來越重要。 MySQL作為一種使用廣泛的開源關係型資料庫,提供了主從複製和高可用架構的解決方案。主從複製是指將一個MySQL資料庫實例作為主庫(master),並將其資料複製到一個或多個從庫(slave)的過程。這種複製的方式可以實現資料的冗餘備份以及讀寫分離,

Memcached是一個開源的高效能分散式記憶體物件快取系統,可用於加快web應用程序,尤其是在大規模資料快取方面表現良好。對於該系統而言,主從複製是一種非常重要的功能,它可以用於保證資料的可靠性和高可用性。本文將介紹如何使用PHP實作Memcached資料庫主從複製。主從模式介紹主從模式是Memcached伺服器的一種分散式結構,它由至少兩個伺服器組成:一個
