Configuring Linux systems to support distributed database development
Introduction:
With the rapid development of the Internet, the amount of data has increased dramatically, and the requirements for database performance and scalability are also getting higher and higher. Distributed databases emerged as a solution to this challenge. This article will introduce how to configure a distributed database environment under Linux system to support distributed database development.
1. Install the Linux system
First, we need to install a Linux operating system. Common Linux distributions include Ubuntu, CentOS, Debian, etc., among which Ubuntu is a very popular choice. You can download the image file from the official website and install it according to the official documentation.
2. Install and configure the database management system
sudo apt-get update sudo apt-get install mysql-server
sudo systemctl start mysql sudo systemctl enable mysql
/etc/mysql/mysql.conf.d/mysqld.cnf
and modify the following parameters: bind-address = 0.0.0.0
This parameter will allow other computers to connect to the The database management system.
sudo systemctl reload mysql
3. Set the master node and slave node
In a distributed database, there is usually a master node There are two roles: node and slave node. The master node is used to handle write operations and main queries of data, while the slave node is used to replicate the data of the master node and handle read operation requests.
mysql -u root -p
Create a new database user and grant it read and write permissions on the master node:
CREATE USER 'user'@'%' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES;
CREATE USER 'user'@'%' IDENTIFIED BY 'password'; GRANT SELECT, SHOW VIEW ON *.* TO 'user'@'%'; FLUSH PRIVILEGES;
4. Configure and test replication
In a distributed database, the slave node achieves data consistency by replicating the data of the master node. Here's how to configure and test replication.
/etc/mysql/mysql.conf.d/mysqld.cnf
and add the following parameters: server-id = 1 log_bin = /var/log/mysql/binlog
These parameters will enable binary logging, which is used to store records of data changes on the master node.
sudo systemctl restart mysql
/etc/mysql/mysql.conf .d/mysqld.cnf
, add the following parameters: server-id = 2 relay-log = /var/log/mysql/relaylog
These parameters will enable the slave node to receive and replicate data changes from the master node.
sudo systemctl restart mysql
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');
USE test; SELECT * FROM employees;
If the slave node shows the same data as the master node, it means Copied successfully.
Summary:
Through the guidance of this article, we have successfully configured a Linux system to support distributed database development. During this configuration process, we installed the database management system, set up the master node and slave nodes, and tested the data replication function. Distributed databases can help us cope with the challenges of massive data and improve the performance and scalability of database systems.
Reference materials:
The above is the detailed content of Configuring Linux systems to support distributed database development. For more information, please follow other related articles on the PHP Chinese website!