mysql 5.5.11主从同步配置

合集下载

mysql主从数据同步和备份

mysql主从数据同步和备份

mysql主从数据同步和备份一、mysql主从数据同步:一)主服务器上的操作:1、将主机阻断写操作并导出数据执行如下命令进去mysql命令窗口:mysql -uroot -p密码;--加锁,以免导数据时数据库数据发生变化。

mysql>FLUSH TABLES WITH READ LOCK;--打开一个新的命令窗口导出主机数据库mysqldump -u root -p密码--opt -R jq>jq.sql--在mysql命令窗口为主机解锁mysql> UNLOCK TABLES;2、配置主服务器,找到mysql的配置文件my.ini往文件最末尾添加如下内容:server-id=1 #这个要唯一,从服务器待会填不一样的数字log-bin=mysql-bin #开启二进制日志功能binlog-do-db = jq # 要复制同步的数据库重启mysql服务以便让配置生效。

net stop mysql;net start mysql;3、启动服务后,执行如下命令进去mysql命令窗口:mysql -uroot -p密码;在命令窗口查看主服务器的状态。

并记录以下信息:file:mysql-bin.000002 Position:1529881(从服务器需要用到) SHOW MASTER STATUS;+------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+------------------+----------+--------------+------------------+ | mysql-bin.000002 | 1529881 | jq | |+------------------+----------+--------------+------------------+ 1 row in set (0.00 sec)二)配置并导入数据到从服务器1、执行如下命令进去mysql命令窗口:mysql -uroot -p密码;删除已经有的库并创建新的数据库drop database jq;create database jq;将数据导入数据库中,也可以使用工具实现导入。

数据库主从同步配置MySql数据双向同步配置的方法

数据库主从同步配置MySql数据双向同步配置的方法

数据库主从同步配置MySql数据双向同步配置的方法配置MySQL数据库的主从同步可以实现数据的双向同步,以下是一种常见的配置方法:1. 确保两台MySQL服务器之间能够互相访问,比如在操作系统级别上配置好网络和防火墙规则。

2. 在主服务器上,编辑MySQL配置文件(f或my.ini),找到并修改以下几个参数:```server-id = 1 #设置服务器唯一ID,主服务器设为1,从服务器设为不同的值log_bin = mysql-bin #开启二进制日志记录功能binlog_format = row #设置二进制日志的格式为行级格式```3. 在主服务器上重启MySQL服务,使配置生效。

4. 在主服务器上创建一个专门用于主从同步的账号,并授予对应的权限。

比如创建一个账号名为replication的账号,并为其授予REPLICATION SLAVE权限:```sqlCREATE USER 'replication'@'从服务器IP' IDENTIFIED BY '密码';GRANT REPLICATION SLAVE ON *.* TO 'replication'@'从服务器IP';FLUSH PRIVILEGES;```5. 在从服务器上,编辑MySQL配置文件(f或my.ini),找到并修改以下几个参数:```server-id = 2 #设置服务器唯一ID,主服务器设为1,从服务器设为不同的值 log_bin = mysql-bin #开启二进制日志记录功能binlog_format = row #设置二进制日志的格式为行级格式```6. 在从服务器上重启MySQL服务,使配置生效。

7. 在从服务器上执行以下命令,配置主从关系:```sqlCHANGE MASTER TOMASTER_HOST ='主服务器IP',MASTER_PORT = 主服务器端口号,MASTER_USER ='replication',MASTER_PASSWORD ='密码',MASTER_LOG_FILE ='主服务器当前二进制日志文件名',MASTER_LOG_POS = 主服务器当前二进制日志位置;```8. 在从服务器上启动从服务器的复制进程:```sqlSTART SLAVE;```9. 在主服务器上执行以下命令,查看主从同步状态:```sqlSHOW MASTER STATUS;```10. 在从服务器上执行以下命令,查看主从同步状态:```sqlSHOW SLAVE STATUS;```以上是一种常见的MySQL数据库主从同步配置方法,根据实际情况可能还需要进行其他配置和调优。

MySQL 数据同步 主主设置(互为主备)

MySQL 数据同步 主主设置(互为主备)

MySQL 数据同步主主设置(互为主备)两台MySQL主机做为服务器:master-1:192.168.1.99master-2:192.168.1.113一、创建并授权用户这一步在每一台(主)服务器上创建一个用户,并为之授权,使它们可以互相访问彼此的数据库在master-1上:创建一个充许master-2来访问的用户repl,密码为:replmysql> GRANT ALL PRIVILEGES ON *.* TO ' repl,'@'192.168.1.113' IDENTIFIED BY ' repl ';在master-2上:创建一个充许master-1来访问的用户repl,密码为:repl,mysql> GRANT ALL PRIVILEGES ON *.* TO ' repl,'@'192.168.1.99' IDENTIFIED BY ' repl ';备注:为了操作方便,我们在两台服务器上,指定的访问权限时,设定的用户名和密码,一摸一样二、修改主配置文件在MySQL的主配置文件中修改/添加如下内容:master-1上:[mysqld]server-id = 1log-bin = mysql-binreplicate-do-db = test #指定复制操作的数据库auto-increment-increment = 2auto-increment-offset = 1# service mysqld restartmaster-2上:[mysqld]server-id = 2log-bin = mysql-binreplicate-do-db = test #指定复制操作的数据库auto-increment-increment = 2auto-increment-offset = 2# service mysqld restart注:二都只有server-id不同和auto-increment- offset不同auto-increment-offset是用来设定数据库中自动增长的起点的,回为这两能服务器都设定了一次自动增长值2,所以它们的起点必须得不同,这样才能避免两台服务器数据同步时出现主键冲突replicate-do-db指定同步的数据库,我们只在两台服务器间同步test数据库另:auto-increment-increment的值应设为整个结构中服务器的总数,本案例用到两台服务器,所以值设为2三、获取两台服务器的二进制日志名和偏移量在master-1上:mysql> show master status;+------------------+----------+--------------+------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+------------------+----------+--------------+------------------+| mysql-bin.000006 | 107 | | |+------------------+----------+--------------+------------------+1 row in set在master-2上:mysql> show master status;+------------------+----------+--------------+------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+------------------+----------+--------------+------------------+| mysql-bin.000008 | 107 | | |+------------------+----------+--------------+------------------+1 row in set四、两台服务器互相做相应设置在master-1上:mysql>stop slave;mysql>CHANGE MASTER TOMASTER_HOST='192.168.1.113',MASTER_USER='repl',MASTER_PASSWORD='repl',MASTER_LOG_FILE='mysql-bin.000008',MASTER_LOG_POS=107;在master-2上:mysql>stop slave;mysql>CHANGE MASTER TOMASTER_HOST='192.168.1.99',MASTER_USER='repl',MASTER_PASSWORD='repl',MASTER_LOG_FILE='mysql-bin.000006',MASTER_LOG_POS=107;五、启动slave线程在两台主机上分别执行mysql> START SLAVE;六、查看slave状态mysql> show slave status;+----------------------------------------------| Slave_IO_State| Waiting for master to send event+----------------------------------------------显示上述信息的时候,说明配置得很好,两台服务器,正在互相等待操作。

