• 《Mysql


    一:分区/分表 为了什么?

      - 当MySQL单表数据量过大时,数据库的访问速度会下降,需要处理大量数据,所以需要把数据分散存储

      - 常用 "水平" 切分

    二:MySQL常见的水平切分方案有哪些?

      - 分库分表

      - 分区表

    三:分库分表?

      - 把一个很大的库(表)的数据分到几个库(表)中,每个库(表)的结构都相同,但他们可以分布在不同的MySQL实例,甚至不同的物理机器上,以达到降低单库(表)数据量提高读写性的目的。

      - 分库分表往往是业务层实施的,分库分表后,往往需要升级系统:

        - 修改某些SQL代码。

        - 丧失某些SQL功能。

    四:什么是分区表(不常用)?

      - 所有数据,逻辑上还在一个表中,但物理上,可以根据一定的规则放在不同的文件中。这是MySQL5.1之后支持的功能,业务代码无需改动。

      - 在 高并发/大流量 的场景下,分区表的一些缺点,是难以接受的

        - 如果SQL不走分区键,很容易出现全表锁

        - 在分区表实施关联查询,就是一个灾难。

        - 分库分表,自己掌控业务场景与访问模式,可控。分区表,工程师写了一个SQL,自己无法确定MySQL是怎么玩的,不可控

          - 类似于,不要把业务逻辑实现在存储过程,用户自定义函数,触发器里,而要实现在业务代码里一样。

        - DBA给OP埋坑,容易大打出手,造成同事矛盾

  • 相关阅读:
    CentOS设置密码复杂度及过期时间等
    CentOS开启telnet连接
    Centos6.5升级openssh至7.4版本
    Centos7搭建SVN服务器
    Centos7.2yum安装时候出现db5错误的解决办法
    在Centos中yum安装和卸载软件的使用方法(转)
    Centos6.5 恢复误删的系统面板
    ecmall 2.3.0 最新补丁20140618
    ecmall在linux下的安装注意事项(转)
    PHP Strict standards:Declaration of … should be compatible with that of…(转)
  • 原文地址:https://www.cnblogs.com/25-lH/p/10470439.html
Copyright © 2020-2023  润新知