MySQL的主从复制方案,是数据的传输。只不过MySQL无需借助第三方工具,而是其自身同步复制的功能,另外一点,MySQL的主从复制并不是磁盘上直接同步,而是逻辑binlog日志同步到本地再应用执行的过程。一、MySQL主从同步的简要操作过程:1)从库开启两个线程,分别是IO线程和SQL线..
分类:
数据库 时间:
2016-03-03 06:53:20
阅读次数:
307
前文《MySQL 数据库事务与复制》分析了 MySQL 复制过程中如何保证 binlog 和事务数据之间的一致性,本文进一步分析引入从库后需要保证主从的数据一致性需要考虑哪些方面。 原生复制架构 MySQL 的原生复制架构原理如上图所示。从库的 I/O Thread 线程负责不断读取主库的 binl
分类:
数据库 时间:
2016-03-01 20:46:40
阅读次数:
204
由于数据库很大,只恢复几张表既可以使用。恢复方法如下:停止slave复制,stopslave;在主库上导出这三张表,并记录binlog和pos点:mysqldump--single-transaction--master_data=2dbnametable1table2table3>dbname_table(123).sql查看导出的sql脚本,在脚本头部有binlog和pos..
分类:
其他好文 时间:
2016-02-29 20:07:24
阅读次数:
119
truncatetable恢复:
1、测试数据
mysql>selectcount(*)fromo_order;
+----------+
|count(*)|
+----------+
|34|
+----------+
1rowinset(0.00sec)
2、truncatetable
mysql>truncatetableo_order;
QueryOK,0rowsaffected(0.05sec)
mysql>selectcount(*)fromo_ord..
分类:
数据库 时间:
2016-02-26 19:13:56
阅读次数:
202
同步,异步,半同步复制的比较: 同步复制:Master提交事务,直到事务在所有的Slave都已提交,此时才会返回客户端,事务执行完毕。缺点:完成一个事务可能会有很大的延迟。 异步复制:当Slave准备好才会向Master请求binlog。缺点:不能保证一些事件都能够被所有的Slave所接收。 半同步
分类:
数据库 时间:
2016-02-22 17:27:11
阅读次数:
164
MySQL 提供了数据库的同步功能,这对我们实现数据库的冗灾、备份、恢复、负载均衡等都是有极大帮助的。本文描述了常见的同步设置方法。 一、准备服务器 由于MySQL不同版本之间的(二进制日志)binlog格式可能会不一样,因此最好的搭配组合是Master的MySQL版本和Slave的版本相同或者更低
分类:
数据库 时间:
2016-02-22 08:54:31
阅读次数:
197
binlog日志用于记录所有更新了数据或者已经潜在更新了数据的所有语句。语句以“事件”的形式保存,它描述数据更改。当我们因为某种原因导致数据库出现故障时,就可以利用binlog日志来挽回(前提是已经配置好了binlog),接下来我们来配置 一、开启mysql-binlog日志 在mysql配置文件m
分类:
数据库 时间:
2016-02-22 00:17:45
阅读次数:
342
主从失败的时候先查看从数据库showslavestatus\G记住bin-log的pos和binlog文件(一般选择最近的pos的上一个点来进行恢复)或者查看mysql的错误日记的时间点,将mysql-binlog转化为txt,可以查看数据库的每一个操作mysqlbinlog/路径/mysql-bin.000xxx>txt1.txt使用changemastert..
分类:
数据库 时间:
2016-02-17 09:37:12
阅读次数:
197
一主一从(重要),一主多从(最常用),主从从,主主结构;控制主从同布时,备份指定的数据库而不是备份所有的库:1在主数据库服务端配置:vim/etc/my.cnf[mysqld]binlog-do-db=db_name#只允许同步这个库binlog-ignore-db=db_name#只不同步这个库2在从数据库服务端配置:vim/e..
分类:
数据库 时间:
2016-02-03 06:46:06
阅读次数:
201
mysql引擎默认类型为MyISAM,mysql>show
engines;事务隔离机制为:READ-COMMITTED(/etc/my.cnf查看)默认建表如果不指定引擎类型,自动为MyISAM。此时想更改表为InnoDB类型。用户登陆到mysql客户端执行:mysql>altertableATTengine=
InnoDB;则报错:ERROR1598(HY000):Binar..
分类:
数据库 时间:
2016-01-31 13:45:18
阅读次数:
181