你真的懂 select count(*) 吗?

herman 7个月前 (09-12) 1070浏览 0评论

如题,你真的懂 select count(*) 吗?很多面试者或者高级开发工程师都会说不要用 count(*),这样写查询会比较慢。count(1) 比 count(*) 快,这样说真的对吗?且听本文来讲解,我们一起来较真儿! 在某些时候,...

InnoDB 的 select 行锁还是表锁

herman 7个月前 (09-12) 911浏览 0评论

前面有一篇文章说到了,InnoDB 的 select 查询会锁表,有的人不信。然而有的人学习能力很强,立马在官方网站上找到了,select 查询会锁表,就看你怎么使用,并不是说所有的 select 查询都会锁表。具体看你的事务隔离级别,和编写的查...

给postgresql数据库的表和列添加注释(comment)

herman 12个月前 (05-05) 4685浏览 0评论

postgresql 数据库国内用的人并不是很多,而一些老项目采用了这个数据库。维护起来特别麻烦,因为国内用的人比较少,相关资料也很少。 另外还有一些函数,postgresql 也没有对应的提供。还有对于表分区,低版本的 post...

MySQL使用binlog(二进制日志)主从复制教程

herman 1年前 (2018-02-02) 894浏览 0评论

复制是mysql最重要的功能之一,mysql集群的高可用、负载均衡和读写分离都是基于复制来实现的;从5.6开始复制有两种实现方式,基于binlog和基于GTID(全局事务标示符);本文接下来将介绍基于binlog的一主一从复制。 基于bin...

MySQL binlog(二进制日志)解析

herman 1年前 (2018-02-01) 647浏览 0评论

binlog 顾名思义就是一种二进制日志,是一种与innodb引擎中redo/undo log完全不同的日志。它主要是用来记录对mysql数据更新或潜在发生更新的SQL语句,并以"事务"的形式保存在磁盘中。 binlog...

MySQL的多版本并发控制MVVC

herman 1年前 (2018-01-31) 2187浏览 0评论

MVVC 一词常见于前端框架的设计模式当中。但是 MySQL 中的 MVVC 和前端框架中所代表的意思完全不一样。在 MySQL 中 MVVC 一词代表的是多版本并发控制。下面我们来尝试着学习它。 MVCC的全称...

Redis、MongoDB、BerkeleyDB、Memcached等NoSQL数据库总结

herman 1年前 (2017-11-12) 1495浏览 0评论

随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,于是NoSQL就应用而生。目前常用的NoSQL数据库有10种( Cassandra、M...

Tbase冷备系统介绍

herman 2年前 (2017-10-25) 923浏览 0评论

Tbase 是腾讯的一款分布式数据库系统。它提供的有一个冷备系统,今天我们来介绍下它。 生产上的数据库还有一种极少见但仍然会存在的异常情况,即整个数据库集群彻底故障。此时,为了进一步保障分布式系统的数据可靠性,建议在现有高可用容灾的基础上,...

Tbase腾讯自研全功能分布式关系数据库

herman 2年前 (2017-10-25) 714浏览 0评论

在分布式环境当中,总是会遇到诸如 主机宕机 或 网络故障 等各种影响系统可用性的情况发生。轻则会导致投诉,重则导致企业核心数据的丢失,影响企业业绩和商誉。而如何确保分布式系统运行正常,应对各种故障场景,保证系统始终处于高可用状态是每个企业研究的方...