www.fltk.net > mysql主从数据库里同一张表,数据引擎可以不一样么,比如主库用innoDB,从库用myisAm?

mysql主从数据库里同一张表,数据引擎可以不一样么,比如主库用innoDB,从库用myisAm?

mysql可以实现,同一个数据库中,不同的表应用不同的存储引擎,mysql主从数据库里同一张表,数据引擎也可以不一样

1.网络的延迟由于mysql主从复制是基于binlog的一种异步复制,通过网络传送binlog文件,理所当然网络延迟是主从不同步的绝大多数的原因,特别是跨机房的数据同步出现这种几率非常的大,所以做读写分离,注意从业务层进行前期设计.2.

做修改的sql当然得走主库,不然怎么同步到从库去,而且在从库修改主从会出问题的.只查询的sql可以放到从库,减少主库负载

主库的主机关机时,数据只能读不能写,并且从库的主机关机后,数据仍然可读可写,这个不好弄,如果你对lua脚本有所了解,修改mysql-proxy 的读写分离脚本或许可以实现.不过主库关机时不能访问,并且从库关机仍可读可写,这个不需要配读写分离,这本来就是主从复制的基本能力,从库只是备用的而已.从库关闭后再开启,slave IO线程会自动从中断处二进制日志的位置开始复制主机的二进制日志,slave SQL线程会读取并执行这些二进制日志中的SQL.总之,不需要特别的配置,这是主从复制的基本能力.

不分开,因为InnoDB表数据文件本身就是主索引,MyISAM引擎是分开的.MyISAM索引文件和数据文件是分离的,索引文件仅保存数据记录的地址.而InnoDB是聚集索引,就是索引文件节点中就包含了完整的数据记录.

InnoDB和MyISAM是在使用MySQL最常用的两个表类型,各有优缺点,视具体应用而定. 下面是已知的两者之间的差别,仅供参考. innodb InnoDB 给 MySQL 提供了具有事务(commit)、回滚(rollback)和崩溃修复能力 (crash recovery

如果是完全相同的话 如果是我 就会只操作一个库 然后导出sql文件在建另一个库

你可以把某个数据库导出,然后导入到另一个数据库.或者把两个数据库都导出,然后导入一个新的数据库.因为导出数据库,插入时,系统默认是把外键先关闭的,所以不用担心关联问题.当然,如果两个库的表名有一样的,你就要注意.得把某个表名改下.导出命令:mysqldump -uxxx -hxxx -pxxx dbname > db.sql //xxx分别代码用户名、主机名、密码.如果是本机的,主机号一般是localhost然后到另一个数据库,如果你是新建数据库的,可以用以下sql:create database xxxx;use xxx;进入数据库,用命令source db.sql 就会把刚才的数据导入现在用的数据库.

MySQL数据库有多种存储引擎:比如:MyISAM、InnoDB、MERGE、MEMORY(HEAP)、BDB(BerkeleyDB)、EXAMPLE、FEDERATED、ARCHIVE、CSV、BLACKHOLE等等,最常见的也就是MyISAM和InnoDB了,下面主要讲解下MyISAM

版本一致,是官方推荐的方式;slave至少要和master的版本前两个号相同,可高于master;版本不一致,可能出现的问题就是同步的不稳定(兼容性的老问题),因为会在某些函数处理、日志读取、日志的解析重演等上发生异常,导致同步报错而需手工处理.

相关搜索:

网站地图

All rights reserved Powered by www.fltk.net

copyright ©right 2010-2021。
www.fltk.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com