mysql的主从同步的原理和流程

mysql的主从同步的原理和流程

MySQL的主从同步的原理和流程一、概述MySQL主从同步是一种常见的数据库架构模式,它可以实现数据的备份和读写分离,提高数据库的可用性和性能。

本文将详细介绍MySQL主从同步的原理和流程。

二、主从同步的原理主从同步是通过将主数据库的操作日志复制到从数据库来实现的。

主数据库将操作日志以二进制日志的形式记录下来,从数据库通过读取主数据库的二进制日志,将其中的操作重新执行,从而达到主从数据一致的目的。

主从同步的原理可以分为以下几个步骤:1. 主数据库记录二进制日志(Binlog)主数据库会将所有的数据修改操作记录在二进制日志中,包括插入、更新、删除等操作。

二进制日志是以二进制格式存储的,可以通过查看二进制日志来了解数据库的操作历史。

2. 从数据库连接主数据库从数据库通过连接主数据库,将自己标识为从数据库,并请求同步主数据库的二进制日志。

3. 主数据库发送二进制日志主数据库收到从数据库的连接请求后,会将自己的二进制日志发送给从数据库。

从数据库接收到二进制日志后,将其保存在本地。

4. 从数据库重放二进制日志从数据库将接收到的二进制日志重放到自己的数据库中,也就是重新执行主数据库中的操作。

通过这种方式,从数据库可以保持与主数据库的数据一致性。

5. 从数据库定期请求主数据库的二进制日志为了保持与主数据库的同步,从数据库会定期向主数据库发送请求,获取主数据库最新的二进制日志,以便将其应用到自己的数据库中。

三、主从同步的流程主从同步的流程可以分为以下几个步骤:1. 配置主数据库首先,需要在主数据库上进行相应的配置。

主要包括开启二进制日志功能、配置二进制日志格式和设置唯一标识等。

2. 配置从数据库接下来,在从数据库上进行配置。

需要配置从数据库连接主数据库的相关信息,包括主数据库的地址、端口、用户名、密码等。

3. 启动主从同步配置完成后,需要分别启动主数据库和从数据库。

主数据库会开始记录二进制日志,并等待从数据库的连接。

配置Mysql数据库的主从同步教程

配置Mysql数据库的主从同步教程

