一、准备
用两台服务器做测试:
Master Server: 192.0.0.1/Linux/MYSQL 4.1.12
Slave Server: 192.0.0.2/Linux/MYSQL 4.1.18
做主从服务器的原则是,MYSQL版本要相同,如果不能满足,最起码从服务器的MYSQL的版本必须高于主服务器的MYSQL版本
二、配置master服务器
1. 登录Master服务器,编辑my.cnf
#vim /etc/my.cnf
在[mysqld]段添加以下内容:
[mysqld]
log-bin=mysql-bin
server-id=1
binlog-do-db=extmail
binlog-ignore-db=mysql,test
解释:log-bin项是让Master服务器记录二进制日志这个是必须的;
server-id=master_id 其中master_id必须为1到232–1之间的一个正整数值;
binlog-do-db=database 是要记录日志的数据库;
binlog-ignore-db 是不要记录日志的数据库名,多个数据库中间用逗号(,)隔开;
2.从master服务器添加要从slave服务器访问master服务器的有权限的帐号,看下面命令就知道了:
mysql> grant replication slave on *.*
-> to 'abc'@'192.0.0.2' identified by '123';
格式:mysql> GRANT REPLICATION SLAVE ON *.*
-> TO '帐号'@'从服务器IP或主机名' IDENTIFIED BY '密码';
3. 重起Mysql
4. 备份master数据库数据
# mysqldump --master-data extmail > extmail_backup_20071120.sql
要加--master-data 选项,这里备份master服务器的数据,后面要导入slave服务器。
5. 察看Master状态
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000002 | 79 | extmail | mysql,test |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
三、配置slave服务器
1. 编辑my.cnf
# vim /etc/my.cnf
在[mysqld]段添加以下内容:
server-id=2
master-host=192.0.0.1
master-port=3306
master-user=abc
master-password=123
master-connect-retry=60
解释:
slave服务器的server-id不能与master相同,多台slave之间server-id也不能相同。
master-host 是 master服务器的主机名或者IP地址
master-user和master-password是前面我们在master上建用户名和密码
master-connect-retry 是如果从服务器发现主服务器断掉,重新连接的时间差
2. 把从主数据库服务器备份出来的数据库导入到从服务器中,也就是我们前面的extmail_backup_20071120.sql
# mysqladmin create extmail
# mysql extmail < extmail_backup_20071120.sql
3. 重起mysql服务器
4. 停止slave服务,设置主服务器的各种参数
mysql> slave stop;
mysql> change master to
-> MASTER_HOST='192.0.0.1',
-> MASTER_USER='abc',
-> MASTER_PASSWORD='123',
-> MASTER_LOG_FILE='mysql-bin.000002',
-> MASTER_LOG_POS=79;
mysql> slave start;
5. 查看主从服务器的状态
show slave status;
SHOW PROCESSLIST;
显示以下内容时,主从服务器配置成功
Slave_IO_State: Waiting for master to send event
Slave_IO_Running: 必须为 Yes
Slave_SQL_Running:必须为 Yes
6.手动同步数据,会自动建立数据库,需要设置用户ylmf相应权限
LOAD DATA FROM MASTER;
遇到ERROR 2013 (HY000): Lost connection to MySQL server during query错误。
在/ect/my.cnf的[mysqld]中添加skip-name-resolve
分享到:
相关推荐
Linux-Mysql 主从同步配置 本文将详细解释 Linux-Mysql 主从同步配置的步骤和知识点。 一、主服务器配置 1. 编辑数据库配置文件 my.cnf, 一般在/etc/目录下。 2. 在[mysqld]下面加入以下代码: * log-bin=mysql...
【Linux下MySQL主从同步复制】是MySQL数据库在分布式环境中实现数据备份和高可用性的一种常见策略。在Linux操作系统上,这一过程涉及到一系列步骤,包括安装MySQL服务、配置主从服务器、设置复制参数以及验证复制...
### Linux 下 MySQL 主从复制详解 #### 一、概述 MySQL 的主从复制是一种非常重要的技术,它不仅可以提高系统的可用性和扩展性,还能为数据备份提供便利。在本篇文章中,我们将详细介绍如何在 Linux 操作系统环境...
两台ubuntu和Centos下分别安装两个mysql数据库。亲自测试Mysql主备。成功!希望对需要的人有帮助。
在本文中,我们将详细讨论如何在Linux环境下安装MySQL以及设置MySQL的主从备份。主从备份是数据库高可用性和数据安全的重要策略,它允许数据在主服务器(Master)和从服务器(Slave)之间进行实时同步,确保即使主...
在本文中,我们将深入探讨如何安装MySQL,并配置主从备份方案,确保数据的安全性和高可用性。 首先,我们需要了解安装MySQL的过程。对于大多数Linux发行版,MySQL可以通过包管理器进行安装。例如,在Ubuntu上,可以...
尽管MySQL不支持增量备份,但提供了另一种解决方案——主从备份机制,允许将主数据库的数据实时同步到备份数据库中,从而实现热备份。 #### 版本需求 为了实施双机热备,需要满足以下版本要求: - MySQL版本必须...
在开始讨论MySQL主从复制的原理和实战之前,我们需要了解其重要性。主从复制的主要作用是保证数据安全性和服务的持续运行。当主数据库发生故障时,从数据库可以接管业务,保证服务的连续性。同时,通过将数据复制到...
MySQL主从部署是数据库管理中的常见操作,用于实现数据的实时备份和高可用性。以下是一份基于MySQL 5.7.22的详细部署步骤: 1. **环境检查与准备**: 在开始之前,确保系统中没有旧版本的MySQL。通过`rpm -qa | ...
MySQL主从同步配置和实现 MySQL主从同步是指将一个MySQL服务器的数据实时地复制到另一个或多个服务器上,以实现数据的高可用性和灾难恢复。这种方式可以实现数据的热备援、读写分离、负载均衡等功能。 1. 案例 1:...
以下是关于MySQL主从复制及其在Linux环境下编译安装配置的详细知识: 1. **主从复制的基本概念** - 主节点:执行所有写操作(INSERT、UPDATE、DELETE等)的服务器,其更改的数据会同步到从节点。 - 从节点:接收...
以下是基于Linux的MySQL主从配置的详细步骤: 1. **环境准备**: 主服务器(Master)和从服务器(Slave)需要在同一网络环境下,例如,本例中的主服务器IP为192.168.244.128,从服务器IP为192.168.244.130。 2. *...
【使用Keepalived实现MySQL主从高可用】 MySQL数据库系统的高可用性是保障线上业务连续性和数据安全性的重要手段。在面临服务器硬件老化、故障频繁的情况下,手动切换主从数据库不仅耗时,还可能影响到业务的正常...
本文将详细解析MySQL主从复制的工作原理、实施步骤及其应用场景。 ### 一、MySQL主从复制原理 MySQL主从复制是通过一个名为`binlog`的二进制日志来实现的。当在主服务器上执行任何更改数据的操作时,这些操作会被...
CentOS 7上开启MySQL 8的主从备份以及设置每日定时全量备份是数据库管理员常常需要进行的任务,这可以确保数据的高可用性和在发生故障时的快速恢复。以下将详细介绍如何在CentOS 7上配置MySQL 8的主从备份以及如何...
### MySQL主从服务器搭建详解 #### 一、背景与需求分析 随着互联网应用规模的不断扩大,高并发场景下的数据处理成为了一个重要的挑战。对于大型网站而言,仅仅依靠单台数据库服务器难以满足日益增长的数据访问需求...