ホームページ システムチュートリアル Linux MariaDB でマスター/スレーブ レプリケーションを構成する方法

MariaDB でマスター/スレーブ レプリケーションを構成する方法

May 01, 2024 pm 01:49 PM
mysql linux Linuxチュートリアル レッドハット Linuxシステム Linuxコマンド Linux 認定 レッドハットリナックス Linuxビデオ

如何在 MariaDB 中配置主从复制

前のチュートリアルでは、MariaDB[1]をインストールして構成する方法を学び、MariaDB[2]を管理するための基本的なコマンドも学びました。次に、MariaDB サーバー上でマスター/スレーブ レプリケーションを構成する方法を学びましょう。

レプリケーションは、データベースの複数のコピーを作成するために使用されます。これらのコピーは、メイン データベース サーバーのパフォーマンスに影響を与える可能性のある非常に重いクエリなど、他のデータベースでクエリを実行するために使用したり、データの冗長性のために使用したりできます。上記の両方の目的。このプロセスは自動化できます。つまり、マスター サーバーからスレーブ サーバーへのレプリケーション プロセスが自動的に実行されます。プライマリ サーバーへの書き込みに影響を与えずにバックアップを実行します。

それでは、マスター/スレーブ レプリケーションを構成しましょう。これには、MariaDB がインストールされた 2 台のマシンが必要です。彼らの IP アドレスは次のとおりです:

  • マスターサーバー - 192.168.1.120 ホスト名 - master.ltechlab.com
  • スレーブサーバー - 192.168.1.130 ホスト名 - smile.ltechlab.com

これらのマシンに MariaDB をインストールしたら、チュートリアルを続けましょう。 MariaDB のインストールと構成に関するチュートリアルが必要な場合は、このチュートリアル[3]をチェックしてください。

ステップ 1 - マスターサーバーの構成

ここで、MariaDB に important という名前のデータベースを入力します。これはスレーブ サーバーにコピーされます。プロセスを開始するには、MariaDB の構成ファイルである /etc/my.cnf というファイルを編集します。

リーリー

このファイルの [mysqld] セクションを見つけて、次のように入力します。

リーリー

このファイルを保存して終了します。完了後、MariaDB サービスを再起動する必要があります。

リーリー

次に、メインサーバーの Mariadb インスタンスにログインします。

リーリー

マスター/スレーブレプリケーション用に slaveuser という名前の新しいユーザーを作成し、次のコマンドを実行して必要な権限を割り当てます。 リーリー

注: マスター/スレーブレプリケーションを構成するには、MASTER_LOG_FILEMASTER_LOG_POSの値が必要です。これは、show master statusで取得できるため、それらの値を必ず書き留める必要があります。

これらのコマンドを実行した後、「

exit」と入力してこのセッションを終了します。

ステップ 2 - データベースのバックアップを作成し、スレーブ サーバーに移動します
ここで、データベースのバックアップを作成する必要があります

重要 バックアップには mysqldump コマンドを使用できます。 リーリー

バックアップが完了したら、MariaDB データベースに再度ログインし、テーブルのロックを解除する必要があります。

リーリー

その後、このセッションを終了します。次に、作成したばかりのバックアップを、IP アドレスが 192.168.1.130 であるスレーブ サーバーに移動します。

マスターサーバーの設定が完了しました。次に、スレーブサーバーの設定を開始します。

ステップ 3: スレーブサーバーを構成する

我们再次去编辑(从服务器上的) /etc/my.cnf 文件,找到配置文件中的 [mysqld] 节,然后输入如下内容:

[mysqld]
server-id = 2
replicate-do-db=important
[ …]

现在,我们恢复我们主数据库的备份到从服务器的 MariaDB 上,运行如下命令:

$ mysql -u root -p < /data/ important_backup.sql

当这个恢复过程结束之后,我们将通过登入到从服务器上的 MariaDB,为数据库 important 上的用户 'slaveuser' 授权。

$ mysql -u root -p
GRANT ALL PRIVILEGES ON important.* TO 'slaveuser'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

接下来,为了这个变化生效,重启 MariaDB。