配置Mysql数据库的主从同步教程主从同步是实现网站分布式数据处理一个非常常用的方案了,今天我来为各位介绍配置Mysql数据库的主从同步(双主)教程,希望下文能帮助到各位哦.配置Mysql数据库的主从同步(一主一从).一、主库开启BINLOG、server-id[root@Master-Mysql ~]# grep -E "server-id|log-bin" /etc/flog-bin = /usr/local/mysql/data/mysql-binserver-id = 1mysql> show variables like '%log_bin%';+---------------------------------+---------------------------------------+| Variable_name | Value |+---------------------------------+---------------------------------------+| log_bin | ON || log_bin_basename | /usr/local/mysql/data/mysql-bin || log_bin_index | /usr/local/mysql/data/mysql-bin.index || log_bin_trust_function_creators | OFF || log_bin_use_v1_row_events | OFF || sql_log_bin | ON |+---------------------------------+---------------------------------------+6 rows in set (0.01 sec) mysql> show variables like '%server_id%';+----------------+-------+| Variable_name | Value |+----------------+-------+| server_id | 1 || server_id_bits | 32 |+----------------+-------+2 rows in set (0.00 sec)备注:以上两个信息必须在[mysqld]模块下!!!二、给从库授权mysql> grant replication slave on *.* to byrd@'192.168.199.%' identified by 'admin';mysql> flush privileges;mysql> select user,host from er;+------+---------------+| user | host |+------+---------------+| root | 127.0.0.1 || byrd | 192.168.199.% || root | ::1 || root | lamp || root | localhost |+------+---------------+5 rows in set (0.00 sec)锁表前建立点数据:mysql> create database hitest;mysql> show databases;+--------------------+| Database |+--------------------+| hitest |+--------------------+6 rows in set (0.00 sec)mysql> use hitest;mysql> create table test(-> id int(4) not null primary key auto_increment,-> name char(20) not null-> );Query OK, 0 rows affected (1.80 sec)mysql> show tables ;+------------------+| Tables_in_hitest |+------------------+| test |+------------------+mysql> insert into test(id,name) values(1,'zy'); mysql> select * from test;+----+------+| id | name |+----+------+| 1 | zy |+----+------+三、锁表、备份、解锁mysql> flush table with read lock; #锁表mysql> show variables like '%timeout%'; #锁表时间+-----------------------------+----------+| Variable_name | Value |+-----------------------------+----------+| interactive_timeout | 28800 || wait_timeout | 28800 |+-----------------------------+----------+12 rows in set (0.06 sec)mysql> show master status; #binlog日志位置+------------------+----------+--------------+------------------+-------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |+------------------+----------+--------------+------------------+-------------------+| mysql-bin.000004 | 1305 | | | | +------------------+----------+--------------+------------------+-------------------+1 row in set (0.03 sec)[root@Master-Mysql ~]# /usr/local/mysql/bin/mysqldump -uroot -p'' -B -A |gzip >/tmp/all.sql.gz #新窗口备份Enter password:mysql> unlock table; #解锁###############解锁后主库操作如下:###############mysql> use hitestmysql> insert into test(id,name) values(2,'binghe');mysql> select * from test;+----+--------+| id | name |+----+--------+| 1 | zy || 2 | binghe |+----+--------+mysql> create database hxy;###############解锁后主库操作完成~###############备注:备份数据需要重新打开新窗口,不然锁表就自动失效.四、主库导入到从库################主库操作################[root@Master-Mysql tmp]# ll-rw-r--r--. 1 root root 162236 Jul 8 21:30 all.sql.gz[root@Master-Mysql tmp]# gzip -d all.sql.gz[root@Master-Mysql tmp]# ll-rw-r--r--. 1 root root 590351 Jul 8 21:30 all.sql################主库完成##################备注:将主库导出的all.sql通过scp、ssh、sftp等方式拷贝到从库服务器,此处略## [root@Slave-Mysql ~]# grep log-bin /etc/f#log-bin = /usr/local/mysql/data/mysql-bin[root@Slave-Mysql ~]# grep server-id /etc/fserver-id = 2[root@Slave-Mysql ~]# /etc/init.d/mysqld restart[root@Slave-Mysql tmp]# /usr/local/mysql/bin/mysql -uroot -p'admin' </tmp/all.sqlWarning: Using a password on the command line interface can be insecure.[root@Slave-Mysql tmp]# /usr/local/mysql/bin/mysql -uroot -p'admin'mysql> use hitest;mysql> select * from test;+----+------+| id | name |+----+------+| 1 | zy |+----+------+1 row in set (0.00 sec)六、从库配置信息mysql> CHANGE MASTER TO-> MASTER_HOST='192.168.199.177',-> MASTER_PORT=3306,-> MASTER_USER='byrd',-> MASTER_PASSWORD='admin',-> MASTER_LOG_FILE='mysql-bin.000004',-> MASTER_LOG_POS=1305;Query OK, 0 rows affected, 2 warnings (1.96 sec)[root@Slave-Mysql ~]# ll /usr/local/mysql/data/##备注:记录MASTER的相关信息!七、启动从库同步mysql> start slave;mysql> show slave status\GSlave_IO_Running: YesSlave_SQL_Running: YesSeconds_Behind_Master: 0八、结果测试mysql> use hitest;mysql> select * from test;+----+--------+| id | name |+----+--------+| 1 | zy || 2 | binghe |+----+--------+2 rows in set (0.00 sec)[root@Master-Mysql ~]# /usr/local/mysql/bin/mysql -uroot -p'' -e "create database zhihu;" #主库建立了一个zhihu的数据库Enter password:[root@Slave-Mysql ~]# /usr/local/mysql/bin/mysql -uroot -p'' -e "show databases like 'zhihu'"; Enter password:+------------------+| Database (zhihu) |+------------------+| zhihu |+------------------+配置Mysql数据库的主从同步(双主)已经配置好的:主库:192.168.199.177从库:192.168.199.178[root@Master-Mysql ~]# egrep "server-id|log-slave|log-bin|auto_increment|slave-skip-errors" /etc/flog-bin = /usr/local/mysql/data/mysql-bin #必须server-id = 1 #必须log-slave-updates #必须auto_increment_increment = 2 #必须auto_increment_offset = 1 #必须slave-skip-errors = 1032,1062,1007 #非必须,建议########################主库、从库分隔符########################[root@Slave-Mysql data]# egrep "server-id|log-slave|log-bin|auto_increment|slave-skip-errors|read-only" /etc/f#log-bin = /usr/local/mysql/data/mysql-binserver-id = 2log-slave-updateslog-bin = /usr/local/mysql/data/mysql-bin#read-only #双主,此选项要注释掉slave-skip-errors = 1032,1062,1007auto_increment_increment = 2 #ID自增间隔auto_increment_offset = 2 #ID初始位置192.168.199.178:mysql> stop slave;mysql> flush table with read lock;mysql> show master status;+------------------+----------+--------------+------------------+-------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |+------------------+----------+--------------+------------------+-------------------+| mysql-bin.000004 | 120 | | | | +------------------+----------+--------------+------------------+-------------------+mysql> system /usr/local/sql/bin/mysqldump -uroot -p'' -A -B >/tmp/192.168.199.178.sql #如果主、从一致非必须mysql> unlock tables; #同上mysql> system ls -l /tmp/-rw-r--r--. 1 root root 2887406 Jul 12 22:24 192.168.199.178.sqlmysql> start slave;192.168.199.177:[root@Master-Mysql ~]# /usr/local/mysql/bin/mysql -uroot -p'' < /tmp/192.168.199.178.sql #如果主、从一致非必须mysql> update er set password=PASSWORD('admin') where user='root';[root@Master-Mysql ~]# cat |/usr/local/mysql/bin/mysql -uroot -p'admin' <<EOF #必须> CHANGE MASTER TO> MASTER_HOST='192.168.199.178',> MASTER_PORT=3306,> MASTER_USER='byrd',> MASTER_PASSWORD='admin',> MASTER_LOG_FILE='mysql-bin.000004',> MASTER_LOG_POS=120;> EOFmysql> start slave;mysql> show slave status\G*************************** 1. row ***************************Slave_IO_State: Waiting for master to send eventMaster_Host: 192.168.199.178Master_User: byrdMaster_Port: 3306Connect_Retry: 60Master_Log_File: mysql-bin.000004Read_Master_Log_Pos: 938Relay_Log_File: mysqld-relay-bin.000002Relay_Log_Pos: 1101Relay_Master_Log_File: mysql-bin.000004Slave_IO_Running: YesSlave_SQL_Running: YesLast_Errno: 0Skip_Counter: 0Exec_Master_Log_Pos: 938Relay_Log_Space: 1275Until_Condition: NoneUntil_Log_Pos: 0Master_SSL_Allowed: NoSeconds_Behind_Master: 0Master_SSL_Verify_Server_Cert: NoLast_IO_Errno: 0Last_SQL_Errno: 0Master_Server_Id: 2Master_UUID: 34d672c3-d292-11e3-9ff5-00155dc7834cMaster_Info_File: /usr/local/mysql/data/SQL_Delay: 0 SQL_Remaining_Delay: NULLSlave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update itMaster_Retry_Count: 86400测试:192.168.199.177:mysql> use hitest;mysql> CREATE TABLE `ces` (-> `REL_ID` bigint(12) NOT NULL auto_increment COMMENT 'id',-> `TITLE` varchar(255) NOT NULL COMMENT 'biaoti',-> PRIMARY KEY (`REL_ID`)-> ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;mysql> insert into ces(TITLE) values('test');mysql> insert into ces(TITLE) values('test');mysql> insert into ces(TITLE) values('test');mysql> insert into ces(TITLE) values('test25');mysql> select * from ces;+--------+-------+| REL_ID | TITLE |+--------+-------+| 1 | test || 3 | test || 5 | test || 25 | test25|+--------+--------+3 rows in set (0.03 sec)192.168.199.178:mysql> use hitest;mysql> insert into ces(TITLE) values('test26');mysql> insert into ces(TITLE) values('test28');mysql> insert into ces(TITLE) values('test30');mysql> select * from ces;+--------+--------+| REL_ID | TITLE |+--------+--------+| 1 | test || 3 | test || 5 | test || 26 | test26 || 28 | test28 || 30 | test30 |+--------+--------+17 rows in set (0.00 sec)说明:如果一主、一丛已经做好,只要知道从库位置点(show master status;)、然后之前主库执行(CHANGE MASTER)、之前主库开启slave(start slave)即可,其中数据库备份等步骤可以省略,如果主从有一些数据库不一致则同上操作.。

