ホームページ  >  記事  >  運用・保守  >  分散データベース開発をサポートするための Linux システムの構成

分散データベース開発をサポートするための Linux システムの構成

WBOY
WBOYオリジナル
2023-07-04 08:24:091315ブラウズ

分散データベース開発をサポートするための Linux システムの構成

はじめに:
インターネットの急速な発展に伴い、データ量が劇的に増加し、データベースのパフォーマンスとスケーラビリティに対する要件も高まっています。そしてそれよりも高い。分散データベースは、この課題の解決策として登場しました。この記事では、分散データベース開発をサポートするために、Linux システムで分散データベース環境を構成する方法を紹介します。

1. Linux システムをインストールする
まず、Linux オペレーティング システムをインストールする必要があります。一般的な Linux ディストリビューションには、Ubuntu、CentOS、Debian などが含まれますが、その中でも Ubuntu は非常に人気のある選択肢です。公式 Web サイトからイメージ ファイルをダウンロードし、公式ドキュメントに従ってインストールできます。

2. データベース管理システムのインストールと構成

  1. まず、MySQL や PostgreSQL などのデータベース管理システムをインストールします。 Ubuntu を例に挙げると、次のコマンドを使用して MySQL をインストールできます:
sudo apt-get update
sudo apt-get install mysql-server
  1. インストールが完了したら、データベース サービスを開始し、起動時に自動的に開始するように設定します:
#
sudo systemctl start mysql
sudo systemctl enable mysql
  1. 分散環境に適応するようにデータベース管理システムのパラメータを構成します。 MySQL 構成ファイル /etc/mysql/mysql.conf.d/mysqld.cnf を開き、次のパラメータを変更します。
bind-address = 0.0.0.0

このパラメータにより、他のコンピュータが接続できるようになります。データベース管理システム。

  1. MySQL 設定ファイルをリロードして、変更を有効にします:
sudo systemctl reload mysql

3. マスター ノードとスレーブ ノードを設定します
分散データベースには、通常はマスター ノードです。 ノードとスレーブ ノードの 2 つの役割があります。マスター ノードはデータの書き込み操作とメイン クエリを処理するために使用され、スレーブ ノードはマスター ノードのデータを複製し、読み取り操作リクエストを処理するために使用されます。

  1. まず、マスター ノードをセットアップします。 MySQL コンソールにログインします:
  2. mysql -u root -p
新しいデータベース ユーザーを作成し、マスター ノードでの読み取りおよび書き込み権限を付与します:

CREATE USER 'user'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

    次に、スレーブをセットアップします。ノード。スレーブ ノードでもマスター ノードと同じ操作を実行し、マスター ノードと同じユーザーを作成し、ユーザーの権限を読み取り専用権限に設定します:
  1. CREATE USER 'user'@'%' IDENTIFIED BY 'password';
    GRANT SELECT, SHOW VIEW ON *.* TO 'user'@'%';
    FLUSH PRIVILEGES;
4. 設定とテストレプリケーション

分散データベースでは、スレーブ ノードはマスター ノードのデータを複製することでデータの一貫性を実現します。レプリケーションを構成してテストする方法は次のとおりです。

#マスター ノードで、MySQL 構成ファイル
    /etc/mysql/mysql.conf.d/mysqld.cnf
  1. を編集し、次のパラメータを追加します。
    server-id = 1
    log_bin = /var/log/mysql/binlog
  2. これらのパラメータは、マスター ノード上のデータ変更の記録を保存するために使用されるバイナリ ログを有効にします。

マスター ノードで MySQL サービスを再起動します:
  1. sudo systemctl restart mysql
スレーブ ノードで、MySQL 構成ファイル
    /etc/mysql/mysql を編集します。 .conf .d/mysqld.cnf
  1. に、次のパラメータを追加します。
    server-id = 2
    relay-log = /var/log/mysql/relaylog
  2. これらのパラメータにより、スレーブ ノードがマスター ノードからのデータ変更を受信して​​複製できるようになります。

スレーブ ノードで MySQL サービスを再起動します:
  1. sudo systemctl restart mysql
マスター ノードで、次のコマンドを使用してテスト データベースを作成し、データを挿入します。
  1. CREATE DATABASE test;
    USE test;
    CREATE TABLE employees (
        id INT PRIMARY KEY,
        name VARCHAR(100)
    );
    INSERT INTO employees VALUES(1, 'John');
    INSERT INTO employees VALUES(2, 'Jane');
スレーブ ノードで次のコマンドを実行すると、データが正常にコピーされたかどうかを確認できます。
  1. USE test;
    SELECT * FROM employees;
  2. スレーブ ノードにマスターノードと同じデータであれば、コピーに成功したことを意味します。

概要:

この記事のガイダンスに従って、分散データベース開発をサポートするように Linux システムを構成することに成功しました。この構成プロセスでは、データベース管理システムをインストールし、マスター ノードとスレーブ ノードをセットアップし、データ レプリケーション機能をテストしました。分散データベースは、大量のデータの課題に対処し、データベース システムのパフォーマンスとスケーラビリティを向上させるのに役立ちます。


参考資料:

MySQL 公式ドキュメント: https://dev.mysql.com/doc/
  • PostgreSQL 公式ドキュメント: https://www. postgresql.org/docs/

以上が分散データベース開発をサポートするための Linux システムの構成の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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