文章分类 - MYSQL_SCHEMA
摘要:概述 分布式数据库已经流行好多年,产品非常众多,其中分布式数据库中间件使用场景最广。本文主要是总结如何基于分布式数据库中间件做数据库架构设计,以充分发挥它的分布式能力。各个中间件产品功能核心原理相同,细节上有些区别。这里仅以阿里云的DRDS为例分析,在产品架构、功能、成熟度和市场占有率上,它都比同行
阅读全文
摘要:目录 1、背景 2、表锁导致的慢查询的问题 3、线上修改表结构有哪些风险? 4、一个死锁问题的分析 5、锁等待问题的分析 6、小结 1、背景 对于数据库系统来说在多用户并发条件下提高并发性的同时又要保证数据的一致性一直是数据库系统追求的目标,既要满足大量并发访问的需求又必须保证在此条件下数据的安全,
阅读全文
摘要:军规适用场景:并发量大、数据量大的互联网业务 军规:介绍内容 解读:讲解原因,解读比军规更重要 一、基础规范 (1)必须使用InnoDB存储引擎 解读:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高 (2)必须使用UTF8字符集 解读:万国码,无需转码,无乱码风险,节省空间
阅读全文
摘要:总是在灾难发生后,才想起容灾的重要性。总是在吃过亏后,才记得曾经有人提醒过。 一,核心军规 不在数据库做计算,cpu计算务必移至业务层 控制单表数据量,单表记录控制在千万级 控制列数量,字段数控制在20以内 平衡范式与冗余,为提高效率可以牺牲范式设计,冗余数据 拒绝3B(big),大sql,大事务,
阅读全文
摘要:随着人们对数据一致性的要求不断的提高,越来越多的方法被尝试用来解决分布式数据一致性的问题,如MySQL自身的优化、MySQL集群架构的优化、Paxos、Raft、2PC算法的引入等等,本文介绍MySQL数据库的几种常见高可用方案。 一、概述 我们在考虑MySQL数据库的高可用的架构时,主要要考虑如下
阅读全文
摘要:摘要我们将一条查询SQL提交给MySQL之后,MySQL在进行真正的查询操作之前通常会经历两个阶段:SQL解析和查询优化。在SQL解析过程中,MySQL会将SQL解析为一个树状结构,而在查询优化阶段,MySQL会决定以什么方式进行查询,那么MySQL以什么方式进行查询的抉择依据是什么呢?答案就是这篇
阅读全文
摘要:MySQL Router 是轻量级 MySQL 中间件,提供应用与任意 MySQL 服务器后端的透明路由。MySQL Router 可以广泛应用在各种用例中,比如通过高效路由数据库流量提供高可用性和可伸缩的 MySQL 服务器后端。Oracle 官方出品。 相关链接 MySQL Router 的详细
阅读全文
摘要:昨天,Gitlab.com 发生了一个大事,某同学误删了数据库,这个事看似是个低级错误,不过,因为 Gitlab 把整个过程的细节都全部暴露出来了,所以,可以看到很多东西,而对于类似这样的事情,我自己以前也干过,而在最近的两公司中我也见过(Amazon 中见过一次,阿里中见过至少四次),正好通过这个
阅读全文
摘要:当我们在生产线上用一台服务器来提供数据服务的时候,我会遇到如下的两个问题: 1)一台服务器的性能不足以提供足够的能力服务于所有的网络请求。 2)我们总是害怕我们的这台服务器停机,造成服务不可用或是数据丢失。 于是我们不得不对我们的服务器进行扩展,加入更多的机器来分担性能上的问题,以及来解决单点故障问
阅读全文
摘要:在《这多年来我一直在钻研的技术》这篇文章中,我讲述了一下,我这么多年来一直在关注的技术领域,其中我多次提到了工业级的软件,我还以为有很多人会问我怎么定义工业级?以及一个高可用性的软件系统应该要怎么干出来?这样我也可以顺理成章的写下这篇文章,但是没有人问,那么,我只好厚颜无耻的自己写下这篇文章了。哈哈
阅读全文
摘要:本篇文章紀錄安裝 Percona XtraDB Cluster (簡稱 PXC) 及搭配 HAProxy 做分散流量系統,其實在業界已經很常看到 HAProxy + MySQL Cluster Database 解決方案,HAProxy 幫您解決負載平衡,並且偵測系統是否存活,管理者也就不用擔心 M
阅读全文
摘要:作者:韦沣巡链接:https://zhuanlan.zhihu.com/p/22780214来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 mySQL集群(cluster) 在这一章为了不浪费读者的宝贵时间,我只会列出mySQL集群的几种比较方案,目前有一些第三方提供
阅读全文
摘要:环境:MariaDB 10.1.12CentOS Linux release 7.2.1511 3台机器 安装MariaDB 10.1.12 配置MariaDB 10.1.12 yum源 [root@c1 ~]# vim /etc/yum.repos.d/MariaDB.repo [root@c2
阅读全文
摘要:一、GTID的概述: 1、全局事物标识:global transaction identifieds。 2、GTID事物是全局唯一性的,且一个事务对应一个GTID。 3、一个GTID在一个服务器上只执行一次,避免重复执行导致数据混乱或者主从不一致。 4、GTID用来代替classic的复制方法,不在
阅读全文
摘要:博主的第一篇文章,写的不完善的地方,请大家多担待. 做程序员已经好久了,从来都是只索取不奉献。遇到问题都是在网上找别人分享的博客来参考,自己却没有分享过。惭愧~ 本文主要针对MySQL主主集群配置方案,且服务器的环境为Centos7 首先使用如下命令来清理之前操作系统自带的mysql安装:yum -
阅读全文
摘要:mycat 分表原理,是在原有分片的基础上把原来分片的路由改写为改写sql: 例如对于取模,分为3个片的配置: 分库模式下是:insert into table(xxx)values(1,name); router:{ node1:insert into table(xxx)values(1,nam
阅读全文