MySql数据主从同步配置

MySql数据主从同步配置

由于需要配置mysql的主从同步配置,现将配置过程记录下,已被以后不时之需MySql数据主从同步1.1. 同步介绍Mysql的主从同步是一个异步的复制过程,从一个Master复制到另一个Slave上。

在Master 与Slave 之间的实现整个复制过程主要由三个线程来完成,其中两个线程(Sql线程和IO线程)在Slave 端,另外一个线程(IO线程)在Master 端。

要实现MySQL 的主从同步,首先必须打开Master 端的BinaryLog(mysql-bin)功能,否则无法实现。

因为整个复制过程实际上就是Slave从Master端获取该日志然后再在自己身上完全顺序的执行日志中所记录的各种操作。

打开MySQL 的Binary Log 可以通过在启动MySQL Server 的过程中使用―—log-bin‖ 参数选项,或者在f 配置文件中的mysqld 参数组([mysqld]标识后的参数部分)增加―log-bin‖ 参数项。

1.2. Mysql主从服务器配置主服务器IP:192.168.1.60从服务IP:192.168.1.61Linux:centOSMysql版本:5.1.58以下配置皆在此服务上进行配置一、主数据库操作查看主库服务器的f配置文件,根据mysql安装包、版本不同,相关的路径和配置文件路径会大致不一样,不过大多情况下是一样的。

该文件在etc/目录下。

Mysql服务也提供了对不同服务器配置使用不同的配置文件,要使用它们的时候,只需用它们任一一个替换上面的f文件即可。

注:替换文件名必须为f。

cnf配置文件一般会有四个,可以根据命令# ll /usr/share/mysql/*.cnf 查看;f 内存少于或等于64M,只提供很少的的数据库服务;f 内存在32M--64M之间而且和其他服务一起使用,例如web;f 内存有512M主要提供数据库服务;f 内存有1G到2G,主要提供数据库服务;f 内存有4G,主要提供较大负载数据库服务(一般服务器都使用这个);可以根据服务器配置的不同选择不同的cnf配置文件。

mysql的主从同步的原理和流程

mysql的主从同步的原理和流程

mysql的主从同步的原理和流程摘要:1.引言2.MySQL 主从同步的原理1.主库记录数据更改操作2.从库连接主库并获取binlog 日志3.主库创建binlog-dump-thead 线程发送binlog 日志到从库4.从库接收数据并应用到本地数据库3.MySQL 主从同步的流程1.配置主库和从库2.从库向主库发送同步请求3.主库创建binlog-dump-thead 线程4.从库接收binlog 日志并应用到本地数据库4.MySQL 主从同步的应用场景1.读写分离2.实时备份3.提高系统扩展性5.结语正文:【引言】MySQL 是一款广泛应用于各类项目的开源关系型数据库。

在面对大规模数据存储和读写分离的需求时,MySQL 提供了主从同步的功能。

本文将详细介绍MySQL 主从同步的原理和流程,以及它在实际应用中的使用场景。

【MySQL 主从同步的原理】MySQL 主从同步的原理基于二进制日志(binlog)记录数据的更改操作。

以下是主从同步的具体原理:1.主库记录数据更改操作:当主库的数据发生更改时,主库会将这些更改操作记录在二进制日志(binlog)中。

2.从库连接主库并获取binlog 日志:从库会定期向主库发送连接请求,获取最新的binlog 日志。

3.主库创建binlog-dump-thead 线程发送binlog 日志到从库:主库在接收到从库的连接请求后,会创建一个binlog-dump-thead 线程,将binlog 日志发送到从库。

4.从库接收数据并应用到本地数据库:从库接收到主库发送的binlog 日志后,会将这些日志应用到本地数据库,从而保持与主库的数据一致性。

【MySQL 主从同步的流程】MySQL 主从同步的流程分为以下几个步骤:1.配置主库和从库:在实现主从同步之前,需要对主库和从库进行配置。

主要包括开启主库的binlog 功能,设置从库的主机名和用户名等。

2.从库向主库发送同步请求:在配置完成后,从库会向主库发送一个同步请求,告诉主库它想要同步的数据库和表。

MySQL主从复制和数据同步的解决办法

MySQL主从复制和数据同步的解决办法

MySQL主从复制和数据同步的解决办法在数据库管理系统中,MySQL是一种常用的关系型数据库,拥有强大的数据管理和查询能力。

而在MySQL中,主从复制和数据同步是常见且重要的功能,用于保证数据的高可用性和备份。

一、MySQL主从复制的概念和原理MySQL主从复制是指通过将主数据库的数据变更操作复制到一个或多个从数据库上,以实现数据的备份和读写分离。

主从复制的原理如下:1. 主数据库记录二进制日志(binary log),将数据变更操作以二进制形式记录下来。

2. 从数据库通过连接到主数据库并获取主数据库的二进制日志,按顺序执行其中的数据变更操作。

3. 从数据库执行完主数据库的二进制日志中的所有操作后,会记录当前执行的位置信息,以便下次继续从该位置获取并执行新的变更操作。

二、MySQL主从复制的配置步骤1. 配置主数据库:a) 修改主数据库的f配置文件,设置server-id为唯一的标识符。

b) 设置二进制日志(binary log)启用,并配置日志文件名和位置。

c) 重启主数据库。

2. 配置从数据库:a) 修改从数据库的f配置文件,设置server-id为唯一的标识符。

b) 设置从数据库连接主数据库的参数,包括主数据库的IP地址、用户名、密码等。

