Maison >Opération et maintenance >exploitation et maintenance Linux >Configuration des systèmes Linux pour prendre en charge le développement de bases de données distribuées

Configuration des systèmes Linux pour prendre en charge le développement de bases de données distribuées

WBOY
WBOYoriginal
2023-07-04 08:24:091414parcourir

Configuration des systèmes Linux pour prendre en charge le développement de bases de données distribuées

Introduction :
Avec le développement rapide d'Internet, la quantité de données a considérablement augmenté et les exigences en matière de performances et d'évolutivité des bases de données sont également de plus en plus élevées. Les bases de données distribuées sont apparues comme une solution à ce défi. Cet article explique comment configurer un environnement de base de données distribuée sous le système Linux pour prendre en charge le développement de bases de données distribuées.

1. Installez le système Linux
Tout d'abord, nous devons installer un système d'exploitation Linux. Les distributions Linux courantes incluent Ubuntu, CentOS, Debian, etc., parmi lesquelles Ubuntu est un choix très populaire. Vous pouvez télécharger le fichier image depuis le site officiel et l'installer conformément à la documentation officielle.

2. Installez et configurez le système de gestion de base de données

  1. Installez d'abord un système de gestion de base de données, tel que MySQL ou PostgreSQL. En prenant Ubuntu comme exemple, vous pouvez installer MySQL via la commande suivante :
sudo apt-get update
sudo apt-get install mysql-server
  1. Une fois l'installation terminée, démarrez le service de base de données et configurez-le pour qu'il démarre automatiquement au démarrage :
sudo systemctl start mysql
sudo systemctl enable mysql
  1. Configurez les paramètres de la base de données système de gestion pour s’adapter à l’environnement distribué. Ouvrez le fichier de configuration MySQL /etc/mysql/mysql.conf.d/mysqld.cnf et modifiez les paramètres suivants : /etc/mysql/mysql.conf.d/mysqld.cnf,修改以下参数:
bind-address = 0.0.0.0

该参数将允许其他计算机通过网络连接到该数据库管理系统。

  1. 重新加载MySQL的配置文件以使更改生效:
sudo systemctl reload mysql

三、设置主节点和从节点
在分布式数据库中,通常存在主节点和从节点两种角色。主节点用于处理写入操作和数据的主要查询,而从节点用于复制主节点的数据,并处理读取操作请求。

  1. 首先,设置主节点。登录到MySQL控制台:
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;

四、配置并测试复制
在分布式数据库中,从节点通过复制主节点的数据来实现数据的一致性。下面介绍如何配置并测试复制。

  1. 在主节点上,编辑MySQL的配置文件/etc/mysql/mysql.conf.d/mysqld.cnf,添加以下参数:
server-id = 1
log_bin = /var/log/mysql/binlog

这些参数将启用二进制日志记录,用于存储主节点的数据更改记录。

  1. 重启主节点的MySQL服务:
sudo systemctl restart mysql
  1. 在从节点上,编辑MySQL的配置文件/etc/mysql/mysql.conf.d/mysqld.cnf
  2. server-id = 2
    relay-log = /var/log/mysql/relaylog
Ce paramètre permettra à d'autres ordinateurs de se connecter au système de gestion de base de données via le réseau.

    Rechargez le fichier de configuration MySQL pour que les modifications prennent effet :
  1. sudo systemctl restart mysql
3. Définissez le nœud maître et le nœud esclave
    Dans une base de données distribuée, il y a généralement deux rôles : le nœud maître et le nœud esclave. Le nœud maître est utilisé pour gérer les opérations d'écriture et les requêtes principales de données, tandis que le nœud esclave est utilisé pour répliquer les données du nœud maître et gérer les demandes d'opérations de lecture.
Tout d’abord, configurez le nœud maître. Connectez-vous à la console 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');
  2. Créez un nouvel utilisateur de base de données et accordez-lui des autorisations de lecture et d'écriture sur le nœud maître :
USE test;
SELECT * FROM employees;

Ensuite, configurez le nœud esclave. Effectuez les mêmes opérations que le nœud maître sur le nœud esclave, créez un utilisateur identique au nœud maître et définissez les autorisations de l'utilisateur sur des autorisations en lecture seule :


rrreee

4. Configurez et testez la réplication

Dans un environnement distribué base de données, le nœud esclave atteint la cohérence des données en répliquant les données du nœud maître. Voici comment configurer et tester la réplication.

  • Sur le nœud maître, éditez le fichier de configuration MySQL /etc/mysql/mysql.conf.d/mysqld.cnf et ajoutez les paramètres suivants :
  • rrreee
  • Ces paramètres activeront la journalisation binaire , utilisé pour stocker les enregistrements de modifications de données du nœud maître.
🎜🎜Redémarrez le service MySQL sur le nœud maître : 🎜🎜rrreee🎜🎜Sur le nœud esclave, éditez le fichier de configuration MySQL /etc/mysql/mysql.conf.d/mysqld.cnf et ajoutez les paramètres suivants :🎜🎜rrreee🎜Ces paramètres permettront au nœud esclave de recevoir et de répliquer les modifications de données du nœud maître. 🎜🎜🎜Redémarrez le service MySQL du nœud esclave : 🎜🎜rrreee🎜🎜Sur le nœud maître, utilisez la commande suivante pour créer une base de données de test et insérez quelques données : 🎜🎜rrreee🎜🎜Sur le nœud esclave, vous pouvez vérifier si les données sont répliquées avec succès via la commande suivante : 🎜🎜rrreee🎜Si le nœud esclave affiche les mêmes données que le nœud maître, la réplication est réussie. 🎜🎜Résumé :🎜Grâce aux conseils de cet article, nous avons configuré avec succès un système Linux pour prendre en charge le développement de bases de données distribuées. Au cours de ce processus de configuration, nous avons installé le système de gestion de base de données, configuré le nœud maître et les nœuds esclaves et testé la fonction de réplication des données. Les bases de données distribuées peuvent nous aider à relever les défis liés aux données massives et à améliorer les performances et l'évolutivité des systèmes de bases de données. 🎜🎜Matériaux de référence :🎜🎜🎜Documentation officielle MySQL : https://dev.mysql.com/doc/🎜🎜Documentation officielle PostgreSQL : https://www.postgresql.org/docs/🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn