メインCENTOS7からMySQLのインストールyumを

メインCENTOS7からMySQLのインストールyumを

初期の環境

192.168.1.8マスター

192.168.1.9スレーブ

ファイアウォールをオフにします

systemctlストップfirewalld

setenforce 0

MySQLをインストールします。

yumをmariadb mariadb-サーバーをインストール-y

編集マスターmy.conf

サーバID = 1

ログ・ビン= mysqlのビン

启动数据库

systemctlスタートmariadb

データベースへのアクセス

mysqlの

地元の作成

*上のすべてを許可*に「slave'@'192.168.1.15」「123」によって識別されます。

フラッシュ権限;

マスターのステータスを表示。

+------------------+----------+--------------+---------------------------------------------+
| File         | Position | Binlog_Do_DB | Binlog_Ignore_DB                  |
+------------------+----------+--------------+---------------------------------------------+
| mysql-bin.000003 |    459 |         | information_schema,performance_schema,mysql |
+------------------+----------+--------------+---------------------------------------------+

 

 

別のものを入力します。

編集スレーブのmy.cnf

log-bin=myql-bin
server-id=2
データベースを起動します
systemctlスタートmariadb
データベースへのアクセス
mysqlの
編集します
変更マスタMASTER_HOSTへ=「192.168.1.15」
master_user = 'スレーブ'、
master_password = '123456'、
MASTER_LOG_FILE = 'mysqlの-bin.000003'、
MASTER_LOG_POS = 459;
 
スレーブがスタート。
 
G \ショースレーブステータス;

*************************** 1. row ***************************

       Slave_IO_State: Waiting for master to send event

           Master_Host: 192.168.1.8

           Master_User: slave

           Master_Port: 3306

          Connect_Retry: 60

        Master_Log_File: mysql-bin.000003

      Read_Master_Log_Pos: 459

         Relay_Log_File: mariadb-relay-bin.000002

         Relay_Log_Pos: 529

   Relay_Master_Log_File: mysql-bin.000003

       Slave_IO_Running: Yes

     Slave_SQL_Running: Yes

    (ここでは、成功した、二重そうであるように思わなければなりません)

 
 
************************************************** ***************

1、なステートメントモードは:、ベースのSQLステートメント(ステートメントベースのレプリケーション、SBR)をコピー

各修正するデータのSQLステートメントはバイナリログに記録されます。

長所:パフォーマンスを改善するために、ディスクIOを減らし、このログのbinlogは比較的小さくなりますように、各ライン内のすべてのSQL文とデータ変更を記録する必要はありません。

缺点:在某些情况下会导致master-slave中的数据不一致(如sleep()函数, last_insert_id(),以及user-defined functions(udf)等会出现问题)

 

2、基于行的复制(row-based replication, RBR):

不记录每一条SQL语句的上下文信息,仅需记录哪条数据被修改了,修改成了什么样子了。(不记录sql执行过程,只记录结果!)

优点:不会出现某些特定情况下的存储过程、或function、或trigger的调用和触发无法被正确复制的问题。

缺点:会产生大量的日志,尤其是alter table的时候会让日志暴涨。

 

3、混合模式复制(mixed-based replication, MBR):以上两种模式的混合使用,

一般的复制使用STATEMENT模式保存binlog,对于STATEMENT模式无法复制的操作使用ROW模式保存binlog,MySQL会根据执行的SQL语句选择日志保存方式。

 

mysql 主从复制的作用:

  1、主数据库出现问题,可以切换到从数据库。

  2、可以进行数据库层面的读写分离。

  3、可以在从数据库上进行日常备份

 
            
 
 

おすすめ

転載: www.cnblogs.com/fanzai/p/12572338.html