c) 启动从数据库。

3. 在主数据库上创建一个用于复制的用户,并给予复制权限。

a) 在主数据库上执行以下命令:CREATE USER 'replication'@'slave_ip' IDENTIFIED BY 'password';GRANT REPLICATION SLAVE ON *.* TO 'replication'@'slave_ip';b) 导出主数据库的数据,并记录当前二进制日志位置。

4. 在从数据库上启动主从复制:a) 在从数据库上执行以下命令,并设置主数据库的IP地址、用户名、密码等参数:CHANGE MASTER TO MASTER_HOST = 'master_ip', MASTER_USER = 'replication', MASTER_PASSWORD = 'password', MASTER_LOG_FILE ='binary_log_file', MASTER_LOG_POS = binary_log_pos;b) 启动从数据库的复制进程:START SLAVE;三、MySQL数据同步的解决办法MySQL数据库的数据同步是指将两个或多个数据库中的数据保持一致。

mysql的主从同步的原理和流程

mysql的主从同步的原理和流程

mysql的主从同步的原理和流程MySQL主从同步(Master-Slave Replication)是一种常用的数据复制技术,用于实现数据库的高可用性、可扩展性和备份。

在主从同步中,有一个主数据库(Master)负责处理写操作和数据更新,而多个从数据库(Slave)则负责处理读操作和接收主数据库的数据副本。

主从同步的原理如下:1. 主数据库将数据更改记录到二进制日志(Binary Log)中。

这些更改包括对表的更新、插入、删除等操作。

2. 从数据库连接到主数据库并开始读取主数据库的二进制日志。

从数据库将读取到的日志事件存储到自己的中继日志(Relay Log)中。

3. 从数据库启动一个SQL线程,将中继日志中的事件应用到自己的数据库。

这样,从数据库就可以保持与主数据库的数据一致。

主从同步的过程如下:1. 配置主数据库:在主数据库的配置文件(通常是f或my.ini)中,需要启用二进制日志(log_bin)并设置一个唯一的服务器ID(server-id)。

此外,还需要设置一个用于复制的用户名和密码。

2. 创建从数据库:对于每个从数据库,需要创建一个用户并赋予适当的权限。

然后,从数据库需要连接到主数据库并执行一个特殊的SQL语句来获取主数据库的二进制日志位置和配置信息。

3. 启动复制进程:从数据库启动一个I/O线程,连接到主数据库并开始读取主数据库的二进制日志。

读取到的日志事件被存储到中继日志中。

4. 应用事件:从数据库启动一个SQL线程,从中继日志中读取事件并应用到自己的数据库。

这样,从数据库就可以保持与主数据库的数据一致。

5. 实时监控:可以通过查看从数据库的复制进程状态来实时监控主从同步的状态。

如果发现任何错误或延迟,可以及时采取措施解决问题。

主从同步的优势包括:1. 提高性能:通过将读操作分担到多个从数据库上,可以减轻主数据库的压力,提高整个系统的性能。

2. 数据备份:从数据库可以作为主数据库的备份,如果主数据库出现故障,可以迅速切换到从数据库继续服务。

mysql的主从同步的原理和流程

mysql的主从同步的原理和流程

mysql的主从同步的原理和流程MySQL的主从同步是指将一个MySQL服务器(称为主服务器)的数据同步到另一个MySQL服务器(称为从服务器)的过程。

主从同步既可以用于数据备份,也可以用于负载均衡。

下面详细介绍MySQL主从同步的原理和流程。

1.主从同步的原理:主从同步的实现原理主要包括三个步骤:二进制日志(Binlog)的记录、从服务器的复制请求和应用、以及重放。

a. 二进制日志记录(Binlog):主服务器将所有对数据库的修改(增、删、改)操作都记录到二进制日志中,包括每一条修改的SQL语句或者语句的执行结果。

这样可以保证主服务器上的数据修改被记录下来,并且能够准确地反映出数据的修改历史。

b.从服务器的复制请求和应用:从服务器向主服务器发送一个复制请求,请求从主服务器获取二进制日志的内容。

主服务器收到复制请求后,将二进制日志中的内容发送给从服务器。

从服务器接收到主服务器发送的二进制日志后,将其应用到自己的数据库中,实现从服务器的数据更新。

c.重放:从服务器将收到的二进制日志应用到自己的数据库中后,就完成了一次数据库的同步。

这样,从服务器就能够与主服务器保持一致的数据,实现了主从同步。

2.主从同步的流程:下面是主从同步的具体步骤:a.配置主服务器:在主服务器上,需要在配置文件中开启二进制日志(binlog),并且配置一个唯一标识(server-id)。

这个标识用来标识主服务器,从服务器需要用来识别主服务器。

b.配置从服务器:在从服务器上,需要在配置文件中配置一个唯一标识(server-id),用来识别从服务器。

同时,还需要指定主服务器的IP地址和端口号,以及需要连接到主服务器的用户名和密码。

c.启动主服务器和从服务器:首先,启动主服务器,使其开始接受客户端的请求。

然后,启动从服务器,使其连接到主服务器,并开始复制主服务器的数据。

d.主服务器记录二进制日志:当主服务器接收到客户端的修改操作(增、删、改)时,会将修改操作记录到二进制日志中,包括每一条修改的SQL语句或者语句的执行结果。

mysql 主从同步方案

mysql 主从同步方案

MySQL 主从同步方案1. 简介在 MySQL 数据库中,主从同步是一种常见的数据复制方案,它通过将主服务器的数据复制到从服务器,实现数据的实时同步。

主从同步的实现可以极大地提高数据库的可用性、可扩展性和容错性,同时还能够分担主服务器的读写压力。

2. 主从同步的工作原理MySQL 的主从同步是基于二进制日志(Binlog)的,具体工作流程如下:1.主服务器将写入的更新操作记录到二进制日志中。

2.从服务器连接到主服务器,并请求从主服务器获取二进制日志文件。

3.主服务器将二进制日志文件传输给从服务器。

4.从服务器将二进制日志应用到自己的数据集上,实现数据的同步。

主从同步采用的是异步方式,即主服务器不需要等待从服务器的确认。

这样可以确保主服务器的性能不受从服务器的影响。

3. 主从同步的配置步骤要实现 MySQL 的主从同步,需要完成以下几个配置步骤:步骤一:更改主服务器的配置在主服务器的配置文件(f)中,需要添加以下配置项:[mysqld]server-id=1log-bin=mysql-bin•server-id=1表示为主服务器分配一个唯一的标识,可根据实际情况设置。

