网站定位方案37玩手游官网平台
目录
- MySQL 简介
 - MySQL 安装
 - MySQL 基础配置
 - MySQL 主从复制配置
 - MySQL 集群配置
 - 总结
 
1. MySQL 简介
MySQL 是一个广泛使用的关系型数据库管理系统,具有高性能、高可靠性和易用性等特点。它支持多种部署模式,包括单机模式、主从复制模式(用于高可用性和读写分离)以及集群模式(用于分布式部署和高扩展性)。
2. MySQL 安装
MySQL 可以安装在各种操作系统上,这里介绍在 Ubuntu 和 CentOS 系统上的安装方法。
2.1 在 Ubuntu 上安装 MySQL
-  
更新包列表并安装 MySQL:
sudo apt-get update sudo apt-get install mysql-server -  
安装完成后,MySQL 服务会自动启动。你可以通过以下命令检查 MySQL 服务状态:
sudo systemctl status mysql 
2.2 在 CentOS 上安装 MySQL
-  
添加 MySQL 官方 YUM 源并安装 MySQL:
sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm sudo yum install mysql-community-server -  
安装完成后,启动 MySQL 服务并设置开机自启:
sudo systemctl start mysqld sudo systemctl enable mysqld -  
检查 MySQL 服务状态:
sudo systemctl status mysqld 
3. MySQL 基础配置
3.1 安全初始化
在安装完 MySQL 后,推荐进行安全初始化,以确保数据库的安全性。
-  
获取 MySQL 默认生成的 root 密码:
sudo grep 'temporary password' /var/log/mysqld.log -  
运行 MySQL 安全配置脚本:
sudo mysql_secure_installation根据提示设置 root 密码,并禁用匿名用户、删除测试数据库、禁用远程 root 登录等。
 
3.2 修改配置文件
MySQL 的配置文件通常位于 /etc/mysql/mysql.conf.d/mysqld.cnf 或 /etc/my.cnf,可以根据需求进行修改。
一些常见的配置项包括:
-  
bind-address: MySQL 监听的 IP 地址,默认是
127.0.0.1。可以修改为0.0.0.0以允许外部访问。bind-address = 0.0.0.0 -  
max_connections: 设置最大连接数。
max_connections = 200 -  
default-authentication-plugin: 设置默认的认证插件。MySQL 8.0 默认使用
caching_sha2_password,但你可以更改为mysql_native_password以支持旧的客户端:default-authentication-plugin = mysql_native_password 
修改完成后,重启 MySQL 服务以应用更改:
sudo systemctl restart mysql
 
4. MySQL 主从复制配置
MySQL 主从复制(Master-Slave Replication)是实现数据冗余和负载均衡的重要机制。在主从模式中,主服务器负责写操作,从服务器负责读操作,实现读写分离和故障转移。
4.1 配置主服务器(Master)
-  
编辑主服务器上的 MySQL 配置文件
my.cnf,添加如下配置:[mysqld] server-id = 1 log-bin = /var/log/mysql/mysql-bin.log binlog-format = ROWserver-id:为每个 MySQL 服务器指定一个唯一的 ID,主服务器和从服务器的 ID 必须不同。log-bin:启用二进制日志(Binary Log),用于记录数据库的更改操作。
 -  
创建一个复制用户,并为其授予复制权限:
CREATE USER 'replica_user'@'%' IDENTIFIED BY 'your_password'; GRANT REPLICATION SLAVE ON *.* TO 'replica_user'@'%'; FLUSH PRIVILEGES; -  
获取主服务器的二进制日志文件名和位置:
SHOW MASTER STATUS;记下输出的
File和Position,在配置从服务器时会用到。 -  
重启 MySQL 服务:
sudo systemctl restart mysql 
4.2 配置从服务器(Slave)
-  
编辑从服务器上的 MySQL 配置文件
my.cnf,添加如下配置:[mysqld] server-id = 2 relay-log = /var/log/mysql/mysql-relay-bin.log -  
登录从服务器的 MySQL 控制台,执行如下命令以配置主从复制:
CHANGE MASTER TO MASTER_HOST='master_ip', MASTER_USER='replica_user', MASTER_PASSWORD='your_password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=12345;MASTER_HOST:主服务器的 IP 地址。MASTER_LOG_FILE和MASTER_LOG_POS:使用在主服务器上获取的日志文件名和位置。
 -  
启动从服务器的复制进程:
START SLAVE; -  
检查从服务器的复制状态:
SHOW SLAVE STATUS\G;确保
Slave_IO_Running和Slave_SQL_Running都显示为Yes。 
5. MySQL 集群配置
MySQL 集群是一个分布式数据库架构,提供高可用性和高扩展性。以下是 MySQL InnoDB Cluster 的配置方法。
5.1 安装 MySQL Shell 和 Router
-  
安装 MySQL Shell 和 MySQL Router:
sudo apt-get install mysql-shell mysql-router -  
启动 MySQL Shell 并连接到 MySQL 服务器:
mysqlsh root@localhost 
5.2 配置 InnoDB Cluster
-  
在 MySQL Shell 中,创建 InnoDB Cluster:
dba.createCluster('myCluster') -  
添加 MySQL 实例到集群中:
cluster = dba.getCluster('myCluster') cluster.addInstance('root@server2') cluster.addInstance('root@server3')确保各实例的 MySQL 配置文件中已启用
group_replication。 -  
检查集群状态:
cluster.status() 
5.3 配置 MySQL Router
-  
在 MySQL Router 上进行路由配置:
mysqlrouter --bootstrap root@localhost --directory /etc/mysqlrouter -  
启动 MySQL Router:
sudo mysqlrouter -c /etc/mysqlrouter/mysqlrouter.confMySQL Router 将自动处理客户端连接的路由请求,并将其分配到集群的各个节点。
 
6. 总结
本教程介绍了如何安装 MySQL,并配置单机模式、主从复制模式和集群模式。通过这些配置,你可以充分利用 MySQL 的高性能和高可用性特性,构建一个稳定、可靠的数据库服务架构。
