
数据库
shuzhou12
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
mysql优化
建表优化避免设计可为NULL的列,这会使mysql处理索引处理更麻烦,但是在调优时没必要优先优化这个问题。 使用合适的数据类型,例如存储整数较小时可以使用tinyint,varchar选择合适的长度 关联列选择相同的数据类型 数据量比较大时使用索引已经不起作用,可以使用分区,根据分区函数或者某个字段进行分区。索引优化查询语句优化避免使用select *,尽量利用覆盖索引避免查表...原创 2020-03-29 21:56:19 · 155 阅读 · 0 评论 -
高性能mysql读书笔记六 mysql高级特性
分区表分区表的原理分区表的类型如何使用分区表分区的问题查询优化字符集和校对翻译 2020-03-25 12:53:11 · 129 阅读 · 0 评论 -
高性能mysql读书笔记五 优化查询
查询执行过程通信协议查询线程状态查询缓存优化器mysql如何执行关联查询排序优化查询执行引擎返回结果给客户端查询优化器的局限性关联子查询Union的限制Min()和Max()优化在同一个表上查询和更新优化特定类型的查询优化count()优化关联...翻译 2020-03-25 12:10:44 · 140 阅读 · 0 评论 -
高性能mysql读书笔记四 创建高性能索引
索引的类型B-Tree索引小技巧: 查询条件中的范围条件放在最后,否则范围条件之后的条件无法使用索引。Hash索引全文索引索引的优点高性能索引策略独立的列前缀索引和索引选择性多列索引聚簇索引覆盖索引使用索引排序索引和锁...翻译 2020-03-24 22:56:16 · 120 阅读 · 0 评论 -
高性能mysql读书笔记三 Schema与数据类型优化
避免使用NULL数据类型整数类型实数类型字符串类型日期和时间类型位数据类型(略)关联列选择相同数据类型特殊类型数据优化Alter Table...翻译 2020-03-24 16:39:11 · 167 阅读 · 0 评论 -
高性能mysql读书笔记二 服务器性能剖析
性能剖析概述剖析应用程序剖析mysql服务器负载记录慢日志分析慢日志 生成剖析报告剖析报告例子剖析单条查询...翻译 2020-03-23 22:35:19 · 218 阅读 · 0 评论 -
高性能Mysql读书笔记一 概述
mysql逻辑架构并发控制事务MVCC (Mutil-Version Concurrency Control)存储引擎InnoDBMyISAM翻译 2020-03-23 21:40:25 · 135 阅读 · 0 评论 -
彻底解决mysql中文乱码
mysql是我们项目中非常常用的数据型数据库。但是因为我们需要在数据库保存中文字符,所以经常遇到数据库乱码情况。下面就来介绍一下如何彻底解决数据库中文乱码情况。1、中文乱码1.1、中文乱码create table user(name varchar(11)); # 创建user表insert into table user("carl"); # 添加数据select * fr...转载 2018-07-04 09:56:52 · 202 阅读 · 0 评论 -
mysql优化之 ORDER BY Optimization
Use of Indexes to Satisfy ORDER BY在某些情况下,MySQL可以使用索引来满足ORDER BY子句,以避免执行filesort操作时涉及的额外排序。如果所有未使用的索引部分和所有额外的ORDER BY字段,在WHERE子句中都是和常量比较,那么即使ORDER BY字段与索引不完全匹配,也可以使用索引。假设(key_part1,key_part2)上有索引。以下查询将...翻译 2018-06-18 16:14:10 · 482 阅读 · 0 评论 -
mysql优化之Outer Join Simplification
在很多情况下,查询的FROM子句中的表达式被简化了。在解析阶段,具有右外连接操作的查询将转换为仅包含左连接操作的查询。在一般情况下,转换是这样进行的:、所有形式为T1 INNER JOIN T2 ON P(T1,T2)的内联接表达式都被替换为T1,T2列表,以及作为WHERE条件的P(T1,T2)。当优化器评估外连接执行计划时,它只考虑对于每个这样的操作,在内表之前访问外部表的情况。优化器的选择是...翻译 2018-06-17 22:57:06 · 965 阅读 · 0 评论 -
mysql优化之Nested Join Optimization
在MySQL中,CROSS JOIN在语法上等同于INNER JOIN;他们可以互相取代。但是在标准的SQL中,它们不是等价的。 INNER JOIN与ON子句一起使用;否则就使用CROSS JOIN。通常,在仅包含内连接操作的连接表达式中可以忽略括号。更确切地说,我们不能忽略left out join操作的右操作数和right join操作的左操作数中的括号。换句话说,我们不能忽略外连接操作的内...翻译 2018-06-17 10:45:38 · 602 阅读 · 0 评论 -
sql优化之Index Merge Optimization
The Index Merge access method(索引合并访问方法)检索满足多个 range scans的rows并将其结果合并为一个。此访问方法只支持合并对单个表的索引扫描;它不会合并涉及多个表的扫描。合并可能原始rows的并集、交集等。索引合并访问方法有几种算法,这些算法显示在 EXPLAIN 输出的Extra字段中:Using intersect(...)Using union(....翻译 2018-06-16 21:39:57 · 610 阅读 · 0 评论 -
sql优化之Range Optimization
1、The Range Access Method for Single-Part Indexes single-part索引的范围条件定义如下:不管是BTREE还是HASH索引,使用=,<=>,IN(),IS NULL或IS NOT NULL运算符将索引字段与常量值的比较都是一个 range conditions(范围条件)。另外,对于BTREE索引,当使用>,<,>...翻译 2018-06-16 12:09:03 · 1394 阅读 · 0 评论 -
mysql select语句优化之GROUP BY Optimization
实现GROUP BY子句的最常用方法是扫描整个表并创建一个新的临时表,其中每个组中的所有行都是连续的,然后使用此临时表来查找组并应用聚合函数(如果有)。在某些情况下,MySQL可以做得比这更好,通过使用索引访问避免创建临时表。使用GROUP BY索引的最重要前提条件是,所有GROUP BY列引用的属性来自同一索引,并且这个索引按顺序存储keys (例如,BTREE索引而不是HASH索引)。是否可以...翻译 2018-06-21 23:23:16 · 1003 阅读 · 0 评论 -
主流Java数据库连接池比较及前瞻
主流数据库连接池常用的主流开源数据库连接池有C3P0、DBCP、Tomcat Jdbc Pool、BoneCP、Druid等C3p0: 开源的JDBC连接池,实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate、Spring等。单线程,性能较差,适用于小型系统,代码600KB左右。DBCP (Database Connection Pool...转载 2018-05-28 13:13:00 · 238 阅读 · 0 评论