117.info
人生若只如初见

debian mysql主从复制怎么做

Debian上的MySQL主从复制可以通过以下步骤实现:

1. 安装MySQL

首先,确保在主服务器和从服务器上都安装了MySQL。

sudo apt update
sudo apt install mysql-server

2. 配置主服务器

在主服务器上,编辑MySQL配置文件 /etc/mysql/my.cnf/etc/mysql/mysql.conf.d/mysqld.cnf,找到或添加以下配置:

[mysqld]
server-id=1
log_bin=/var/log/mysql/mysql-bin.log
binlog_format=ROW

然后,重启MySQL服务:

sudo systemctl restart mysql

3. 创建主服务器数据目录和权限

确保主服务器的数据目录存在并且MySQL用户有权限访问:

sudo mkdir -p /var/lib/mysql
sudo chown -R mysql:mysql /var/lib/mysql
sudo chmod -R 700 /var/lib/mysql

4. 初始化主服务器

登录到MySQL并初始化主服务器:

mysql -u root -p

创建一个用于复制的用户:

CREATE USER 'repl'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
FLUSH PRIVILEGES;

获取主服务器的二进制日志坐标:

SHOW MASTER STATUS;

记下 FilePosition 的值。

5. 配置从服务器

在从服务器上,编辑MySQL配置文件 /etc/mysql/my.cnf/etc/mysql/mysql.conf.d/mysqld.cnf,找到或添加以下配置:

[mysqld]
server-id=2
relay-log=/var/log/mysql/mysql-relay-bin.log
log_bin=/var/log/mysql/mysql-bin.log
binlog_format=ROW

然后,重启MySQL服务:

sudo systemctl restart mysql

6. 初始化从服务器

登录到MySQL并初始化从服务器:

mysql -u root -p

设置从服务器的 server-id

SET GLOBAL server_id=2;

配置从服务器连接到主服务器:

CHANGE MASTER TO
    MASTER_HOST='master_ip',
    MASTER_USER='repl',
    MASTER_PASSWORD='password',
    MASTER_LOG_FILE='recorded_file_name',
    MASTER_LOG_POS=recorded_position;

启动从服务器复制进程:

START SLAVE;

7. 验证复制状态

在从服务器上,检查复制状态:

SHOW SLAVE STATUS\G;

确保 Slave_IO_RunningSlave_SQL_Running 都是 YES,并且 Last_IO_ErrorLast_SQL_Error 是空的。

8. 测试复制

在主服务器上插入一些数据:

INSERT INTO test_table (name) VALUES ('test_data');

然后在从服务器上查询这些数据,确保它们已经同步:

SELECT * FROM test_table;

通过以上步骤,你应该能够在Debian上成功设置MySQL主从复制。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe15fAzsKAAdfAVA.html

推荐文章

  • Laravel项目在Debian上如何进行性能测试

    在Debian上对Laravel项目进行性能测试,可以采用以下几种方法和工具:
    使用Laravel自带的Benchmark工具
    Laravel提供了一个Benchmark工具,用于测量和比...

  • debian定时器有哪些应用场景

    在 Debian 系统中,定时器通常通过 systemd 定时器单元来实现,其应用场景主要包括以下几种: 类 cron 行为: 定期任务执行:例如每周固定时间收集系统数据(如 ...

  • Debian Apache如何实现反向代理

    在Debian系统上使用Apache实现反向代理,通常会借助mod_proxy和相关的模块。以下是详细的步骤指南:
    1. 安装Apache
    首先,确保你已经安装了Apache服务...

  • debian防火墙更新频率是多少

    Debian系统的防火墙可以通过多种方式配置和管理,其中最常用的是 ufw 和 iptables。以下是相关介绍:
    Debian防火墙的配置和管理 使用ufw设置防火墙:ufw(U...

  • debian mysql查询慢怎么解决

    MySQL 查询慢可能是由于多种原因导致的 优化查询语句: 使用 EXPLAIN 分析查询性能,找出瓶颈。
    避免在 WHERE 子句中使用 OR ,转而使用 UNION。
    当可...

  • debian mysql表空间如何使用

    Debian上的MySQL表空间主要用于存储数据库中的数据和索引 创建表空间: 首先,创建一个新的目录作为表空间。例如,创建一个名为my_innodb_ts的目录:
    sudo ...

  • centos7 vsftp与sftp区别是什么

    CentOS 7中的vsftpd和SFTP(SSH File Transfer Protocol)都是用于文件传输的,但它们之间存在一些关键区别: 基础与协议: vsftpd(Very Secure FTP Daemon)是...

  • centos7 vsftp缓存如何清理

    在 CentOS 7 上,要清理 vsftpd 的缓存,您需要编辑 /etc/vsftpd/vsftpd.conf 配置文件并重启 vsftpd 服务 打开 /etc/vsftpd/vsftpd.conf 文件进行编辑: sudo v...