MariaDBマスタースレーブレプリケーションの仮想マシンの実際の戦闘

MariaDBのプロフィール:

  MariaDBのMySQLデータベース管理システムは、主にメンテナンスにおけるオープンソースコミュニティによって、支店で、GPLを使用する目的は、それが簡単にMySQLの代わりになることができるようにMariaDBは、APIやコマンドラインなど、MySQLの、と完全に互換性があるライセンスさ。代わりに、MySQLのInnoDBは:ストレージエンジンの面では、XtraDB(XtraDB英語)を使用します。MySQLの創設者マイケル・ウィデニアスによってMariaDB:大手開発(英語マイケル・ウィデニアス)、彼は価格以前の$ 10億与え、彼が始めた会社のMySQL ABは、Oracle、MySQLの買収により日で、その後、日を売却しました所有権は、Oracleの手に落ちます。マリアの名前の娘からMariaDBマイケル・ウィデニアス名。

  MariaDBベースのトランザクション・マリアのストレージエンジンは、交換のMySQLMyISAMテーブルのストレージエンジンは、それが開発者の枝が今後の訪問のMySQLの5.4 InnoDBのパフォーマンスを提供したい、XtraDB Percona、InnoDBのバリアントを使用しています。このバージョンは、PrimeBase XT(PBXT)とFederatedXを含むストレージ・エンジン

 

インストールは、以下のリンクを参照してください。

https://www.cnblogs.com/zhanzhan/p/7729981.html

仮想IP情報:

メインライブラリ(ライト・ライブラリー):192.168.147.200

ライブラリー(読書ライブラリ)から:192.168.147.201

私は、マスタースレーブモードであり、ここで使用しています。二つの仮想マシンにインストールされているすべてのmariadbは、マスター・スレーブ複製することができた後。

主なライブラリ:

  次のようにmariadbは、テスト用のデータベースを作成し、ユーザーのテーブルを作成しログインした後、その後、いくつかのデータを挿入し、コマンドは次のとおりです。

> MySQLの-uroot -p 

パスワードを入力する:

>データベースのテストを作成します。

>ショーのデータベース;

>テストを使用します。

>表のユーザ(IDはint(11)、名前VARCHAR(255))を作成します。

>ショーテーブル。

>ユーザ値(1、「暁」)に挿入します。

>ユーザ値(2、 "xiaowang")に挿入します。

>ユーザーから*を選択します。

 

 出口mariadbコンソールからエクスポートおよびインポートプライマリ・データベース・リポジトリ・データベース内のデータのシェルで以下のコマンドを使用:

> mysqldumpを-uroot -p --opt --all-データベース> /mydata.sql

パスワードを入力する:

> SCP -r /mydata.sql [email protected]:/ 

パスワードを[email protected]'s:

データベースサーバのパスワードと古いデータの成功をコピーするには、メインのライブラリを入力します。

ライブラリから:

MySQLの-uルート-p </mydata.sql

パスワードを入力する: 

ライブラリmariadbの成功からインポートパスワードを入力します(あなたがデータベースに見ることができます)。

 主なライブラリ:

>私たちはな/etc/my.cnf

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
server_id=1#主机的标识
log-bin=mysql-bin#确保可写入的日志文件
binlog_format=mixed#二进制日志的格式,
binlog-do-db=test#允许主从复制数据库
binlog-ignore-db=mysql#不允许主从复制的数据库

切记是在[mysqld]下配置要复制的数据库和binlog相关信息,保存退出后进行从库授权

>grant replication slave on *.* to slave@'192.168.147.201' identified by '123456';

重启主库mariadb:

>systemctl restart mariadb;

从库:

>vi /etc/my.cnf

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
server_id=2#从机的标识
log-bin=mysql-bin#确保可写入的日志文件
binlog_format=mixed#二进制日志的格式,
replicate_wild_do_table=test.%#要同步的数据库
replicate_wild_ignore_table=mysql.%#不允许主从复制的数据库

切记是在[mysqld]下进行binlog和要复制的数据库配置,保存后退出。

重启从库mariadb:

> systemctl restart mariadb;

主库:

>mysql -uroot -p

Enter password: 

> show master status;

 上面的信息将在从库中用到。

从库:

 >mysql -uroot -p

Enter password:

>change master to master_host='192.168.147.200',master_user='slave',master_password='123456',master_log_file='mysql-bin.000002',master_log_pos=245;

>start slave;

>show slave status\G

若看到2个红色箭头都是yes,则主从同步成功。

接下来我们进行主从复制测试。

主库:

>mysql -uroot -p 

Enter password: 

>use test;

>select * from user;

>insert into user values(3,"zhangsan");

>select * from user;

我们来到从库看看:

从库:

可见主从复制成功。

如果此时关闭主库服务器,在从库上使用show slave status\G,将提示:

Last_IO_Error: error reconnecting to master '[email protected]:3306' - retry-time: 60  retries: 86400  message: Can't connect to MySQL server on '192.168.147.200' (111)

参考:

https://baike.baidu.com/item/mariaDB/6466119?fr=aladdin

https://blog.csdn.net/qq_41772936/article/details/80380950

おすすめ

転載: www.cnblogs.com/stm32stm32/p/11246912.html