$ systemctl restart mariadb
第 4 步:启动复制

记住,我们需要 MASTER_LOG_FILEMASTER_LOG_POS 变量的值,它可以通过在主服务器上运行 SHOW MASTER STATUS 获得。现在登入到从服务器上的 MariaDB,然后通过运行下列命令,告诉我们的从服务器它应该去哪里找主服务器。

STOP SLAVE;
CHANGE MASTER TO MASTER_HOST= '192.168.1.110′, MASTER_USER='slaveuser', MASTER_PASSWORD='iamslave', MASTER_LOG_FILE='mariadb-bin.000001′, MASTER_LOG_POS=460;
SLAVE START;
SHOW SLAVE STATUS\G;

注意: 请根据你的机器的具体情况来改变主服务器的配置。

第 5 步:测试复制

我们将在我们的主服务器上创建一个新表来测试主从复制是否正常工作。因此,登入到主服务器上的 MariaDB。

$ mysql -u root -p

选择数据库为 important

use important;

在这个数据库上创建一个名为 test 的表:

create table test (c int);

然后在这个表中插入一些数据:

insert into test (c) value (1);

检索刚才插入的值是否存在:

select * from test;

你将会看到刚才你插入的值已经在这个新建的表中了。

现在,我们登入到从服务器的数据库中,查看主从复制是否正常工作。

$ mysql -u root -p
$ use important;
$ select * from test;

你可以看到与前面在主服务器上的命令输出是一样的。因此,说明我们的主从服务工作正常,没有发生任何问题。

我们的教程结束了,请在下面的评论框中留下你的查询/问题。


以上がMariaDB でマスター/スレーブ レプリケーションを構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

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

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

ホットトピック

Linuxをインストールするためのシステム要件 Linuxをインストールするためのシステム要件 Jul 20, 2025 am 03:49 AM

linuxcanrunonModesthardwarewithspecificminimumrequirements.a1ghzprocessor(x86orx86_64)が必要であり、 amshouldbeatleast512mbforcommand-lineuseor2gbfordesktopenvironments.diskspacerequiresaminimumof5–10gb、25gbisbetterforad

PHPコンテナを自動構造をサポートする方法は? PHP環境の継続的に統合されたCI構成方法 PHPコンテナを自動構造をサポートする方法は? PHP環境の継続的に統合されたCI構成方法 Jul 25, 2025 pm 08:54 PM

PHPコンテナが自動構造をサポートできるようにするために、コアは連続統合(CI)プロセスの構成にあります。 1. DockerFileを使用して、基本的な画像、拡張インストール、依存関係管理、許可設定など、PHP環境を定義します。 2. GitlabciなどのCI/CDツールを構成し、.gitlab-ci.ymlファイルを介してビルド、テスト、展開段階を定義して、自動構造、テスト、展開を実現します。 3. phpunitなどのテストフレームワークを統合して、コードの変更後にテストが自動的に実行されることを確認します。 4. Kubernetesなどの自動展開戦略を使用して、deployment.yamlファイルを介して展開構成を定義します。 5. DockerFileを最適化し、マルチステージ構造を採用します

ビットコインのコード番号は何ですか?ビットコインはどのスタイルのコードですか? ビットコインのコード番号は何ですか?ビットコインはどのスタイルのコードですか? Jul 22, 2025 pm 09:51 PM

デジタルの世界の先駆者として、ビットコインのユニークなコード名と基礎となるテクノロジーは、常に人々の注目の焦点でした。その標準コードはBTCであり、国際標準を満たす特定のプラットフォームでXBTとしても知られています。技術的な観点からは、ビットコインは単一のコードスタイルではなく、巨大で洗練されたオープンソースソフトウェアプロジェクトです。そのコアコードは主にCで記述されており、暗号化、分散システム、経済学の原則が組み込まれているため、誰でもコードを表示、レビュー、貢献できます。

「シャットダウン」コマンドを使用する方法 「シャットダウン」コマンドを使用する方法 Jul 15, 2025 am 12:26 AM

