mysql主从的注意事项

1.配置文件my.cnf里面的几个选项的解释(配置文件放在 [mysqld]下面

server-id   是节点标识符。必须全局唯一(也就是说不能一样)

log-bin 表示开启mysql是二进制日志功能,是mysql可以同步的关键。这个选项必须开启,否则无法生成日志文件,不可能同步。一般会生成文件名为mysql-bin-000001  (mysql-bin-00000x).

如果:show  master status;     没有返回状态结果。最有可能就是 log-bin功能没有开启。

relay-bin( 中继日志 )用来定义从中继日志的命名规则(这个一般不用更改)

replicate-wild-ingore-table  是复制过滤选项的。可以过滤掉不需要复制的数据库或表,例如:

replicate-wild-ingore-table=msyql.%.就表示不复制mysql库下的所有对象,

2.同步数据库。既然要主从复制。开始的时候,数据还是要一致的。

一般的操作是:进入主库。锁表,备份。

mysql> flush tables with read lock; (千万不要退出这个终端,否则锁表失败)

可以在开启一个终端  备份;

#mysqldump -u xx   -pxxx    >xxxxx.sql

导出数据后:解锁    mysql > unlock tables;

3.在开启slave的时候:常出现的问题。

Last_IO_Error: Got fatal error 1236 from master when  reading data from binary log:
‘Client requested master to start  replication from impossible position‘

这个错误一般分时间的。

如果是第一次安装的时候出现:最大的可能性是:change master to  语句中间出现了空格。解决办法:检查语法。

如果是运行一段时间后,出现这个错误。

查看mysql错误日志:最近的   mysql-bin-xxxxxx  和position  这2个 参数的信息。

*************************************************************

一般步骤: > stop slave;

mysql> change master to master_log_file=‘mysql-bin.xxxxxx‘,master_log_pos=xxxxxxx1x;mysql> start slave;

*********************************************************

如果还不可以。可以查看下 主服务器的bin-log文件。

# mysqlbinlog xxxxx/mysql-bin.xxxxxx> cat.txt

#tail -10 cat.txt

在寻找最近关于master_log_file 和 master_log_pos 的信息。

然后: 重复**一般步骤**。

还有就是:数据要求不高的时候。

stop slave;
set global sql_slave_skip_counter =1 ;
start slave;

最糟糕就是:删了从库。重新同步主库的数据。是最耗费时间的。前提。主库没有问题,是最好的。

时间: 2024-10-09 21:09:14

mysql主从的注意事项的相关文章

mysql 主从问题集锦

在InnoDB引擎下发现,Mysql的主从热备存在数据不一致的问题,一些数据没有成功同步到备机.在use databases后,更新的表必须是当前选择的database才同步.譬如连上Mysql服务后操作: USE test2; UPDATE client SET name='test' WHERE uid=1; 数据未能同步到备机,而使用use  test后,才可以成功同步,如下方式: USE test; UPDATE client SET name='test' WHERE uid=1;  

mysql主从同步的配置

1. mysql主从复制的介绍 1.1 为什么使用主从复制 MySQL支持单双向,链式级联,异步复制.mysql 在插入数据过程中,会锁表,此时,就无法读数据.设置好主从同步之后,主数据库用来对数据进行增,删,改,从数据库只用来查数据.生产环境下,一般会忽略授权表的同步,对从服务器的用户授权select的权限,同时在my.cnf中加入read-only的参数,确保从库只读. 1.2 MySQL主从复制的优点: 有利于数据库的健壮性,访问速度和系统维护管理. 主从服务器架构的设置,可以大大的强加数

mysql主从的几个小知识点

一.导致数据库停止的原因: a.mysqld经常异常结束 b.磁盘空间满了 c.磁盘故障 d.服务器电源故障 二.MySQL主从同步功能的特性以及注意事项: a.主(master)指的是接收客户端发出的修改与查询两种类型的语句的服务器 b.从(Slave)指的是不接收客户端发出的更新请求,仅通过与Master的联动来进行数据的更新服务器 三.同步数据同步.异步数据同步: a.为了实现同步,Slave中设置了两个进程同时工作,即"I/O进程"与"SQL进程": b.I

CentOS之MYSQL主从同步配置

一.主机master与salver均关闭防火墙iptables,执行service iptables stop命令: 设置SELINUX文件的SELINUX=disabled,如图所示: 二.创建数据库 分别登录master机和slave机的mysql:mysql –u root –p 创建数据库:create database repl; 在/usr/local/mysql目录下建立MYSQL复制的日志配置文件/usr/local/mysql/mysql-bin.log并赋予权限以及改变文件的

Mysql主从同步-概念和原理介绍

Mysql复制概念Mysql内建的复制功能是构建大型高性能应用程序的基础, 将Mysql数据分布到多个系统上,这种分布机制是通过将Mysql某一台主机数据复制到其它主机(slaves)上,并重新执行一遍来实现的.复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环.这些日志可以记录发送到从服务器的更新.当一个从服务器连接主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置.从服务器接收从那时起

mysql主从数据对比工具简介

1 Checksum 1.1 checksum原理 checksum table的原理是对表中的数据进行一行一行的较验和计算,在执行checksum命令时,表会被加一个读锁(read lock),因此对于大表,这是一个很耗时的过程. 读锁:又叫S锁/共享锁:当MySQL的一个进程为某一表开启读锁之后,其他的进程包含自身都没有权利去修改这表表的内容.但是所有的进程还是可以读出表里面的内容的.但是不能实现更新. 1.2 语法 在数据库中输入checksum  table   库.表: 说明:chec

MySQL 主从同步(1) - 概念和原理介绍 以及 主从/主主模式 部署记录

Mysql复制概念Mysql内建的复制功能是构建大型高性能应用程序的基础, 将Mysql数据分布到多个系统上,这种分布机制是通过将Mysql某一台主机数据复制到其它主机(slaves)上,并重新执行一遍来实现的.复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环.这些日志可以记录发送到从服务器的更新.当一个从服务器连接主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置.从服务器接收从那时起

mysql主从配置

首先说下为什么需要mysql主从? 主要有三个原因:1,可以辅助备份,提高数据安全性:2,可以实现读写分离,达到负载分担的效果:3,可以实现高可用,在主服务器故障时,迅速切换到从,保证业务不间断运行. 针对上述需求,基本上一主一从,即可满足. 再来看下mysql主从复制的工作过程: 主要有三步: 1)master将改变记录到二进制日志(binary log)中,(这些记录叫做二进制日志事件,binary log events)   2)slave将master的binary log events

MYSQL 主从同步故障-Error1062--解决方案

MYSQL 主从同步故障-Error1062-解决方案 公司有两台Mysql服务器之前配置了主从同步,今天用户反映数据有差异,登陆到服务器上查看Mysql主从配置,发现有错误: show slave status \G;  果然出现问题了 Slave_IO_Running: Yes Slave_SQL_Running: No 而且出现了1062错误 Last_SQL_Error: Error 'Duplicate entry '1001-164761-0' for key 'PRIMARY''