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 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP で MySQL データベースのマスター/スレーブ レプリケーションを実装する方法 PHP で MySQL データベースのマスター/スレーブ レプリケーションを実装する方法 May 17, 2023 am 08:18 AM

インターネットの急速な発展に伴い、Web アプリケーションにはデータベース操作がますます統合されています。 MySQL は、広く使用されている世界的に有名なリレーショナル データベース システムです。同時実行性の高い Web アプリケーションでは、MySQL のマスター/スレーブ レプリケーションはデータベースのパフォーマンスと可用性を向上させる重要な方法です。この記事では、PHP を使用して MySQL データベースのマスター/スレーブ レプリケーションを実装する方法を紹介します。 1. MySQL マスター/スレーブ レプリケーションとは何ですか? MySQL マスター/スレーブ レプリケーションとは、ある MySQL データベース サーバーから別のサーバーにデータをコピーすることを指します。

高可用性 MySQL クラスターの構築: マスター/スレーブ レプリケーションとロード バランシングのベスト プラクティス ガイド 高可用性 MySQL クラスターの構築: マスター/スレーブ レプリケーションとロード バランシングのベスト プラクティス ガイド Sep 09, 2023 am 10:57 AM

高可用性 MySQL クラスターの構築: マスター/スレーブ レプリケーションとロード バランシングのベスト プラクティス ガイド 近年、インターネットの急速な発展に伴い、データベースはほとんどの Web アプリケーションにとって中核となるデータ ストレージおよび処理エンジンの 1 つになりました。このシナリオでは、高可用性と負荷分散がデータベース アーキテクチャ設計における重要な考慮事項になります。最も人気のあるオープンソース リレーショナル データベースの 1 つとして、MySQL のクラスター展開ソリューションは大きな注目を集めています。この記事では、MySQL のマスター/スレーブ レプリケーションと負荷分散を通じて高可用性データベース クラスターを実装する方法を紹介します。

MySQL のデータ マスター/スレーブ レプリケーション テクノロジ MySQL のデータ マスター/スレーブ レプリケーション テクノロジ Jun 14, 2023 pm 02:10 PM

MySQL データベースは、さまざまなデータ レプリケーション テクノロジをサポートする非常に人気のあるリレーショナル データベース管理システムであり、その中でより一般的に使用されるのはマスター/スレーブ レプリケーション テクノロジです。この記事では、MySQL のデータマスタースレーブレプリケーション技術について、原理、実装方法、よくある問題と対策などを含めて紹介します。 1. マスタースレーブレプリケーション技術の原理 MySQL のマスタースレーブレプリケーション技術は、MySQL データベースのデータを他のサーバーにコピーして、データのバックアップ、負荷分散、読み書き分離などの機能を実現します。その基本原理は、メインデータベースを変換することです。

Redisのマスタースレーブレプリケーション機能を詳しく解説 Redisのマスタースレーブレプリケーション機能を詳しく解説 May 11, 2023 am 10:00 AM

Redis は、キャッシュ、キューイング、リアルタイム データ処理などのシナリオで一般的に使用される、オープン ソースのメモリ ベースのキーと値のストレージ システムです。大規模なアプリケーションでは、Redis の可用性とパフォーマンスを向上させるために、マスター/スレーブ レプリケーションが一般的に使用されるメカニズムである分散アーキテクチャを採用する必要があることがよくあります。この記事では、Redis のマスター/スレーブ レプリケーション機能について、定義、原理、構成、適用シナリオを含めて紹介します。 1. Redis マスター/スレーブ レプリケーションの定義は、1 つの Redis ノード (つまりマスター ノード) のデータを他のノード (つまり スレーブ ノード) に自動的に同期することを指します。

MySQL データベースのマスター/スレーブ レプリケーションを構成するにはどうすればよいですか? MySQL データベースのマスター/スレーブ レプリケーションを構成するにはどうすればよいですか? Jul 13, 2023 pm 10:05 PM

MySQL データベースのマスター/スレーブ レプリケーションを構成するにはどうすればよいですか? MySQL データベースのマスター/スレーブ レプリケーションは、一般的なデータ バックアップおよび高可用性ソリューションです。マスター/スレーブ レプリケーションを構成すると、ある MySQL サーバー (マスター サーバー) から別の MySQL サーバー (スレーブ サーバー) にデータを同期できるため、データベースの可用性とパフォーマンスが向上します。以下では、MySQL データベースでマスター/スレーブ レプリケーションを構成する方法を説明し、対応するコード例を示します。 MySQL サーバーがインストールされ、起動していることを確認する まず、MySQL がシステムにインストールされていることを確認します。

クラスター モードでのロード バランシングと災害復旧: MySQL マスター/スレーブ レプリケーションの詳細な分析と実践 クラスター モードでのロード バランシングと災害復旧: MySQL マスター/スレーブ レプリケーションの詳細な分析と実践 Sep 11, 2023 pm 05:51 PM

クラスター モードでのロード バランシングと災害復旧: MySQL マスター/スレーブ レプリケーションの詳細な分析と実践 インターネット業界の急速な発展に伴い、データのストレージと処理に対する需要はますます高まっています。高い同時アクセスと大規模なデータ ストレージに対応して、クラスター モードが一般的なソリューションになりました。ロード バランシングとディザスタ リカバリはクラスタ システムの重要なコンポーネントであり、MySQL のマスター/スレーブ レプリケーションは広く使用されている方法です。この記事では、MySQL のマスター/スレーブ レプリケーションの原理に焦点を当て、クラスター モードでのロード バランシングと災害復旧について詳しく説明します。

MySQL のマスター/スレーブ レプリケーションと高可用性アーキテクチャ MySQL のマスター/スレーブ レプリケーションと高可用性アーキテクチャ Sep 09, 2023 pm 12:03 PM

MySQL のマスター/スレーブ レプリケーションと高可用性アーキテクチャ インターネット アプリケーションとデータ量が増大し続けるにつれて、データベースの高可用性とスケーラビリティがますます重要になっています。 MySQL は、広く使用されているオープン ソース リレーショナル データベースとして、マスター/スレーブ レプリケーションと高可用性アーキテクチャ ソリューションを提供します。マスター/スレーブ レプリケーションとは、MySQL データベース インスタンスをマスター データベースとして使用し、そのデータを 1 つ以上のスレーブ データベース (スレーブ) に複製するプロセスを指します。このレプリケーション方式により、データの冗長バックアップと読み書きの分離が実現できます。

データの冗長化と拡張の実現:クラスタ環境におけるMySQLマスタースレーブレプリケーション技術の適用事例 データの冗長化と拡張の実現:クラスタ環境におけるMySQLマスタースレーブレプリケーション技術の適用事例 Sep 08, 2023 pm 04:36 PM

データの冗長性と拡張性の実現: クラスタ環境における MySQL マスター/スレーブ レプリケーション テクノロジーの適用事例 はじめに: インターネットの発展、データ量の増加、ユーザー数の増加に伴い、従来のスタンドアロン データベースでは要件を満たせなくなりました。高い同時実行性と高可用性が必要です。この文脈において、分散データベースは一般的なソリューションの 1 つとなっています。 MySQL のマスター/スレーブ レプリケーション テクノロジは、最も一般的に使用されているリレーショナル データベースの 1 つとして、分散データベースでも広く注目されています。この記事では、クラスタ環境における MySQL のマスター/スレーブ レプリケーション テクノロジを紹介します。

See all articles