Linux/MacOSのシャットダウンコマンドは、パラメーターを介してシャットダウン、再起動、およびタイミング操作を行うことができます。 1.すぐにマシンをオフにし、sudoshutdownnowまたは-h/-pパラメーターを使用します。 2。シャットダウンに時間または特定の時点を使用して、-cの使用をキャンセルします。 3. -Rパラメーターを使用して再起動し、タイミングの再開をサポートします。 4. SUDO許可の必要性に注意し、リモート操作に注意し、データの損失を避けてください。

独立したPHPタスクコンテナ環境を構築する方法。 PHPタイムタイムスクリプトを実行するためにコンテナを構成する方法 独立したPHPタスクコンテナ環境を構築する方法。 PHPタイムタイムスクリプトを実行するためにコンテナを構成する方法 Jul 25, 2025 pm 07:27 PM

独立したPHPタスクコンテナ環境の構築は、Dockerを通じて実装できます。特定の手順は次のとおりです。1。基礎としてDockerとDockerMomposeをインストールします。 2。DockerFileおよびCrontabファイルを保存するための独立したディレクトリを作成します。 3. dockerfileを書き込み、phpcli環境を定義し、cronと必要な拡張機能をインストールします。 4.タイミングタスクを定義するためにCrontabファイルを書きます。 5。Docker-Compose.ymlマウントスクリプトディレクトリを作成し、環境変数を構成します。 6.コンテナを起動し、ログを確認します。 Webコンテナでタイミングタスクを実行するのと比較して、独立したコンテナには、リソースの分離、純粋な環境、強力な安定性、容易な拡張の利点があります。ロギングとエラーキャプチャを確保するため

Linuxでハードドライブを安全に消去する方法 Linuxでハードドライブを安全に消去する方法 Jul 24, 2025 am 12:08 AM

ターゲットハードディスクデバイス名( /dev /sdaなど)を確認して、システムディスクの誤って削除しないようにします。 2。sudoddif=/dev/zeroof =/dev/sdxbs = 1mStatus = 1mStatusを使用して、ほとんどのシナリオに適したフルディスクのゼロ値を上書きします。 3. 3つのランダムデータ上書きにSudoshred-V-N3/DEV/SDXを使用して、復元できないことを確認します。 4.オプションで、破壊的な書き込みテストのためにsudobadblocks-wsv/dev/sdxを実行します。最後に、sudohexdump-c/dev/sdx |ヘッドを使用して、それがすべてゼロで完全な安全な消去であるかを確認します。

Linuxでコマンドのヘルプを取得する方法は? Linuxでコマンドのヘルプを取得する方法は? Jul 17, 2025 am 12:55 AM

Linuxでコマンドヘルプを取得するには4つの方法があります。まず、使用して基本的な使用法を表示します。これは、コマンドの一般的なオプションとパラメーターを迅速に理解するのに適しています。第二に、Manを使用して完全なManページを表示し、詳細なコマンドの説明と例を提供します。第三に、情報を使用して構造化されたヘルプを表示します。これは、GCCやMakeなどの複雑なコマンドの情報ナビゲーションに適しています。第4に、Linux China、Stackoverflow、その他のプラットフォームなどのネットワークリソースとコミュニティを参照して、中国の材料を取得したり、特定の問題を解決したりします。初心者が - ヘルプとマンから段階的にそれを習得することをお勧めします。

Linuxにユーザーを追加する方法 Linuxにユーザーを追加する方法 Jul 21, 2025 am 03:32 AM

Linuxのユーザーが一般的に使用するUserAddまたはAdduserコマンドを追加します。 1. userAddを使用する場合、パスワードとホームディレクトリを手動で設定する必要があります。 -mパラメーターを追加して、ホームディレクトリを作成します。 2。-s、-g、および-uなどのパラメーターを使用して、シェル、グループ、およびUIDを指定できます。 3. Adduserはインタラクティブなコマンドであり、初心者が構成を自動的に完了するのに適しています。 4。権限、ユーザー名の一意性、およびホームディレクトリの権限に注意してください。 5。ユーザーデルを使用して、誤ってユーザーとホームディレクトリを削除できます。これらの重要なポイントをマスターすると、ユーザーを効率的かつ安全に管理できます。

See all articles