
mysql
逗比吃橙子
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
mysql性能优化-慢查询分析、优化索引和配置
目录一、优化概述二、查询与索引优化分析1性能瓶颈定位Show命令慢查询日志explain分析查询profiling分析查询 2索引及查询优化三、配置优化1) max_connections2) back_log3) interactive_timeout4)转载 2017-01-03 20:54:09 · 296 阅读 · 0 评论 -
MySQL索引原理及慢查询优化
MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会从职位描述上看到诸如“精通MySQL”、“SQL语句优化”、“了解数据库原理”等要求。我们知道一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,遇到最多的,也是最容易出问转载 2016-12-30 16:27:10 · 215 阅读 · 0 评论 -
mysql中的字符串的拼接
字符串的拼接1,Mysql 在Java、C#等编程语言中字符串的拼接可以通过加号“+”来实现,比如:"1"+"3"、"a"+"b"。在MYSQL中也可以使用加号“+”来连接两个字符串,比如下面的SQL: Sql代码 SELECT '12'+'33',FAge+'1' FROM T_Employee 执行结果Sql代码转载 2016-12-30 16:56:41 · 4200 阅读 · 0 评论 -
MySQL索引原理
##索引目的索引的目的在于提高查询效率,可以类比字典,如果要查“mysql”这个单词,我们肯定需要定位到m字母,然后从下往下找到y字母,再找到剩下的sql。如果没有索引,那么你可能需要把所有单词看一遍才能找到你想要的,如果我想找到m开头的单词呢?或者ze开头的单词呢?是不是觉得如果没有索引,这个事情根本无法完成?##索引原理除了词典,生活中随处可见索引的例子,如火车站的车次表、图书的目转载 2016-12-30 16:59:11 · 190 阅读 · 0 评论 -
MySQL 中的 SET 与 ENUM 类型使用详解
一、SET类型在创建表时,就指定SET类型的取值范围。 [sql] view plain copy 属性名 SET('值1','值2','值3'...,'值n') 其中,“属性名”参数指字段的名称;“值n”参数表示列表中的第n个值,这些值末尾的空格将会被系统直接删除。其基本形式与ENUM类型一样。SET类型的值可以取列表中的一个元素或转载 2016-12-30 19:27:56 · 2237 阅读 · 0 评论 -
Sphinx 安装到使用
Sphinx是一款基于SQL的高性能全文检索引擎,Sphinx的性能在众多全文检索引擎中也是数一数二的,利用Sphinx,我们可以完成比数据库本身更专业的搜索功能,而且可以有很多针对性的性能优化。Sphinx的特点快速创建索引:3分钟左右即可创建近100万条记录的索引,并且采用了增量索引的方式,重建索引非常迅速。闪电般的检索速度:尽管是1千万条的大数据量,查询数据的速度也在毫秒级以转载 2016-12-30 19:36:33 · 439 阅读 · 0 评论 -
MySQL的SQL语句写法
MySQL的SQL语句写法,除了那些基本的之外,还有一些也算比较常用的,这里记录下来,以便以后查找。 好记性不如烂笔头,这话说的太有道理了,一段时间不写它,还真容易忘记。大家不要纠结这些SQL语句包含的业务或是其它问题,本文只是一篇笔记而已。 将数据从T1表导入到T2表INSERT INTO T2 (C1,C2) SELECT C1,C2 FROM T1 [WHER转载 2017-02-16 16:50:59 · 511 阅读 · 0 评论 -
sql的优化
1.应尽量避免在 where 子句中使用!=或操作符,否则将引擎放弃使用索引而进行全表扫描。 2.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 3.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num转载 2017-02-17 13:01:38 · 426 阅读 · 0 评论 -
mysql 分区分表
一、什么是mysql分表和分区什么是分表,从表面意思上看呢,就是把一张表分成N多个小表什么是分区,分区呢就是把一张表的数据分成N多个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上二、mysql分表和分区有什么区别呢1、实现方式上a)mysql的分表是真正的分表,一张表分成很多表后,每一个小表都是完正的一张表,都对应三个文件,一个.MYD数据文件,.MYI索引文件,.fr转载 2017-02-17 14:43:11 · 281 阅读 · 0 评论 -
mysql sum case when
你是要按月分和销售人员来对销售额透视,而sql语句只对月份分组,正确结果应该增加分组维度1234567select月份,sum (case when 销售人员='姓名1' then 销售数量*产品单价 else 0 end) as 姓名1销售额,sum (case when 销售人员转载 2017-04-09 00:23:06 · 2895 阅读 · 0 评论 -
sql优化的具体解释和操作
前言有人反馈之前几篇文章过于理论缺少实际操作细节,这篇文章就多一些可操作性的内容吧。注:这篇文章是以 MySQL 为背景,很多内容同时适用于其他关系型数据库,需要有一些索引知识为基础。 优化目标 1.减少 IO 次数 IO永远是数据库最容易瓶颈的地方,这是由数据库的职责所决定的,大部分数据库操作中超过90%的时间都是 IO 操作所占用的,减少 IO 次数是 SQL 优化原创 2016-12-30 16:18:06 · 293 阅读 · 0 评论 -
mysql索引总结----mysql 索引类型以及创建
mysql索引总结----mysql 索引类型以及创建关于MySQL索引的好处,如果正确合理设计并且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。对于没有索引的表,单表查询可能几十万数据就是瓶颈,而通常大型网站单日就可能会产生几十万甚至几百万的数据,没有索引查询会变的非常缓慢。还是以WordPress来说,其多个数据表都会对经常被查询原创 2016-12-30 16:16:31 · 269 阅读 · 0 评论 -
为什么要分表和分区?
为什么要分表和分区?日常开发中我们经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表。这样的表过于庞大,导致数据库在查询和插入的时候耗时太长,性能低下,如果涉及联合查询的情况,性能会更加糟糕。分表和表分区的目的就是减少数据库的负担,提高数据库的效率,通常点来讲就是提高表的增删改查效率。什么是分表?分表是将一个大表按照一定的规则分解成多张具有独立存储空间的实体表,我们可转载 2017-01-03 21:06:37 · 418 阅读 · 0 评论 -
定位慢查询
MySQL慢查询配置1. 慢查询有什么用?它能记录下所有执行超过long_query_time时间的SQL语句, 帮你找到执行慢的SQL, 方便我们对这些SQL进行优化.2. 如何开启慢查询?首先我们先查看MySQL服务器的慢查询状态是否开启.执行如下命令:show variables like '%quer%';我们可以看到当前log_sl转载 2017-01-04 10:37:37 · 439 阅读 · 0 评论 -
mysql视图详解
一. 视图概述视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。对其中所引用的基础表来说,视图的作用类似于筛选。定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。通过视图进行查询没有任何限制,通过它们进行数据修改时的限转载 2017-01-04 14:03:38 · 291 阅读 · 0 评论 -
mysql 存储引擎
在数据库中存的就是一张张有着千丝万缕关系的表,所以表设计的好坏,将直接影响着整个数据库。而在设计表的时候,我们都会关注一个问题,使用什么存储引擎。等一下,存储引擎?什么是存储引擎?什么是存储引擎?关系数据库表是用于存储和组织信息的数据结构,可以将表理解为由行和列组成的表格,类似于Excel的电子表格的形式。有的表简单,有的表复杂,有的表根本不用来存储任何长期的数据,有的表读取时非常原创 2016-12-28 20:11:52 · 220 阅读 · 0 评论 -
先 innodb 还是 myisam
两种类型最主要的差别就是Innodb 支持事务处理与外键和行级锁.而MyISAM不支持.所以MyISAM往往就容易被人认为只适合在小项目中使用。我作为使用MySQL的用户角度出发,Innodb和MyISAM都是比较喜欢的,但是从我目前运维的数据库平台要达到需求:99.9%的稳定性,方便的扩展性和高可用性来说的话,MyISAM绝对是我的首选。原因如下:1、首先我目前平台上承载的大部分项目原创 2016-12-28 20:10:26 · 240 阅读 · 0 评论 -
myisam 和 innodb 的区别
MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的ISAM(Indexed Sequential Access Method:有索引的顺序访问方法)所改良。虽然性能极佳,但却有一个缺点:不支持事务处理(transaction)。不过,在这几年的发展下,MySQL也导入了InnoDB(另一种数据库引擎),以强化参考完整性与并发违规处理机制,后来就逐渐取代MyISAM。In原创 2016-12-28 20:09:44 · 261 阅读 · 0 评论 -
int(1) int(11) 的区别
NT[(M)] [UNSIGNED] [ZEROFILL]普通大小的整数。带符号的范围是-2147483648到2147483647。无符号的范围是0到4294967295。INT(1) 和 INT(10)本身没有区别,但是加上(M)值后,会有显示宽度的设置。如代码所示:mysql> create table test(id int(3));Query OK, 0 rows aff原创 2016-12-28 19:39:35 · 1136 阅读 · 0 评论 -
关系型数据库和非关系数据库的优缺点
数据库类型 特性优点缺点关系型数据库SQLite、Oracle、mysql1、关系型数据库,是指采用了关系模型来组织数据的数据库;2、关系型数据库的最大特点就是事务的一致性;3、简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。1、容易理解:二维表结构是非常贴近逻辑世界一个概原创 2016-12-28 18:54:02 · 1586 阅读 · 0 评论 -
mysql replication 互为主从的安装及配置,以及数据同步
mysql replication 互为主从的安装及配置,以及数据同步张映 发表于 2010-02-25分类目录: mysql标签:mysql replication,主从, 分布式一,mysql replication是什么,干什么用的MySQL replication提供了数据库复制的功能,可以实现多个数据库实时同步,具体如果下图:转载 2016-12-30 11:54:49 · 276 阅读 · 0 评论 -
mysql sql 子查询
在 SELECT 查询中使用子查询 子查询(或称嵌套查询)是一个嵌套在 SELECT、INSERT、UPDATE 或 DELETE 语句或其他子查询中的查询。子查询中还可以嵌套子查询,最多嵌套32层。 任何允许使用表达式的地方都可以使用子查询。 子查询也称为内部查询(或内部SELECT),而包含子查询的语句也称为外部查询(或外部SELECT)。转载 2017-12-07 14:36:12 · 615 阅读 · 0 评论