在主数据库服务器上配置:
-
编辑主数据库服务器的配置文件(my.cnf):
-
打开 MySQL 配置文件,一般路径为 /etc/my.cnf 或 /etc/mysql/my.cnf。
-
确保以下参数已启用或配置正确:
server_id = 1 log_bin = /var/log/mysql/mysql-bin.log binlog_do_db = your_database_name
注: 一定是[mysqld]代码块中
-
-
创建用于复制的用户:
-
登录到 MySQL 控制台:
mysql -u root -p
-
创建用于复制的用户并授予 REPLICATION SLAVE 权限:
sqlCREATE USER 'replication_user'@'%' IDENTIFIED BY 'your_password';
sqlGRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%'; FLUSH PRIVILEGES;
-
-
执行备份操作:
-
在主数据库上执行备份操作,将数据导出为 SQL 文件:
sqlmysqldump -u root -p your_database_name > backup.sql
-
在从数据库服务器上配置:
-
编辑从数据库服务器的配置文件(my.cnf):
-
打开 MySQL 配置文件,一般路径为 /etc/my.cnf 或 /etc/mysql/my.cnf。
-
确保以下参数已启用或配置正确:
sqlserver_id = 2 relay_log = /var/log/mysql/mysql-relay-bin.log
-
-
导入数据:
-
将备份的 SQL 文件传输到从数据库服务器,并导入数据:
sqlmysql -u root -p your_database_name < backup.sql
-
-
启动主从复制:
-
登录到 MySQL 控制台:
sqlmysql -u root -p
-
执行以下命令配置主从复制:
sqlCHANGE MASTER TO MASTER_HOST='master_host_ip', MASTER_USER='replication_user', MASTER_PASSWORD='your_password', MASTER_LOG_FILE='mysql-bin.xxxxxx', MASTER_LOG_POS=xxx;
sqlSTART SLAVE;
-
-
验证主从同步是否正常:
-
在从数据库上执行命令:
sqlSHOW SLAVE STATUS\G;
查看 Slave_IO_Running 和 Slave_SQL_Running 是否为 Yes,确保主从同步已经正常工作。
-