MySQLマスタースレーブデータベースの同期設定

MySQLマスタースレーブデータベースの同期設定

1.サービスアイテムを開きます

ここに画像の説明を挿入します

ここに画像の説明を挿入します
インストール場所
ここに画像の説明を挿入します
見つけてコピーを作成します
ここに画像の説明を挿入します

2.データベースからミニファイルを変更します

見つからない場合があります。これは、デフォルトのインストールを使用すると、ファイルが隠しフォルダーに保存されるためです。ファイル表示の隠しファイル設定を自分で設定する必要があります。
次に、programDataフォルダーの下にあるmysqlフォルダーを見つけて、
ここに画像の説明を挿入します
ポート番号変更するにはコピーします。
ここに画像の説明を挿入します
ここに画像の説明を挿入します

スレーブデータベースのアドレス
ここに画像の説明を挿入します
変更するスレーブデータベースのデータストレージのアドレス変更する
ここに画像の説明を挿入します

3.データベースからインストールします

スレーブデータベースのbinディレクトリを入力し、コマンドウィンドウを開きます。コマンドを
入力し
mysqld install mysql-back --defaults-file= "C:\ProgramData\MySQL\MySQL Server 5.7-back\my.ini"
ます後で指定するmy.iniのファイルアドレス、独自に変更します。
インストールが成功した場合は
ここに画像の説明を挿入します
、サービスで更新して確認します。これはデータのインストールであり、開始されません。フォローアップも構成する必要があり、最終的に開始します。
ここに画像の説明を挿入します

4.マスターデータベースとスレーブデータベースのmy.iniを変更して関連付けます

メインデータベースの変更

# 开启日志
log-bin=mysql-bin

プライマリデータベースのserver-idを確認してください。セカンダリデータベースは、プライマリデータベースと同じ構成になっていない必要があります。
ここに画像の説明を挿入します
同期するデータベースを設定し、システムデータベースを保護します。

# 设置需要同步的数据库
binlog-do-db=temporary

# 屏蔽系统库同步
binlog-ignore-db=mysql
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema

データベースから変更する
server-id = 2
ここに画像の説明を挿入します

# 开启日志
log-bin=mysql-bin

# 设置需要同步的数据库
replicate_wild_do_table=temporary.%

# 屏蔽系统库同步
replicate_wild_ignore_table=mysql.%
replicate_wild_ignore_table=information_schema.%
replicate_wild_ignore_table=performance_schema.%

5.マスタースレーブデータベースを再起動します

ここに画像の説明を挿入します
ソフトウェアを使用してスレーブデータベースに接続します。
ここに画像の説明を挿入します
スレーブデータベースに
ここに画像の説明を挿入します
データがあり、現時点ではデータが同期されていないことがわかります。権限がないため、マスターデータベースで認証と設定を行う必要があります。

6.認証設定

GRANT REPLICATION SLAVE ON *.* TO '新建账户名'@'%'IDENTIFIED BY '新建的账户名(作为密码使用)';
更新
FLUSH PRIVILEGES;

ここに画像の説明を挿入します
ユーザーテーブルにout_right承認済みアカウントがあります
ここに画像の説明を挿入します

7.同期をオンにします

上記の操作により、スレーブデータベースとマスターデータベースのデータ構造は同じになりますが、データテーブルの挿入と削除時にデータが同期されません。データ同期設定は次のとおりです。

7.1メインデータベースのデータステータスを表示する

マスターデータベースで実行されている
show master status
ファイルと位置の値は、スレーブデータベースの設定で使用する必要があります

ここに画像の説明を挿入します

7.2データベースからの設定

最初に同期を停止
stop SLAVE;
ここに画像の説明を挿入します
し、データベースから実行します

メインデータベースに接続して同期の準備をします

CHANGE MASTER TO
# 主数据库地址
MASTER_HOST = 'localhost',
#授权的用户名和密码
MASTER_USER = 'out_right',
MASTER_PASSWORD = 'out_right',
#刚才查询的主数据库信息
MASTER_log_file = 'mysql-bin.000001',
MASTER_log_pos = 446;

ここに画像の説明を挿入します

同期の開始:
START SLAVE;
ここに画像の説明を挿入します
同期ステータスの表示
show SLAVE STATUS;

ここに画像の説明を挿入します

6.3違いはyesによって解決されます

スレーブデータベースのauto.cnfファイルはマスターデータベースに直接割り当てられているため、競合が発生し、スレーブデータベースのauto.cnfファイルを削除して、スレーブデータベースを再起動します。
ここに画像の説明を挿入します

ここに画像の説明を挿入します
サービスを再起動し
ここに画像の説明を挿入します
、ステータスについて問い合わせます。
stop slave;
start slave;
show slave status;

ここに画像の説明を挿入します

おすすめ

転載: blog.csdn.net/Guesshat/article/details/109384732