MySQL主从复制是一种常用的分布式架构高可用架构,它通过将数据从主库复制到多个从库来实现数据的备份和读写分离。下面是在CentOS-6.7上配置MySQL主从复制的步骤:
安装MySQL
首先,需要在CentOS-6.7上安装MySQL-5.6。可以使用以下命令进行安装:
sudo yum install mysql-server
配置主库
在主库上,需要编辑MySQL配置文件/etc/my.cnf
,添加以下配置:
[mysqld]
server-id=1
log-bin=mysql-bin
binlog-do-db=your_database_name
这里的your_database_name
是你要进行主从复制的数据库名称。
然后,重启MySQL服务使配置生效:
sudo service mysqld restart
创建主库用户
在主库上,需要创建一个用于复制的用户,并赋予复制权限。可以使用以下命令进行创建:
mysql -u root -p
GRANT REPLICATION SLAVE ON *.* TO 'your_replication_user'@'%' IDENTIFIED BY 'your_password';
FLUSH PRIVILEGES;
这里的your_replication_user
是你要创建的复制用户的用户名,your_password
是复制用户的密码。
备份主库数据
在主库上,需要备份要进行主从复制的数据库的数据。可以使用以下命令进行备份:
mysqldump -u root -p your_database_name > your_database_name.sql
这里的your_database_name
是你要备份的数据库名称。
配置从库
在从库上,需要编辑MySQL配置文件/etc/my.cnf
,添加以下配置:
[mysqld]
server-id=2
relay-log=mysql-relay-bin
log-slave-updates=1
read-only=1
然后,重启MySQL服务使配置生效:
sudo service mysqld restart
导入备份数据到从库
在从库上,需要将主库的备份数据导入到从库的数据库中。可以使用以下命令进行导入:
mysql -u root -p your_database_name < your_database_name.sql
这里的your_database_name
是你要导入备份数据的数据库名称。
配置主从关系
在从库上,需要配置主从关系,使从库能够复制主库的数据。可以使用以下命令进行配置:
mysql -u root -p
CHANGE MASTER TO MASTER_HOST='your_master_host', MASTER_USER='your_replication_user', MASTER_PASSWORD='your_password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=0;
START SLAVE;
这里的your_master_host
是主库的IP地址或主机名,your_replication_user
是主库复制用户的用户名,your_password
是主库复制用户的密码。
完成以上步骤后,MySQL主从复制的配置就完成了。从库会自动从主库复制数据,并且从库也可以用于读操作,实现了数据的备份和读写分离。
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站