どのようにUbuntu 16.04の下でMySqlのGRを使うか?
はじめに
この記事は主にピュアなシステムからMySql 5.7.17をインストールする方法を記録し、GRを使用して、自分の後期の閲覧と共有を容易にする。
二、mysqlを取り付ける
デフォルトのuuntuのソースは最新のmysqlではないので、次のような手順で最新のインストールパッケージをインストールする必要があります。もちろんここで使うアプリをインストールします。
1.アプリ倉庫をダウンロードする
sudo wget https://repo.mysql.com//mysql-apt-config_0.8.3-1_all.deb
2.app倉庫の設置
sudo dpkg-i mysql-ap-config_0.8.3-1_all.deb
インストール中にバージョンを選択するインターフェースが現れます。ここでは最初のバージョンを5.7で選択すればいいです。もちろん8.0を選択してもいいです。
3.apt倉庫をアップグレードし、mysqlをインストールする
三、GRを開く
1.設定の変更
まず、/etc/mysql/下のmy.cnf設定を開き、以下の構成情報を書き込みます。
以上の操作を完了したら、mysqlサービスを再開します。
まず現在のデータベースに接続します。
3.プラグインのインストール
私達は引き続き対応するsql文を実行します。
最終的なGRを開く前に対応するhostsを修正して、ホスト名とIPを対応させます。そうでないと、後ろは他のノードに接続する時に接続できなくなります。mysqlはホスト名に依存して接続します。
ホームを開く
sudo vim/etc/hosts
下記の内容を書き込みます。
5.GRを開く
以下の方式はメインノードのオープンモードです。
現在どのノードがメインノードなのか調べられます。
以上述べたように、Ubuntu 16.04でMySqlを使っているGRを紹介しました。皆さんに何か質問があれば、メッセージをください。編集者はすぐに返事します。ここでも私たちのサイトを応援してくれてありがとうございます。
この記事は主にピュアなシステムからMySql 5.7.17をインストールする方法を記録し、GRを使用して、自分の後期の閲覧と共有を容易にする。
二、mysqlを取り付ける
デフォルトのuuntuのソースは最新のmysqlではないので、次のような手順で最新のインストールパッケージをインストールする必要があります。もちろんここで使うアプリをインストールします。
1.アプリ倉庫をダウンロードする
sudo wget https://repo.mysql.com//mysql-apt-config_0.8.3-1_all.deb
2.app倉庫の設置
sudo dpkg-i mysql-ap-config_0.8.3-1_all.deb
インストール中にバージョンを選択するインターフェースが現れます。ここでは最初のバージョンを5.7で選択すればいいです。もちろん8.0を選択してもいいです。
3.apt倉庫をアップグレードし、mysqlをインストールする
sudo apt-get update
sudo apt-get install mysql-server
これまで最新のMySqlバージョンをインストールしました。以下はキーの配置部分です。まず通読してください。直接に上に上がってこないでください。三、GRを開く
1.設定の変更
まず、/etc/mysql/下のmy.cnf設定を開き、以下の構成情報を書き込みます。
server_id=1
bind-address=0.0.0.0
gtid_mode=ON
enforce_gtid_consistency=ON
master_info_repository=TABLE
relay_log_info_repository=TABLE
binlog_checksum=NONE
log_slave_updates=ON
log_bin=binlog
binlog_format=ROW
transaction_write_set_extraction=XXHASH64
loose-group_replication_group_name="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"
loose-group_replication_start_on_boot=off
loose-group_replication_local_address= "10.0.0.4:24901"
loose-group_replication_group_seeds= "10.0.0.4:24901,10.0.0.5:24902,10.0.0.6:24903"
loose-group_replication_bootstrap_group= off
ここで説明したい構成があります。その中に「server_」というものがあります。ID」はマシンごとに異なることを保証し、IPアドレスの第四部分を直接使用できるようにしてください。「loose-group_」replication_グループnam」は各マシンで一致しています。これは一つのグループの標識と同じです。残りのもう一つの違いはパラメータ「loose-group_」です。replication_local_addressこれは現在のマシンのIPアドレスとして指定しなければならないが、後ろのポートはGRが傍受する必要があるポートを表しています。他のマシンのパラメータ「loose-group_」を保証してください。replication_グループseeds」におけるマシンのIPアドレスとポートは、任意にこのポートを修正することができる(このポートはmysqlデフォルトの3306ポートから独立している)。以上の操作を完了したら、mysqlサービスを再開します。
sudo service mysql restart
2.新規ユーザまず現在のデータベースに接続します。
mysql -u root -p
以下のsql文を実行します。
mysql> SET SQL_LOG_BIN=0;
mysql> CREATE USER rpl_user@'%';
mysql> GRANT REPLICATION SLAVE ON *.* TO rpl_user@'%' IDENTIFIED BY 'rpl_pass';
mysql> FLUSH PRIVILEGES; #
mysql> SET SQL_LOG_BIN=1;
mysql> CHANGE MASTER TO MASTER_USER='rpl_user', MASTER_PASSWORD='rpl_pass' FOR CHANNEL 'group_replication_recovery';
生産環境であれば、ユーザーが自分で対応するアカウントとパスワードを設定できます。ここではテストとして直接に公式の提供を使います。3.プラグインのインストール
私達は引き続き対応するsql文を実行します。
mysql> INSTALL PLUGIN group_replication SONAME 'group_replication.so';
現在プラグインがインストールされているかどうかを確認したいなら、以下の文で調べられます。
mysql> SHOW PLUGINS;
4.Hostsの配置最終的なGRを開く前に対応するhostsを修正して、ホスト名とIPを対応させます。そうでないと、後ろは他のノードに接続する時に接続できなくなります。mysqlはホスト名に依存して接続します。
ホームを開く
sudo vim/etc/hosts
下記の内容を書き込みます。
10.0.0.4 mysql-1
10.0.0.5 mysql-2
10.0.0.6 mysql-3
上の配置を完成したら退出して、私達はmysqlの中に入って引き続き実行します。5.GRを開く
以下の方式はメインノードのオープンモードです。
mysql> SET GLOBAL group_replication_bootstrap_group=ON;
mysql> START GROUP_REPLICATION;
mysql> SET GLOBAL group_replication_bootstrap_group=OFF;
従属ノードでは次の文を実行します。
mysql> START GROUP_REPLICATION;
現在成功しているかどうかを確認するなら、次のような文言で確認できます。
mysql> SELECT * FROM performance_schema.replication_group_members;
これまでの配置は全部終わりました。他の従属ノードは上記の手順で実行すればいいです。テストに対しては、メインノードにデータベースを新規作成し、テーブルを作成してデータを書き込む必要があります。他のデータベースも同期します。メインノードを閉じた後、以下の文を通じて現在どのノードがメインノードなのか調べられます。
mysql> select *from performance_schema.replication_group_members where member_id =(select variable_value from performance_schema.global_status WHERE VARIABLE_NAME= 'group_replication_primary_member');
Xmarin.Android->Xmarin.IOS->ミックス->Xmarin.Forms以上述べたように、Ubuntu 16.04でMySqlを使っているGRを紹介しました。皆さんに何か質問があれば、メッセージをください。編集者はすぐに返事します。ここでも私たちのサイトを応援してくれてありがとうございます。