•log-bin=mysql-bin开启二进制日志功能,并设定日志文件的名称。

步骤二:重启主服务器重启主服务器,使配置的修改生效。

步骤三:创建用于同步的用户在主服务器上创建一个用于同步的用户,并为其授权。

示例命令如下:CREATE USER'replication'@'从服务器地址'IDENTIFIED BY'password'; GRANT REPLICATION SLAVE ON*.*TO'replication'@'从服务器地址';•'replication'@'从服务器地址'表示从服务器的 IP 地址,可根据实际情况进行替换。

MySql实现主从同步配置

MySql实现主从同步配置

MySql实现主从同步配置MySQL主从同步配置是指将一个MySQL数据库服务器作为主服务器,然后将另一个MySQL数据库服务器作为从服务器,实现主服务器上的数据同步到从服务器上的过程。

MySQL主从同步配置主要包括以下几个步骤:1. 确认MySQL版本和配置:在开始配置主从同步之前,首先要确认MySQL的版本并进行必要的配置。

确保主服务器和从服务器上的MySQL版本一致,并且启用了二进制日志(Binary Log)和唯一ID(Unique ID)。

```shellserver-id = 1 # 设置主服务器的唯一ID,在整个复制拓扑中必须是唯一的log-bin = mysql-bin # 启用二进制日志,用于记录所有的更新操作binlog-do-db = dbname # 需要复制的数据库名binlog-ignore-db = mysql # 需要忽略复制的数据库名```然后重启MySQL服务使配置生效。

3.创建复制用户:在主服务器上,创建用于复制的用户,并给予复制权限。

这个用户将用于从服务器连接主服务器进行数据复制。

可以使用以下命令在MySQL中创建复制用户:```shellFLUSHPRIVILEGES;```其中,'replication'是复制用户的用户名,'password'是密码,'%'表示可以从任意IP地址连接。

4.备份主服务器数据:在配置主从同步之前,最好对主服务器上的数据进行备份,以免在配置过程中出现问题导致数据丢失。

```shellserver-id = 2 # 设置从服务器的唯一IDrelay-log = mysql-relay-log # 设置中继日志的名称,用于记录主服务器的二进制日志内容read-only = 1 # 设置从服务器为只读模式,避免误操作修改数据```重启MySQL服务使配置生效。

6.启动从服务器复制:在从服务器上,使用以下命令连接主服务器并启动复制:```shellCHANGE MASTER TO MASTER_HOST='主服务器IP',MASTER_USER='replication', MASTER_PASSWORD='password', MASTER_LOG_FILE='主服务器上的二进制日志文件名', MASTER_LOG_POS=日志位置;STARTSLAVE;```其中,'主服务器IP'是主服务器的IP地址,'主服务器上的二进制日志文件名'是主服务器二进制日志中当前复制位置的文件名,'日志位置'是主服务器二进制日志的当前位置。

详解MySQL数据库设置主从同步的方法

详解MySQL数据库设置主从同步的方法

详解MySQL数据库设置主从同步的⽅法简介MySQL主从同步是⽬前使⽤⽐较⼴泛的数据库架构,技术⽐较成熟,配置也不复杂,特别是对于负载⽐较⼤的⽹站,主从同步能够有效缓解数据库读写的压⼒。

MySQL主从同步的机制:MySQL同步的流程⼤致如下:1、主服务器(master)将变更事件(更新、删除、表结构改变等等)写⼊⼆进制⽇志(master log)。

2、从服务器(slave)的IO线程从主服务器(binlog dump线程)获取⼆进制⽇志,并在本地保存⼀份⾃⼰的⼆进制⽇志(relay log)3、从服务器的SQL线程读取本地⽇志(relay log),并重演变更事件。

MySQL主从同步的作⽤:1、可以作为⼀种备份机制,相当于热备份(在从备份,避免备份期间影响主服务器服务)2、可以⽤来做读写分离,均衡数据库负载(主写从读)3、当主服务器出现问题时,可以切换到从服务器。

MySQL主从同步的步骤:⼀、准备操作:1、主从数据库版本⼀致,建议版本5.5以上2、主从数据库数据⼀致⼆、主数据库master修改:1、修改MySQL配置:# /etc/flog-bin = mysql-bin# 主数据库端ID号server-id = 1log-bin=/home/mysql/logs/binlog/bin-logmax_binlog_size = 500Mbinlog_cache_size = 128Kbinlog-do-db = adbbinlog-ignore-db = mysqllog-slave-updatesexpire_logs_day=2binlog_format="MIXED"上⾯配置中各个参数的含义和相关注意项:#服务器标志号,注意在配置⽂件中不能出现多个这样的标识,如果出现多个的话mysql以第⼀个为准,⼀组主从中此标识号不能重复。

server-id = 1log-bin=/home/mysql/logs/binlog/bin-log #开启bin-log,并指定⽂件⽬录和⽂件名前缀。

MYSQL数据库如何设置主从同步

MYSQL数据库如何设置主从同步

MYSQL数据库如何设置主从同步⽬录1、配置主数据库2、配置从数据库总结MYSQL可以配置1个主数据库多个从数据库1、配置主数据库主master : 192.168.1.132从slave : 192.168.1.1331)授权给从数据库GRANT REPLICATION SLAVE ON *.* to 'repl'@'192.168.1.132' identified by 'test123456';FLUSH PRIVILEGES;2)修改主库配置⽂件,开启binlog,并设置server-id,每次修改配置⽂件后都要重启mysql服务才会⽣效vim /etc/fserver-id:master端的ID号;log-bin:同步的⽇志路径及⽂件名,这个⽬录要是mysql有权限写⼊的;binlog-do-db:要同步的数据库名3)授权chown mysql:mysql -R /usr/local/mysql_data4)重启服务:service mysqld restart5)输⼊下⽅语句show master status;2、配置从数据库1)设置从数据库配置vi /etc/fserver-idreplicate-do-db=world2)添加主数据库的地址、端⼝号、同步⽤户、密码、log⽂件、⽂件起始位置。

3)删除fcd /usr/local/mysql_data/rm -rf f(不删除会同步不成功)4)启动从数据库主从show slave status5) 在主数据插⼊数据,从数据就是同步数据。

