- 浏览: 188702 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
grzrt:
zkf55915 写道哥们怎么用啊
好久不用了,就是看帮助资 ...
淘宝MetaQ开源消息队列安装 -
zkf55915:
哥们怎么用啊
淘宝MetaQ开源消息队列安装 -
grzrt:
jinnianshilongnian 写道整这个了?
没有 看 ...
linux内核中链表的实现 -
jinnianshilongnian:
整这个了?
linux内核中链表的实现
http://apps.hi.baidu.com/share/detail/31674919
MySQL 5.1 中,在复制方面的改进即便引进了新的复制技巧:基于行的复制。简言之,这种新技巧即便关怀表中发生改变的登记,而非过去的照抄 binlog 形式。从 MySQL 5.1.12 开始,能够用以下三种形式来告终:基于SQL语句的复制(statement-based replication, SBR),基于行的复制(row-based replication, RBR),混杂形式复制(mixed-based replication, MBR)。相应地,binlog的款式也有三种:STATEMENT,ROW,MIXED。MBR 形式中,SBR 形式是默认的。
在运行时能够动态低改换binlog的款式,除非以下几种情形:
1. 存储过程可能引发器其中
2. 启用了NDB
3. 目前会话试用 RBR 形式,并且已敞开了临时表
万一binlog批准了 MIXED 形式,那么在以下几种情形下会积极将binlog的形式由 SBR 形式改成 RBR 形式。
1. 当DML语句更新一个NDB表时
2. 当函数中包括 UUID() 时
3. 2个及以上包括 AUTO_INCREMENT 字段的表被更新时
4. 行任何 INSERT DELAYED 语句时
5. 用 UDF 时
6. 视图中定然要求利用 RBR 时,例如创立视图是利用了 UUID() 函数
设定主从复制形式的措施极其容易,凡是在过去设定复制搭配的基础上,再加一个参数:
binlog_format="STATEMENT"
#binlog_format="ROW"
#binlog_format="MIXED"
当然了,也能够在运行时动态修正binlog的款式。例如
mysql> SET SESSION binlog_format = 'STATEMENT';
mysql> SET SESSION binlog_format = 'ROW';
mysql> SET SESSION binlog_format = 'MIXED';
mysql> SET GLOBAL binlog_format = 'STATEMENT';
mysql> SET GLOBAL binlog_format = 'ROW';
mysql> SET GLOBAL binlog_format = 'MIXED';
目前来比拟以下 SBR 和 RBR 2中形式各自的优缺点
SBR 的优点:
1. 历史悠久,技巧成熟
2. binlog文件较小
3. binlog中包括了所有数据库改动消息,能够据此来核实数据库的平安等情形
4. binlog能够用于实时的还原,而不但仅用于复制
5. 主从版本能够不一样,从服务器版本能够比主服务器版本高
SBR 的缺点:
1. 不是所有的UPDATE语句都能被复制,尤其是包括不确定垄断的时候。
2. 调用具有不确定因素的 UDF 时复制也可能出问题
3. 利用以下函数的语句也无法被复制:
* LOAD_FILE()
* UUID()
* USER()
* FOUND_ROWS()
* SYSDATE() (除非启用时启用了 --sysdate-is-now 选项)
4. INSERT ... SELECT 会发生比 RBR 更多的行级锁
5. 复制必需举行全表扫描(WHERE 语句中没利于用到索引)的 UPDATE 时,必需比 RBR 哀求更多的行级锁
6. 对于有 AUTO_INCREMENT 字段的 InnoDB表而言,INSERT 语句会阻塞其他 INSERT 语句
7. 对于一些混杂的语句,在从服务器上的耗资源情形会更严重,而 RBR 形式下,只会对那个发生改变的登记发生波及
8. 存储函数(不是存储过程)在被调用的同时也会厉行顺次 NOW() 函数,这个能够说是坏事也可能是好事
9. 确定了的 UDF 也必需在从服务器上厉行
10. 数据表定然几乎和主服务器坚持统一才行,否则可能会导致复制出错
11. 厉行混杂语句万一出错的话,会花费更多资源
RBR 的优点:
1. 任何情形都能够被复制,这对复制来说是最平安可靠的
2. 和其他大多数数据库系统的复制技巧一样
3. 多数情形下,从服务器上的表万一有主键的话,复制就会快了许多
4. 复制以下几种语句时的行锁更少:
* INSERT ... SELECT
* 包括 AUTO_INCREMENT 字段的 INSERT
* 未曾附带条件可能并未曾修正许多登记的 UPDATE 或 DELETE 语句
5. 厉行 INSERT,UPDATE,DELETE 语句时锁更少
6. 从服务器上批准多线程来厉行复制成为可能
RBR 的缺点:
1. binlog 大了许多
2. 混杂的回滚时 binlog 中会包括许多的数据
3. 主服务器上厉行 UPDATE 语句时,所有发生改变的登记都会写到 binlog 中,而 SBR 只会写顺次,这会导致频繁发生
binlog 的并发写问题
4. UDF 发生的大 BLOB 值会导致复制变慢
5. 无法从 binlog 中看到都复制了写什么语句
6. 当在非事务表上厉行一段堆积的SQL语句时,良好批准 SBR 形式,否则很轻率导致主从服务器的数据不统一情形发生
另外,针对系统库 mysql 里面的表发生改变时的处理法定如下:
1. 万一是批准 INSERT,UPDATE,DELETE 直接垄断表的情形,则日志款式依据 binlog_format 的设定而登记
2. 万一是批准 GRANT,REVOKE,SET PASSWORD 等管教语句来做的话,那么无论如何都批准 SBR 形式登记
注:批准 RBR 形式后,能处理许多本来揭示的主键重复问题例如Pro Publica,SunlightFoundation和维基解密,开始添补鞭策媒体滑坡留下的空白。
发表评论
-
MySQL中关于查询条件中的字符串空格问题
2013-02-20 19:17 7694假设当前mysql数据库中有个表:sysuser 有个字段 ... -
动态添加MYSQL从库,导出主库
2013-01-15 17:57 1015http://dev.mysql.com/doc/refman ... -
MySQL主从失败 错误Got fatal error 1236解决方法
2013-01-09 16:45 1063由于主服务器异外重启, ... -
mysql 语句的调度优先级及改变
2012-12-07 16:47 1265MySQL的默认的调度策略可用总结如下: · 写入操作优 ... -
MySQL水平分区表初体验总结
2012-09-21 15:22 1209本文总结个这段时间研究MySQL水平分区表总结,列举分区 ... -
小议同步IO :fsync与fdatasync
2012-09-13 20:23 718对于提供事务支持的 ... -
Linux修改MySql默认存储引擎为InnoDB
2012-09-13 18:25 1580一、关闭相关应用 二、停止mysql bin/m ... -
MySQL数据库的初始化mysql_install_db
2012-09-13 14:13 4683一、mysql_install_db说明 当MySQL的 ... -
[mysql]不要再执着于thread_concurrency
2012-08-20 10:51 3368结论: thread_concurrency 在GNU ... -
【转】对mysql日志进行操作的总结包括 启用,过期自动删除 等
2012-08-19 17:25 9031. 以前我错误的认为mysql的日志可以恢复到任何时 ... -
mysql 主从复制1201错误
2012-08-19 15:59 948工作日志之-MySQL slave Replication E ... -
binlog-format
2012-07-03 20:16 878面的这些是在网上找的 ... -
Mysql启动多个实例
2012-06-25 19:32 873系统环境:CentOS5操作步骤: cd /var/lib c ... -
mysql 5.5.* 下的主从模式
2012-05-29 10:30 758试验环境:服务器安装是按照张宴的环境配置的 http://bl ... -
MySQL创建用户与授权
2012-05-29 10:26 625一, 创建用户: 命令:CREATE USER ' ... -
MySQL配置文件my.cnf 例子最详细翻译
2012-05-29 10:21 949转的 MySQL配置文件my.cnf 例子最详细翻译,可以保存 ... -
MySQL源码分析(1):主要模块及数据流
2012-05-26 11:07 1139经过多年的发展,mysql的主要模块已经稳定,基本不会有大的修 ... -
mysql主从搭建实现
2012-05-25 21:43 813MySQL是应用广泛的关系型数据库,当数据规模逐渐扩大,并且重 ... -
mysql配置文件
2012-05-25 21:30 819[mysqld] port = 3306 serverid ... -
Handlersocket的安装
2012-05-25 21:13 854一、下载mysql,我选择的是mysql-5.5.15源码安装 ...
相关推荐
3. **复制功能优化**:MySQL 5.1 提供了半同步复制,确保主库上的事务在被复制到从库之前已提交,提高了数据安全性。 4. **触发器和存储过程**:MySQL 5.1 支持创建触发器和存储过程,使得数据库可以执行更复杂的...
MySQL 5.1是MySQL数据库管理系统的一个重要版本,它在5.0的基础上进行了多项改进和增强,为开发者提供了更高效...这个“mysql5.1详解简体中文版”的教程文件,将帮助读者深入理解这些概念,提升数据库管理和开发技能。
MYSQL5.1 ODBC驱动程序64位
MySQL 5.1 中文手册是一份详尽的数据库管理系统指南,主要针对MySQL 5.1版本。MySQL是一个广泛使用的开源关系型数据库管理系统(RDBMS),它以其高效、稳定和易于管理的特点,在Web开发和其他数据存储应用中占有重要...
MySQL 5.1 ODBC 连接驱动是用于在Windows操作系统上通过Open Database Connectivity (ODBC) 接口与MySQL数据库进行交互的一种软件组件。ODBC是一种标准的应用程序编程接口(API),允许不同数据库系统之间的互操作性...
MySQL 5.1在复制功能上也有所增强,提供了一种半同步复制模式,确保主服务器上的事务在被复制到从服务器之前已经完成,从而降低了数据丢失的风险。此外,还支持多线程复制,使得从服务器可以并行处理多个来自主...
这份“MYSQL5.1+简体中文参考文档”是开发者和数据库管理员的重要参考资料,它包含了关于 MySQL 5.1 的详细信息,包括 SQL 语法、数据库配置、管理操作以及性能调优等内容。 一、SQL 语法 MySQL 5.1 支持标准的 SQL...
该文件里含有MySQL5.1 connector.exe和MySQL5.1 connector java 5.1.16 bin.jar。其中,MySQL5.1 connector.exe是MySQL与odbc的连接工具,MySQL5.1 connector java 5.1.16 bin.jar是MySQL进行jdbc连接时所需要的jar...
这篇文档将基于提供的"mysql5.1CHM.zip"压缩包,深入探讨MySQL 5.1的主要特性和开发相关的知识。 1. **SQL语言与查询优化**: MySQL 5.1支持标准的SQL语法,包括SELECT、INSERT、UPDATE、DELETE等操作。其查询优化...
此外,MySQL 5.1还加强了复制功能,支持异步、半同步和多线程从库,这对于高可用性和数据冗余至关重要。通过分析源代码,我们可以理解主从复制的工作流程,包括 binlog(二进制日志)的生成、传输以及在从服务器上的...
MySQL 5.1驱动程序是Java应用程序连接到MySQL数据库的关键组件,它允许通过JDBC(Java Database Connectivity)接口与MySQL服务器进行通信。JDBC是Java平台上的标准API,用于访问各种类型的数据库。在这个特定的场景...
在复制功能上,MySQL 5.1增加了半同步复制,确保在主服务器上的事务提交后,至少有一个从服务器接收到这些事务,提高了数据的一致性。此外,支持多线程复制,可以并发处理多个从服务器的复制请求,提高复制效率。 ...
4. **复制功能**:MySQL 5.1的复制功能允许数据从一个服务器(主服务器)实时复制到一个或多个其他服务器(从服务器),这对于实现数据备份、负载均衡和故障恢复非常有用。 5. **查询优化器**:MySQL 5.1的查询优化...
这是关于5.1版至5.1.2-alpha版MySQL数据库系统的参考手册. 本压缩包内共含有两个chm格式文件: MySQL 5.1中文参考手册(CHM).chm MySQL 5.1英文参考手册(CHM).chm 其中文为翻译版本,均来自互联网,为了节省大家的...
这是关于5.1版至5.1.2-alpha版MySQL数据库系统的参考手册。该手册不适用于旧版本MySQL软件,这是因为在MySQL 5.1和以前的版本存在很多功能性差异和其他差异。如果正在使用MySQL软件的较旧版本,请参阅MySQL 5.0参考...
“性能调优”章节是进阶内容,讲述了如何通过优化查询、配置参数、使用分区和复制等手段来提升MySQL的性能。此外,还有关于备份和恢复策略的介绍,这对于数据安全至关重要。 “安全性”部分讲解了如何设置用户权限...
MySQL 5.1支持主从复制,用于构建高可用和负载均衡的环境。集群功能则允许多个服务器共享同一份数据,提高系统的容错性和扩展性。 八、日志与监控 MySQL的日志系统包括错误日志、查询日志、慢查询日志等,有助于...
MySQL 5.1的复制功能允许数据在多个服务器之间同步,形成主从结构或主主结构,从而提高系统的稳定性和容错性。 安全性和权限管理也是手册中的重要内容。用户可以学习如何设置账户、权限和访问控制,确保数据库系统...
对于“可视化MySQL5.1中文版”标签,这意味着该版本提供了中文界面和文档,使得中国用户可以更方便地使用和理解MySQL的功能。可视化工具如phpMyAdmin、MySQL Workbench等可以帮助用户直观地管理数据库,创建、编辑和...