欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

MySQL Replication可行性分析_MySQL

程序员文章站 2022-05-11 20:11:48
...
bitsCN.com

MySQL Replication可行性分析

AUTO_INCREMENT VersionAUTO_INCREMENT column ALL Yes www.bitsCN.com

Update AUTO_INCREMENT column by invoking a trigger or function !InnoDB No

复合主键中AUTO_INCREMENT列不是首列,此时的INSERT不安全 ALL No

Character Set Use UTF8 in master and slave InnoDB Yes

Temporary table 混合模式,更新和插入操作正常,但临时表打开计数按官方指导无法消除,只能通过stop slave;flush slave消除 InnoDB Yes

Create if ..exists Mixed Mode 正常 InnoDB Yes

Create table ..select Mixed Mode 正常 InnoDB Yes

Create/Alter/Drop server 需要从库单独维护 InnoDB No

Current_user() 可以同步,通常不会用到 InnoDB Yes

Drop .. If exists Mixed Mode 正常 InnoDB Yes

Memory table Mixed Mode,插入、读取、联合更新;主从的内存表大小限制须一致 InnoDB Yes www.bitsCN.com

Rand(),UUID(),Last_insert_id() Only Mixed Mode InnoDB Yes

Limit Mixed Mode InnoDB Yes

Different table definition 表定义和引擎可以不同,但列的顺序需要相同 InnoDB Yes

Directory permission 必须在从库上为路径赋权 InnoDB Yes

Invorked Features 5.5之前会有跨DB更新的问题,目前版本可以正常同步 InnoDB Yes

Floating Point Value 使用Decimal可以解决 ALL No

Flush 测试范围:Flush Hosts/Slave/Logs;此类维护从库需要单独进行 InnoDB No www.bitsCN.com

System Function Mixed Mode-Row Base正常 ALL Yes

Load Data infile 5.5.0后可以正常复制,5.5.6后使用Mixed-Row Base ALL Yes

Slow query log 不复制 ALL No

Repair table 此类维护前停止复制,维护完成手动保障主从结构一致,再恢复复制 ALL No

Master and slave shutdown 安全操作,但master异常停止时,会有数据丢失。可以设置syn_binlog=1减少损失。 ALL No

Max_allowed_packet 当最大列(TEXT)过大导致master失败时,复制会终止。 ALL Yes

System database MySQL DB正常同步,Mixed模式使用RowBase方式,反之,使用直接Update的方式 ALL Yes

Query optimizer 根据语法而定,可能出现不一致的情况 ALL Yes

Reserved word 主要发生在新版本增加保留字的情况,出现后需要修改字段名 ALL Yes

Set password and row-base rep 已知Bug,不复制。主(5.1)->从(5.5); ALL No

Slave errors 根据情况选择是否跳过错误。处理方式参考复制故障处理。 Null Null

Sql mode 主从统一SQL MODE可以规避 ALL No

Retried and timeouts 事务锁定或超时时,重试次数。文档描述默认值是10,实际默认值是0; ALL Yes

Timestamp 版本问题,5.5没有此问题 ALL Yes

Time zones 系统级别需要保持时间同步 ALL Yes

Transactions Mixed模式下可以正常复制 InnoDB Yes

Triggers 不使用该特性。 ALL Yes/No

Views 会复制,防止包含指定忽略复制的表。 ALL Yes

Truncate table Mixed模式下可以正常复制 InnoDB Yes

Variables 单独维护。通过my.cnf统一管理相关参数。 ALL No

结论

根据我们数据库开发以及后续维护所需要的特性,目前的复制是可以正常使用的。

bitsCN.com
相关标签: 可行性