总结到此这篇关于MYSQL数据库如何设置主从同步的⽂章就介绍到这了,更多相关MYSQL主从同步内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。

Mysql主从同步在线实施步骤【适合大数据库从库配置】

Mysql主从同步在线实施步骤【适合大数据库从库配置】

Mysql主从同步在线实施步骤【适合⼤数据库从库配置】Mysql主从同步在线实施步骤【适合⼤数据库从库配置】 MySQL的主从搭建⼤家有很多种⽅式,传统的mysqldump⽅式是很多⼈的选择之⼀,但⽐较适合在新实例中实施,对于较⼤的数据库则存在停机等不可接受的问题,所以该⽅式并⾮理想的选择。

使⽤innobackupex 则可以快速轻松的构建或修复mysql主从架构,该⽅式的好处是对主库⽆需备份期间导致的相关性能压⼒及锁表的问题。

主:10.8.8.53从:10.8.8.72步骤:1. 分别在主从机上安装依赖环境及同步⼯具percona-xtrabackuprpm -i --force --nodeps libmysqlclient18-10.1.22-alt1.x86_64.rpmyum -y install perl perl-devel libaio libaio-devel perl-Time-HiRes perl-DBD-MySQLyum install percona-xtrabackup-24-2.4.6-2.el6.x86_64.rpm 2.主备份数据(模拟主在线每1秒写⼊⼀条数据)cd /home/ xtrabackup-mysql本地压缩备份:(主执⾏)innobackupex --defaults-file=/opt/mysql/conf/f --host=192.168.8.53 --user=root --password=*** --socket=/opt/mysql/pid/mysqld3310.sock --stream=tar ./log001/ 2>log001.log | gzip1>log001.tar.gz2019-01-30:/usr/local/xtrabackup/bin/innobackupex --defaults-file=/data/mysql/mysql_master/f --host=127.0.0.1 --user=root --password=xxxx --port=xxx6 --socket=/data/mysql/mysql_master/data/mysql.sock --stream=tar ./backup/ 3.传送到从机器上scp log001.tar.gz root@192.168.8.72:/home/xtrabackup-mysql 4.在从机器上解压压缩包cd /home/xtrabackup-mysqltar zxvf log001.tar.gz –C data  5.在从机上把备份的⽬录prepare好innobackupex --apply-log --use-memory=4GB ./data #--use-memory:配置内存,加快速度 6.把prepare好的备份⽬录拷贝回数据⽬录(注意:可先备份原来数据库⽬录,拷贝后会⽣成数据库⽬录)【事实证明这⼀步不⽤也可以】mv /home/mysqldata/mysql3300/data /home/mysqldata/mysql3300/data.bakinnobackupex --copy-back ./data 7.修改权限:chown -R mysql:mysql /home/mysqldata 8.重启从数据库systemctl restart mysqld.service 9.进⼊从数据库,配置从的主库CHANGE MASTER TOMASTER_HOST='192.168.8.53',MASTER_USER='root',MASTER_PASSWORD='xxx',MASTER_LOG_FILE='mysql-bin.000109 ',MASTER_LOG_POS=863747237;CHANGE MASTER TO MASTER_HOST='192.168.8.53',MASTER_USER='root',MASTER_PASSWORD='xxxx',MASTER_PORT=xxxx,MASTER_LOG_FILE='mysql-bin.000109',MASTER_LOG_POS=863747237;  10.开启从库start slave; 11.查看从状态show slave status\G; 12.对⽐主从数据是否⼀致(下⾯是测试截图)主:从:。

Mysql主从数据库(MasterSlave)同步配置与常见错误

Mysql主从数据库(MasterSlave)同步配置与常见错误

Mysql主从数据库(MasterSlave)同步配置与常见错误随着访问量的增加,对于⼀些⽐较耗时的数据库读取操作,⼀般采⽤将写⼊与读取操作分开来缓解数据库的压⼒,数据库引擎⼀般采⽤Master/Slave架构。

实现mysql服务器的主从配置,可以实现读写分离,另外在主数据库崩溃后可以从备⽤数据库中恢复数据以不⾄于⽹站中断访问。

下⾯简单说下mysql主从服务器配置的过程。

⾸先需要在同⼀个局域⽹内的两台机器(当然也可以⽤⼀台机器虚拟两台机器出来),都安装上mysql服务。

主机A: 192.168.1.100从机B: 192.168.1.101可以有多台从机。

1、先登录主机 A,执⾏如下命令赋予从机权限,如果有多台丛机,就执⾏多次:mysql>GRANT REPLICATION SLAVE ON *.* TO 'backup'@'192.168.1.101' IDENTIFIED BY '123456';2、打开主机A的f,输⼊如下配置参数:server-id = 1 #主机标⽰,整数log_bin = /var/log/mysql/mysql-bin.log #确保此⽂件可写read-only =0 #主机,读写都可以binlog-do-db =test #需要备份数据,多个写多⾏binlog-ignore-db =mysql #不需要备份的数据库,多个写多⾏3、打开从机B的f,输⼊如下配置参数:server-id = 2log_bin = /var/log/mysql/mysql-bin.logmaster-host =192.168.1.100master-user =backupmaster-pass =123456master-port =3306master-connect-retry=60 #如果从服务器发现主服务器断掉,重新连接的时间差(秒)replicate-do-db =test #只复制某个库replicate-ignore-db=mysql #不复制某个库4、同步数据库进过以上的配置,分别重启主机A和从机B,即可⾃动实现同步。

mysql 主从同步机制

mysql 主从同步机制

mysql 主从同步机制MySQL主从同步机制是指在MySQL数据库中,通过配置主服务器和从服务器的关系,实现主服务器上的数据自动同步到从服务器上的一种机制。

这种机制能够提高数据库的可用性和可扩展性,并且可以保证数据的一致性。

在主从同步机制中,主服务器负责处理所有的写操作,也就是对数据库的增、删、改操作进行处理,而从服务器则负责处理读操作,即对数据库的查询操作进行处理。

主服务器和从服务器之间通过二进制日志(Binary Log)来进行数据同步。

具体的同步过程如下:1. 首先,在主服务器上启用二进制日志功能。

二进制日志是主服务器上记录所有写操作的日志文件,通过将这些日志文件传输到从服务器,从服务器可以重放这些日志文件以达到与主服务器数据一致的目的。

2. 主服务器将写操作记录在二进制日志中后,从服务器通过连接主服务器,并请求从指定的二进制日志文件位置开始传输日志。

