mysql 主从同步 架构设计方案.ppt

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
mysql 主从同步 架构设计方案

Mysql架构设计方案 目录 (1)整体的架构拓扑 (2)硬件选择 (3)读写分离方案 (4)同步方案 (5)备份方案 (6)监控方案 (7)优化 (8)集群+负载均衡(后期在做) 服务器硬件设计 (1)硬盘使用RAID-0+1或者RAID-5磁盘阵列,适硬盘数量而定 (2) CPU 可以使用两颗2.4GHz 以上的CPU。 (3)物理内存:对于一台使用MySQL的Database Server来说,服务器内存不要小于2GB 综上所述,硬件选择如下(服务器品牌在议): CPU: 2颗Intel Xeon 2.4GHz 内存: 2GB DDR2 硬盘: 三个或者四个73GB SCSI 读写分离方案 读写分离是有效的减轻数据库负载的一种方案,结合同步复制,以达到数据的统一 采用MySQL Proxy 虚拟连接池来实现,对外给定一个连接池,当客户请求发往该连接池的时候,将读请求和写请求分别指定到各个预先规定的多个只读只写服务器 同步方案 实现数据库同步复制是分布式数据库系统必不可少的一项技术,采用master,slave双向热备 通过主配置文件/etc/my.cnf连实现,而且是实时的 在这里所有的写服务器都作为master服务器并且互相同步,其他三个读服务器作为slave来同步写服务器的数据以达到数据的统一性 备份方案 为保证数据的完整性,备份是必不可少的 采用每天定时完整备份+增量备份的方式 超过三天的备份自动删除以保证服务器硬盘空间 本机,异地交叉备份 性能优化 在指定了硬件条件的前提下MySQL的优化是通过修改主配置文件:/etc/my.cnf来实现的 主要从以下几个方面考虑 (1)查询缓存 (2)索引缓存 (3)表缓冲区的限制 (4)连接数限定 (5)等待时间限定 (1)查询缓存 Query Cache对于繁更新的表,查询缓存是不适合的,而对于一些不常改变数据且有大量相同sql查询的表,查询缓存会节约很大的性能 查询缓存相关参数 (1)query_cache_limit允许进入查询缓冲区的最小数据大小,默认值是1MB (2)query_cache_size决定分配给缓存的内存数量,单位是字节。 ,默认是0 (3)query_cache_type OFF | ON指定查询缓冲的类型,0是关闭,1为开启缓默认为1. (4)read_buffer_size = n 为从数据表顺序读取数据的读操作保留的缓存区的长度(默认设置是128KB); (5)read_rnd_buffer_size = n 类似于read_buffer_size选项,但针对的是按某种特定顺序(比如使用了ORDER BY子句的查询)输出的查询结果(默认设置是256K) (6)join_buffer_size = n 在参加JOIN操作的数据列没有索引时为JOIN操作分配的缓存区长度(默认设置是128K)。 查询缓存的性能评估 (1)用这个命令查看:mysql SHOW VARIABLES LIKE %query_cache%; have_query_cache? ? ?YES? ? --查询缓存是否可用 query_cache_limit? ?1048576 --可缓存具体查询结果的最大值 query_cache_size? 599040? --查询缓存的大小 query_cache_type? ? YES --阻止或是支持查询缓存 (2)在 SHOW STATUS 中,你可以监视查询缓存的性能: 变量 含义 Qcache_queries_in_cache 在缓存中已注册的查询数目 Qcache_inserts 被加入到缓存中的查询数目 Qcache_hits 缓存命中的次数 Qcache_lowmem_prunes 因为缺少内存而被从缓存中删除的查询数目 Qcache_not_cached 没有被缓存的查询数目 (不能被缓存的,或由于 QUERY_CACHE_TYPE) Qcache_free_memory 查询缓存的空闲内存总数 Qcache_free_blocks 查询缓存中的空闲内存块的数目 Qcache_total_blocks 查询缓存中的块的总 (2)索引缓存 key_buffer_size指定索引缓冲区的大小,它决定索引处理的速度,尤其是索引读的速度。对于内存在2GB左右的服务器该参数可设置为128M,性能由一下几个参数决定 (1)Key_read_requests :是从cache中读索引的请求 (2)Key_reads :是从物理硬盘上读索引的次数 通过二者的比值即 key_reads /key_read_requests来决定,其比值越小性能就

文档评论(0)

zhuwenmeijiale + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7065136142000003

1亿VIP精品文档

相关文档