![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL
文章平均质量分 96
u010725670
这个作者很懒,什么都没留下…
展开
-
MySQL千万级别表数据中提高RAND随机查询的实验
1,准备测试数据 1.1 建库建表mysql> create database hwdb;Query OK, 1 row affected (0.34 sec) mysql>mysql> show create table t_huawei;+----------+-------------------------------------转载 2016-02-01 17:36:48 · 412 阅读 · 0 评论 -
InnoDB Adaptive hash index介绍
前言我们知道InnoDB的索引组织结构为Btree。通常情况下,我们需要根据查询条件,从根节点开始寻路到叶子节点,找到满足条件的记录。为了减少寻路开销,InnoDB本身做了几点优化。首先,对于连续记录扫描,InnoDB在满足比较严格的条件时采用row cache的方式连续读取8条记录(并将记录格式转换成MySQL Format),存储在线程私有的row_prebuilt_t::fe转载 2016-02-03 16:06:02 · 1271 阅读 · 0 评论 -
又一个有趣的mysql死锁测试与源码分析
表的数据与结构如下: mysql> select * from unlockt;+----+------+------+| a | b | c |+----+------+------+| 1 | 1 | 1 || 2 | 2 | 2 || 5 | 5 | 5 || 7 | 7转载 2016-03-03 18:45:16 · 607 阅读 · 0 评论 -
MySQL配置文件详解
说明1,红色代表重点参数2,“全局缓存”、“线程缓存”,全局缓存是所有线程共享,线程缓存是每个线程连接上数据时创建一个线程(如果没有设置线程池),假如有200连接、那就是200个线程,如果参数设定值是10M,那么参数值就是10*200=2000M=2G,很有可能吃垮内存,所以线程缓存并不是像全局缓存一样设定多少就占用多少,不可设置过大,一定注意character-set-ser转载 2016-02-03 18:12:03 · 201 阅读 · 0 评论 -
MySQL 机制图、innodb存储引擎图
转载 2016-02-03 18:13:41 · 267 阅读 · 0 评论 -
MySQL 5.6 & 5.7最优配置模板
Inside君整理了一份最新基于MySQL 5.6和5.7的配置文件模板,基本上可以说覆盖90%的调优选项,用户只需根据自己的服务器配置稍作修改即可,如InnoDB缓冲池的大小、IO能力(innodb_buffer_pool_size,innodb_io_capacity)。特别注意,这份配置文件不用修改,可以直接运行在MySQL 5.6和5.7的版本下,这里使用了小小的技巧,具体可看配置文件。如转载 2016-02-03 18:21:39 · 4333 阅读 · 0 评论 -
MySQL性能优化的最佳20+条经验
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1. 为转载 2016-02-03 18:24:47 · 208 阅读 · 0 评论 -
由浅入深探究 MySQL索引结构原理、性能分析与优化
第一部分:基础知识:索引官方介绍索引是帮助MySQL高效获取数据的数据结构。笔者理解索引相当于一本书的目录,通过目录就知道要的资料在哪里,不用一页一页查阅找出需要的资料。关键字index————————————————————-唯一索引强调唯一,就是索引值必须唯一,关键字unique index创建索引:1、create unique ind转载 2016-02-03 18:28:01 · 207 阅读 · 0 评论 -
Mysql配置优化浅谈
Mysql配置优化浅谈安装MySQL后,配置文件my.cnf在MySQL安装目录/share/mysql目录中,该目录中还包含多个配置文件可供参考,有my-large.cnf ,my-huge.cnf, my-medium.cnf,my-small.cnf,分别对应大中小型数据库应用的配置。win环境下即存在于MySQL安装目录中的.ini文件。下面列出了对性能优转载 2016-02-03 18:32:15 · 211 阅读 · 0 评论 -
InnoDB Fulltext简介
前言从MySQL5.6版本开始支持InnoDB引擎的全文索引,语法层面上大多数兼容之前MyISAM的全文索引模式。 所谓全文索引,是一种通过建立倒排索引,快速匹配文档的方式。MySQL支持三种模式的全文检索模式:第一种是自然语言模式(IN NATURAL LANGUAGE MODE),即通过MATCH AGAINST 传递某个特定的字符串来进行检索。第二种是布尔模式(I转载 2016-02-03 16:05:02 · 437 阅读 · 0 评论 -
InnoDB 事务锁系统简介
前言本文的目的是对InnoDB的事务锁模块做个简单的介绍,使读者对这块有初步的认识。本文先介绍行级锁和表级锁的相关概念,再介绍其内部的一些实现;最后以两个有趣的案例结束本文。本文所有的代码和示例都是基于当前最新的MySQL5.7.10版本。行级锁InnoDB支持到行级别粒度的并发控制,本小节我们分析下几种常见的行级锁类型,以及在哪些情况下会使用到这些类型的锁。转载 2016-02-03 16:03:41 · 390 阅读 · 0 评论 -
MySQL参数调优最佳实践
前言很多时候,RDS用户经常会问如何调优RDS MySQL的参数,为了回答这个问题,写一篇blog来进行解释:哪一些参数不能修改,那一些参数可以修改;这些提供修改的参数是不是已经是最佳设置,如何才能利用好这些参数;哪些参数可以改细心的用户在购买RDS的时候都会看到,不同规格能够提供的最大连接数以及内存是不同的,所以这一些产品规格的限制参数:连接数、内存用户是不能够修改的转载 2016-02-01 17:48:16 · 223 阅读 · 0 评论 -
MySQL执行状态分析
当感觉mysql性能出现问题时,通常会先看下当前mysql的执行状态,使用 show processlist 来查看,例如:其中state状态列信息非常重要,先看下各列含义,然后看下state常用状态各列的含义1、id一个标识,你要kill一个语句的时候使用,例如 mysql> kill 207;2、user显示当前用户,如果不是root,这转载 2016-02-01 18:14:20 · 202 阅读 · 0 评论 -
数据库索引的作用和优点缺点以及索引的11中用法
为什么要创建索引呢?这是因为,创建索引可以大大提高系统的性能。 第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。 第二,可以大大加快 数据的检索速度,这也是创建索引的最主要的原因。 第三,可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。 第四,在使用分组和排序 子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。 第五,通过使用索引转载 2016-02-01 18:19:41 · 749 阅读 · 0 评论 -
MySQL 加锁处理分析
MySQL 加锁处理分析 1 背景 11.1 MVCC:Snapshot Read vs Current Read 21.2 Cluster Index:聚簇索引 31.3 2PL:Two-Phase Locking 31.4 Isolation Level转载 2016-02-15 15:13:53 · 176 阅读 · 0 评论 -
SQL中的where条件,在数据库中提取与应用浅析
SQL中的where条件,在数据库中提取与应用浅析1 问题描述一条SQL,在数据库中是如何执行的呢?相信很多人都会对这个问题比较感兴趣。当然,要完整描述一条SQL在数据库中的生命周期,这是一个非常巨大的问题,涵盖了SQL的词法解析、语法解析、权限检查、查询优化、SQL执行等一系列的步骤,简短的篇幅是绝对无能为力的。因此,本文挑选了其中的部分内容,也是我一直转载 2016-02-15 15:30:07 · 427 阅读 · 0 评论 -
MySQL+InnoDB semi-consitent read原理及实现分析
MySQL+InnoDB semi-consitent read原理及实现分析semi-consistent简介 1semi-consistent实现 2MySQL Server层 2InnoDB Engine层 2是否采用semi-consistent read 2Fetch N转载 2016-02-15 15:38:30 · 814 阅读 · 0 评论 -
mysql死锁问题分析
线上某服务时不时报出如下异常(大约一天二十多次):“Deadlock found when trying to get lock;”。 Oh, My God! 是死锁问题。尽管报错不多,对性能目前看来也无太大影响,但还是需要解决,保不齐哪天成为性能瓶颈。 为了更系统的分析问题,本文将从死锁检测、索引隔离级别与锁的关系、死锁成因、问题定位这五个方面来展开讨论。转载 2016-02-15 15:40:51 · 217 阅读 · 0 评论 -
MySQL 中隔离级别 RC 与 RR 的区别
1. 数据库事务ACID特性数据库事务的4个特性:原子性(Atomic): 事务中的多个操作,不可分割,要么都成功,要么都失败; All or Nothing.一致性(Consistency): 事务操作之后, 数据库所处的状态和业务规则是一致的; 比如a,b账户相互转账之后,总金额不变;隔离性(Isolation): 多个事务之间就像是串行执行一样,不相互影响;持久性(D转载 2016-02-03 14:52:21 · 370 阅读 · 0 评论 -
MySQL 5.7主键查找结果—真的很快嘛?
这篇博客测试MySQL5.7的主键查询结果并确定MySQL5.7是不是真的比之前的版本查询的更快。 前段时间MySQL5.7刚刚发布,现在尘埃落定,是时候来测试一下它在性能上面的提升了。 我可不是仅仅为了满足自己的好奇心才做的这些测试!许多还在使用MySQL5.6(甚至是MySQL5.5)的用户经常问升级到5.7能获得多少的性能提升呢? 或者它会不会反而降低性能呢,特别是当Pe转载 2016-04-15 10:17:47 · 2475 阅读 · 0 评论