从服务器将接收到的日志文件保存在本地的中继日志文件(Relay Log)中。

3. 从服务器将中继日志文件中的日志内容应用到自己的数据库中,这样就完成了数据的同步。

需要注意的是,在主从同步过程中,主服务器和从服务器之间的网络连接是非常重要的。

如果网络连接不稳定或者延迟较高,可能会导致同步延迟或者数据丢失的情况发生。

主从同步机制的优势主要有以下几点:1. 提高数据库的可用性:通过配置主从服务器的关系,当主服务器出现故障时,可以快速切换到从服务器上,保证数据库的正常运行。

2. 提高数据库的可扩展性:通过配置多个从服务器,可以实现读写分离的架构,从而提高数据库的并发处理能力。

3. 保证数据的一致性:主服务器上的数据写操作都会被记录在二进制日志中,并通过网络传输到从服务器上,从服务器会按照主服务器的顺序重放这些日志文件,从而保证数据的一致性。

4. 提高系统的负载均衡能力:通过配置多个从服务器,可以将读操作分散到不同的从服务器上,从而减轻主服务器的负载压力。

如何使用MySQL进行主从同步和读写分离的设置

如何使用MySQL进行主从同步和读写分离的设置

如何使用MySQL进行主从同步和读写分离的设置MySQL作为一种常见的关系型数据库管理系统,广泛应用于各种应用场景中。

在实际开发中,为了提高数据库的性能和可用性,我们常常使用主从同步和读写分离的技术来进行配置和优化。

本文将介绍如何使用MySQL进行主从同步和读写分离的设置,以及相应的配置策略和注意事项。

一、主从同步的概念和原理主从同步是指在一个MySQL数据库集群中,有一个主数据库负责处理写操作(如插入、更新、删除),而其他从数据库则负责接收主数据库的变更操作并进行复制,以保持数据一致性。

主从同步的核心原理是通过二进制日志(binlog)和中继日志(relay log)来实现数据的复制和同步。

在MySQL主从同步中,主数据库会将所有的变更操作记录在二进制日志中,而从数据库通过读取主数据库的二进制日志,并将其写入自己的中继日志,然后再根据中继日志的内容对自己进行相应的变更操作。

这样,从数据库就能够实时复制主数据库的数据,并保持数据一致性。

二、主从同步的配置步骤1. 配置主数据库首先,在主数据库中打开binlog功能,可以通过修改MySQL的配置文件f来实现。

找到配置文件中的[mysqld]段落,在其下面添加以下配置项:```log-bin=mysql-binserver-id=1```其中,log-bin=mysql-bin表示启用二进制日志功能,并将日志存储在mysql-bin 文件中;server-id=1表示设置主数据库的唯一标识符。

接下来,重新启动主数据库使配置生效。

2. 配置从数据库在从数据库中,同样需要打开binlog功能,并设置唯一标识符。

修改配置文件f,添加以下配置项:```log-bin=mysql-binserver-id=2relay-log=relay-log```其中,log-bin和server-id的作用与主数据库中的配置相同,relay-log指定中继日志的文件名。

mysql主从数据库不同步的2种解决方法

mysql主从数据库不同步的2种解决方法

mysql主从数据库不同步的2种解决⽅法今天发现Mysql的主从数据库没有同步:mysql>show processlist; 查看下进程是否Sleep太多。

发现很正常。

show master status; 也正常。

mysql> show master status;+-------------------+----------+--------------+-------------------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+-------------------+----------+--------------+-------------------------------+| mysqld-bin.000001 | 3260 | | mysql,test,information_schema |+-------------------+----------+--------------+-------------------------------+1 row in set (0.00 sec)再到Slave上查看mysql> show slave status\GSlave_IO_Running: YesSlave_SQL_Running: No可见是Slave不同步:该⽅法适⽤于主从库数据相差不⼤,或者要求数据可以不完全统⼀的情况,数据要求不严格的情况解决:stop slave;#表⽰跳过⼀步错误,后⾯的数字可变set global sql_slave_skip_counter =1;start slave;之后再⽤mysql> show slave status\G 查看:Slave_IO_Running: YesSlave_SQL_Running: Yesok,现在主从同步状态正常了。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

flush privileges;
重启mysql服务
从服务器配置
1.mysql5.1.7版本以后已经不支持把master配置属性写入my.ini文件中了,只需把同步的数据库和需要忽略的数据库写入
2.打开mysql安装路径下的 my.ini文件
在底部加入
server-id=2
*************************** 1. row ******************
Slave_IO_State: Checking master versio
Master_Host: 10.4.5.64
Master_User: root
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000001
Read_Master_Log_Pos: 7453
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 1
1 row in set (0.00 sec)
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Master_SSL_Key:
Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
mysql> stop slave;
Query OK, 0 rows affected (0.33 sec)
change master to
master_host="10.4.5.64",
master_user="root",
master_password="123456",;
Query OK, 0 rows affected (0.00 sec)
log-bin=mysql-bin
replicate-do-db=test #需要同步的数据库
replicate-ignore-db=mysql #需要忽略不同步的数据库
重启mysql服务
3.进入mysql命令行,停止从服务线程并执行mysql命令,然后再启动从服务线程
Exec_Master_Log_Pos: 7453
Relay_Log_Space: 3910
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
ERROR:
No query specified
Slave_IO_Running: Yes
Slave_S如果不是请检查配置文件及权限的设置。。。
====================================================================
mysql> start slave;
Query OK, 0 rows affected (0.14 sec)
mysql> show slave status\G;
2.1 在最底部加入
server-id=1
log-bin=mysql-bin #开启二进制日志功能
2.2在主服务器上新建一个同步用的帐号授权给从服务器访问(用户名:root 密码:123456)
grant replication slave on *.* to root@10.4.5.65 identified by "123456";
Relay_Log_File: v3-relay-bin.000008
Relay_Log_Pos: 3757
Relay_Master_Log_File: mysql-bin.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB: test
Replicate_Ignore_DB: mysql
Replicate_Do_Table:
Replicate_Ignore_Table:
OS:windows 2003
mysql版本:mysql5.5.11
A:10.4.5.64(master)
B:10.4.5.65(slave)
主服务器配置
1.首先分别在俩台服务器上配置好IP和安装好mysql
2.主服务器上的配置
打开mysql安装路径下的 my.ini文件
相关文档
最新文档