随笔分类 - 数据库
摘要:<!--?xml version="1.0" encoding="UTF-8"?--> HBase是一个高性能、面向列、可伸缩的开源分布式NoSQL数据库,是Google Bigtable的开源实现。 HBase的思想和应用和传统的RDBMS,NoSQL等有比较大的区别,这篇文章从HBase的架构和
阅读全文
摘要:58到家数据库30条军规,有一条是“禁止使用存储过程、视图、触发器、Event”, 高并发大数据的互联网业务,架构设计思路是“解放数据库CPU,将计算转移到服务层”, 并发量大的情况下,这些功能很可能将数据库拖死,业务逻辑放到服务层具备更好的扩展性,能够轻易实现“增机器就加性能”。 数据库擅长存储与
阅读全文
摘要:<!--?xml version="1.0" encoding="UTF-8"?--> 项目开发中通常会有一些复杂业务场景,比如多个数据表的插入更新等,这些业务通常需要事务的支持。 Spring等框架支持对事务的管理,可以更好的实现存储和业务逻辑的分离,不过代码或者框架层面的事务管理,最终还是落实到
阅读全文
摘要:高可用性即HA(High Availability)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性。 高可用集群的解决方案 计算机系统的高可用在不同的层面上有不同的表现: (1)网络高可用 由于网络存储的快速发展,网络冗余技术被不断提升,
阅读全文
摘要:在MySQL中经常会配置自增长属性的字段作为主键,特别是使用InnoDB存储引擎, 因为InnoDB的聚集索引的特性,使用自增长属性的字段当主键性能更好,但是使用自增主键也可能会带来一些问题。举个例子,使用自增主键对数据库做分库分表,可能出现一些诸如主键重复等的问题,或者在数据库导入的时候,可能会因
阅读全文
摘要:MySQL错误:Every derived table must have its own alias 派生表都必须有自己的别名 一般在多表查询时,会出现此错误。 因为,进行嵌套查询的时候子查询出来的的结果是作为一个派生表来进行上一级的查询的,所以子查询的结果必须要有一个别名, 把MySQL语句改成
阅读全文
摘要:1.Hibernate和ORM ORM的全称是Object Relational Mapping,即对象关系映射。它的实现思想就是将关系数据库中表的数据映射成为对象,以对象的形式展现,这样开发人员就可以把对数据库的操作转化为对这些对象的操作。因此它的目的是为了方便开发人员以面向对象的思想来实现对数据
阅读全文
摘要:MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。 使用索引的目的在于提高查询效率,这篇文章梳理一下索引的实现原理和应用。 不同的存储引擎索引实现的数据结构不同 MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类
阅读全文
摘要:在Oracle 和SQL Server等数据库中只有一种存储引擎,所有数据存储管理机制都是一样的。而MySql数据库提供了多种存储引擎。用户可以根据不同的需求为数据表选择不同的存储引擎,用户也可以根据自己的需要编写自己的存储引擎。 1.MySQL主要存储引擎的区别 MySQL默认的存储引擎是MyIS
阅读全文
摘要:如何查看执行SQL的耗时 使用show profiles分析sql性能。 Show profiles是5.0.37之后添加的,要想使用此功能,要确保版本在5.0.37之后。 查看数据库版本 mysql> select version(); profile默认是不打开的 mysql> show pro
阅读全文
摘要:关于范式Normal Form范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法。数据库的设计范式是数据库设计所需要满足的规范。只有理解数据库的设计范式,才能设计出高效率、优雅的数据库,否则可能会设计出错误的数据库。目前关系数据库有六种范式:第一范式(1NF)、第二范...
阅读全文
摘要:Java MySQL数据类型对照 类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) 描述 VARCHAR L+N VARCHAR java.lang.String 12 CHAR N CHAR java.lang.String 1 BLOB L+N BLOB java.lan
阅读全文
摘要:1.索引不存储null值 更准确的说,单列索引不存储null值,复合索引不存储全为null的值。索引不能存储Null,所以对这列采用is null条件时,因为索引上根本 没Null值,不能利用到索引,只能全表扫描。 为什么索引列不能存Null值? 将索引列值进行建树,其中必然涉及到诸多的比较操作。N
阅读全文
摘要:>>主从同步机制及应用 读写分离(Read/Write Splitting)让主数据库处理事务性增、改、删操作(INSERT、UPDATE、DELETE),从数据库处理SELECT查询操作,在大规模高并发的系统中,读写分离是提高性能很重要的手段。读写分离实现的基础就是MySQL的主从同步,因此对于主
阅读全文
摘要:标准的 SQL 的解析顺序为:(1)FROM 子句, 组装来自不同数据源的数据(2)WHERE 子句, 基于指定的条件对记录进行筛选(3)GROUP BY 子句, 将数据划分为多个分组(4)使用聚合函数进行计算(5)使用 HAVING 子句筛选分组(6)计算所有的表达式(7)使用 ORDER BY
阅读全文
摘要:SQL的Join语法有很多,inner join(等值连接) 只返回两个表中联结字段相等的行,left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录,right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录,看到一篇图解文章,非常清楚简洁的说明了使
阅读全文