mysql
Captain2200
这个作者很懒,什么都没留下…
展开
-
mysql虚拟列(Generated Columns)及JSON字段类型的使用
mysql 5.7中有很多新的特性,但平时可能很少用到,这里列举2个实用的功能:虚拟列及json字段类型一、先创建一个测试表: 1 2 3 4 5 6 7 8 9 droptableif exists t_people; CREATETABLEt_people( `id`INT(11)NOTNULLAUTO_INCREMENT, `name`va...转载 2020-10-22 22:19:19 · 958 阅读 · 0 评论 -
MySQL事务隔离级别的实现原理
回顾在MySQL的众多存储引擎中,只有InnoDB支持事务,所有这里说的事务隔离级别指的是InnoDB下的事务隔离级别。读未提交:一个事务可以读取到另一个事务未提交的修改。这会带来脏读、幻读、不可重复读问题。(基本没用)读已提交:一个事务只能读取另一个事务已经提交的修改。其避免了脏读,但仍然存在不可重复读和幻读问题。可重复读:同一个事务中多次读取相同的数据返回的结果是一样的。其避免...原创 2020-02-21 11:29:44 · 351 阅读 · 0 评论 -
【MySQL性能优化】数据库设计三大范式(二)
转载自http://chenhaoxiang.cn/2018/02/04/2158/数据库设计无非遵循的就是减少冗余量,第二点就是遵循三范式第一范式(1NF)确保每一列的原子性也就是如果每一列都满足是不可再分的最小数据单元,则满足第一范式比如id name sex address1 chx 0 湖南长沙在这里,其实地址这个字段是可以再拆分的,拆分成省份,市区。但是,在有的场景下,也可以不分。需要根...转载 2018-06-27 17:10:46 · 300 阅读 · 0 评论 -
【MySQL性能优化】概述与优化方面(一)
转载自 http://chenhaoxiang.cn/2018/02/04/1758/像sql语句如何进行调优,基本上在中高级程序员面试中都有可能会被问到。所以说,了解,或者学习一下如何进行sql调优是必要的。我会关于该sql调优文章出一个系列的博客。与大家一起学下去首先不具体进行介绍,先大体的概括一下,因为答案基本是死的,但是处理方式是活的MySQL性能优化/概述1.数据库的设计目前只要知道三范...转载 2018-06-27 17:10:02 · 176 阅读 · 0 评论 -
win10安装 MySQL安装教程
转载自 https://blog.csdn.net/zhouzezhou/article/details/52446608环境:windwos 10(1511) 64bit、mysql 5.7.14时间:2016年9月5日一、下载mysql1. 在浏览器里打开mysql的官网http://www.mysql.com/2. 进入页面顶部的"Downloads"3. 打开页面底部的“Community...转载 2018-06-19 14:26:40 · 803 阅读 · 1 评论 -
数据库四种设计模式
转载自 https://blog.csdn.net/hhuahualala/article/details/51589133数据库设计四种主要设计模式的一般使用原则1.主扩展模式主扩展模式通常用来将几个相似的对象的共有属性抽取出来,形成一个”公共属性表“,且“公共属性表”与“专有属性表”是“一对一”的关系。 “专有属性表”可以看做是“公共属性表”的 扩展,两者合在一起就是对一个特定对象的完整描述,...转载 2018-06-25 16:48:16 · 620 阅读 · 0 评论 -
步步深入:MySQL架构总览->查询执行流程->SQL解析顺序
转载自 https://www.cnblogs.com/annsshadow/p/5037667.html前言: 一直是想知道一条SQL语句是怎么被执行的,它执行的顺序是怎样的,然后查看总结各方资料,就有了下面这一篇博文了。 本文将从MySQL总体架构--->查询执行流程--->语句执行顺序来探讨一下其中的知识。 一、MySQL架构总览: 架构最好看图,再配上必要的说明文字。 ...转载 2018-07-05 10:20:43 · 264 阅读 · 0 评论 -
MySQL + springboot修改时区的方法小结
说明:这里总结记录修改mysql时区的三种方法。方法一:通过mysql命令行模式下动态修改1.1 查看mysql当前时间,当前时区?123456789101112131415> select curtime(); #或select now()也可以+-----------+| curtime() |+-----------+| 15:18:10 |+-----------+> sho...原创 2018-05-16 10:07:30 · 14321 阅读 · 0 评论 -
Mysql中的自定义函数和自定义过程
转载自 http://www.cnblogs.com/lyhabc/p/3793524.html转载地址:http://www.cnblogs.com/lyhabc/p/3793524.htmlMYSQL中创建存储过程和函数分别使用CREATE PROCEDURE和CREATE FUNCTION使用CALL语句来调用存储过程,存储过程也可以调用其他存储过程函数可以从语句外调用,能返回标量值创建存储...转载 2018-05-08 18:34:11 · 3299 阅读 · 0 评论 -
Mysql| Mysql函数,聚集函数的介绍与使用(Lower,Date,Mod,AVG,...)
转载自https://blog.csdn.net/u011479200/article/details/78633382关于MYSQL的函数函数没有通用的SQL语句的可移植性强 能运行在多个系统上的代码称为可移植的( portable)。相对来说,多数SQL语句是可移植的,在SQL实现之间有差异时,这些差异通常不那么难处理。而函数的可移植性却不强。几乎每种主要的DBMS的实现都支持其他实现不支持的...原创 2018-05-08 18:25:34 · 556 阅读 · 0 评论 -
mysql 函数substring_index()
转载自 https://www.cnblogs.com/lijiageng/p/6511334.html函数: 1、从左开始截取字符串 left(str, length) 说明:left(被截取字段,截取长度) 例:select left(content,200) as abstract from my_content_t 2、从右开始截取字符串 right(str, length) 说明:ri...转载 2018-04-25 18:00:31 · 940 阅读 · 0 评论 -
MySQL的学习--触发器
转载自https://www.cnblogs.com/CraryPrimitiveMan/p/4206942.htmlMySQL包含对触发器的支持。触发器是一种与表操作有关的数据库对象,当触发器所在表上出现指定事件时,将调用该对象,即表的操作事件触发表上的触发器的执行。创建触发器在MySQL中,创建触发器语法如下:CREATE TRIGGER trigger_nametrigger_timet...转载 2018-05-09 10:23:43 · 182 阅读 · 0 评论 -
MySQL的or/in/union与索引优化
假设订单业务表结构为:order(oid, date, uid, status, money, time, …)其中:oid,订单ID,主键date,下单日期,有普通索引,管理后台经常按照date查询uid,用户ID,有普通索引,用户查询自己订单status,订单状态,有普通索引,管理后台经常按照status查询money/time,订单金额/时间,被查询字段,无索引…假设订单有三种状态:0已下单...原创 2018-04-04 15:08:29 · 275 阅读 · 0 评论 -
mysql优化学习笔记
优化sql的一般步骤通过show status了解各种sql的执行频率定位执行效率低的sql语句通过explain分析效率低的sql通过show profile分析sql通过trace分析优化器如何选择执行计划确定问题,采取措施优化索引优化措施mysql中使用索引的典型场景匹配全值,条件所有列都在索引中而且是等值匹配匹配值的范围查找,字段必须在索引中匹配最左前缀,复合索引只会根据最左列进行查找仅仅...原创 2018-04-04 15:07:23 · 200 阅读 · 0 评论 -
【MySQL性能优化】MySQL分库分表与水平分割取模案例(三)
转载自 http://chenhaoxiang.cn/2018/02/05/2316/分表分库当项目比较大的时候,基本上都会进行分表分库的后面就讲讲什么时候需要分库,什么时候需要分表什么时候需要分库垂直分割垂直拆分就是要把表按模块划分到不同数据库表中(当然原则还是不破坏第三范式),这种拆分在大型网站的演变过程中是很常见的。当一个网站还在很小的时候,只有小量的人来开发和维护,各模块和表都在一起,当网...转载 2018-06-27 17:11:25 · 791 阅读 · 0 评论 -
mysql时间与字符串相互转换
转载自 https://www.cnblogs.com/wangyongwen/p/6265126.html时间、字符串、时间戳之间的互相转换很常用,但是几乎每次使用时候都喜欢去搜索一下用法;本文整理一下三者之间的 转换(即:date转字符串、date转时间戳、字符串转date、字符串转时间戳、时间戳转date,时间戳转字符串)用法,方便日后学习和查阅;涉及的函数date_format...转载 2018-08-13 10:09:44 · 2679 阅读 · 0 评论 -
MySQL之use index()查询
转载自https://blog.csdn.net/java852987/article/details/83541311语法:SELECT ... FROM TABLE [ {USE|IGNORE|FORCE} INDEX (key_list)] WHERE ...1USE INDEX用来提供你希望MySQL去参考的索引列表,就可以让MySQL不再考虑使用其他可用的索引。INGN...转载 2019-04-18 17:32:42 · 575 阅读 · 0 评论 -
MySQL中join的用法
转载自 https://www.cnblogs.com/beili/p/9140019.html近期用phpcms v9做项目,初期没有问题,后期随着数据量的增大,phpcms v9后台出现的栏目更新不动的情况,初期我以为是程序的问题,进行了程序排查,没有发现任何问题,登录上centos服务器后free命令发现内存也没有满。瞬间感觉很蛋疼,不知如何处理,后来登录阿里云账号,发现更新栏目时,cp...转载 2018-11-08 15:17:49 · 2297 阅读 · 0 评论 -
深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接
转载自 http://www.jb51.net/article/39432.htm1、内联接(典型的联接运算,使用像 = 或 <> 之类的比较运算符)。包括相等联接和自然联接。 内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students和courses表中学生标识号相同的所有行。 2、外联接。外联接可以是左向外联接、右向外联接...转载 2018-09-04 22:42:57 · 695 阅读 · 0 评论 -
mysql的水平分表和垂直分表的区别
转载自 https://www.2cto.com/database/201709/676637.html1,水平分割:例:QQ的登录表。假设QQ的用户有100亿,如果只有一张表,每个用户登录的时候数据库都要从这100亿中查找,会很慢很慢。如果将这一张表分成100份,每张表有1亿条,就小了很多,比如qq0,qq1,qq1...qq99表。用户登录的时候,可以将用户的id%100,那么会...转载 2018-08-23 10:22:40 · 19544 阅读 · 8 评论 -
MySQL锁详解
转载自http://www.cnblogs.com/luyucheng/p/6297752.html一、概述数据库锁定机制简单来说,就是数据库为了保证数据的一致性,而使各种共享资源在被并发访问变得有序所设计的一种规则。对于任何一种数据库来说都需要有相应的锁定机制,所以MySQL自然也不能例外。MySQL数据库由于其自身架构的特点,存在多种数据存储引擎,每种存储引擎所针对的应用场景特点都不太...转载 2018-08-19 16:30:38 · 293 阅读 · 0 评论 -
mysql explain用法和结果的含义
转载自https://www.cnblogs.com/yycc/p/7338894.html转自:http://blog.chinaunix.net/uid-540802-id-3419311.html explain显示了mysql如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。使用方法,在select语句前加上explain就可以了:...转载 2018-08-19 16:20:06 · 202 阅读 · 0 评论 -
MySQL索引类型
转载自http://www.cnblogs.com/luyucheng/p/6289714.html一、简介MySQL目前主要有以下几种索引类型:1.普通索引2.唯一索引3.主键索引4.组合索引5.全文索引二、语句CREATE TABLE table_name[col_name data type][unique|fulltext][index|key][index_...转载 2018-08-19 16:18:57 · 350 阅读 · 0 评论 -
MySQL配置优化
转载自http://www.cnblogs.com/luyucheng/p/6340076.html一、全局配置(1)max_connections最大连接数。默认值是151,最多2000。如果服务器的并发连接请求量比较大,建议调高此值,以增加并行连接数量。但是如果连接数越多,介于MySQL会为每个连接提供连接缓冲区,就会开销越多的内存,所以要适当调整该值。查看最大连接数mysq...转载 2018-08-19 11:55:15 · 1318 阅读 · 0 评论 -
MySQL优化
转载自http://www.cnblogs.com/luyucheng/p/6323477.html一、SQL语句优化(1)使用limit对查询结果的记录进行限定(2)避免select *,将需要查找的字段列出来(3)使用连接(join)来代替子查询(4)拆分大的delete或insert语句二、选择合适的数据类型(1)使用可存下数据的最小的数据类型,整型 < date...转载 2018-08-19 11:43:31 · 206 阅读 · 0 评论 -
MySQL中的索引详讲
转载自 https://www.cnblogs.com/whgk/p/6179612.html序言 之前写到MySQL对表的增删改查(查询最为重要)后,就感觉MySQL就差不多学完了,没有想继续学下去的心态了,原因可能是由于别人的影响,觉得对于MySQL来说,知道了一些复杂的查询,就够了,但是我认为,不管有没有用,现在学着不懂的东西,说明就是自己薄弱的地方,多学才能比别人更...转载 2018-08-19 11:42:37 · 248 阅读 · 0 评论 -
MySQL慢查询(一) - 开启慢查询
转载自https://www.cnblogs.com/luyucheng/p/6265594.html一、简介开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。二、参数说明slow_query_log 慢查询开启状态slow_query_log_file 慢查询日志存放的位置(这个目录需要MySQL的运行帐号的可...转载 2018-08-19 11:37:26 · 2939 阅读 · 0 评论 -
mysql分析sql语句基础工具 —— explain
转载自 https://segmentfault.com/a/1190000009724144 立即登录[笔记] mysql分析sql语句基础工具 —— explain mysql waterandair 2017年06月18日发布赞 | 0收藏 | 6402 次浏览分析sql语句 explainexplain (sql语句) G;分析结果:id sql语句编号如果是连接查询,表之间是平...转载 2018-04-04 15:06:47 · 2009 阅读 · 0 评论 -
MySQL InnoDB索引介绍及优化
转载自 https://segmentfault.com/a/1190000007445807 一、索引概念索引(index)翻译为一个目录,用于快速定位我们想要找的数据的位置。例如:我们把一个数据库比作一本书,而索引(index)就是书中的目录,此刻要找到书的某个感兴趣的内容,我们一般是不会整本书翻完再去确认该内容在哪里,而是通过书的目录,定位到该内容章节所在页数,最后直接翻到该页面我们来看看在...转载 2018-04-04 15:03:04 · 956 阅读 · 0 评论 -
MySQL(七)联结表
一、联结表基础知识1、关系表把信息分解成多个表,一类数据一个表,各表通过某些常用值(即关系设计中的关系(relational))互相关联;2、外键(foreign key):外键为某个表中的一列,它包含另一个表的主键值,定义了两个表之间的关系3、联结表的优点:①数据信息不重复,从而不浪费时间和空间②如果某个数据信息变动,可以只更新该表中的某个记录,相关表数据不用变更③数据无重复,可以更有效的存储和...原创 2018-03-22 14:36:05 · 266 阅读 · 1 评论 -
MySQL(六)常用语法和数据类型
阅读MySQL语法时,需要注意的规则:①符号用来指出几个选择中的一个,比如:null | not null表示或者给出null或者给出not null;②包含在方括号中的关键字或子句(如[like this])是可选的;③既没有列出所有的MySQL语句,也没有列出每一条子句和选项。 一、常用语法1、alter table:更新已存在表的模式alter table tablename( a...原创 2018-03-22 14:28:22 · 314 阅读 · 0 评论 -
MySQL(五)汇总和分组数据
一、汇总数据工作中经常需要汇总数据而不是将它们全部检索出来(实际数据本身:返回实际数据是对时间和处理资源的浪费),这种类型的检索有以下特点:①确定表中的行数(或者满足某个条件或包含某个特定值的行数)②获得表中行组的和③找出表列(或所有行或某些特定的行)的最大值、最小值和平均值聚集函数(aggregate function):运行在行组上,计算和返回单个值的函数(MySQL还支持一些列的标准偏差聚集...原创 2018-03-22 14:20:21 · 594 阅读 · 0 评论 -
MySQL(四)字段及常用函数
一、字段数据库表中的每一行叫做一个“记录”,每一个记录包含这行中的所有信息,但记录在数据库中并没有专门的记录名,常常用它所在的行数表示这是第几个记录。在数据库中存放在表行列交叉处的数据叫做“值”,它是数据库中最基本的存储单元,它的位置要由这个表中的记录和字段来定义。1、字段(filed):与对象或类关联的变量(大多数时候,与列的意思相同);每个字段由若干按照某种界限划分的相同数据类型的数据项组成。...原创 2018-03-22 14:06:04 · 1355 阅读 · 0 评论 -
MySQL(二)数据的检索和过滤
使用频率最高的SQL语句应该就是select语句了,它的用途就是从一个或多个表中检索信息,使用select检索表数据必须给出至少两条信息:想选择什么,以及从什么地方选择 一、检索数据1、检索单个列select column from table;该SQL语句的检索结果将返回表中的所有行,数据没有过滤(过滤将得出结果集的一个子集),也没有排序(如没有明确排序查询结果,则返回数据的顺序没有特殊意义,只...原创 2018-03-22 14:04:41 · 252 阅读 · 0 评论 -
MySQL(三)用正则表达式搜索
正则表达式是用来匹配文本的特殊的串(字符集合),将一个模式(正则表达式)与一个文本串进行比较;所有种类的程序设计语言、文本编辑器、操作系统等都支持正则表达式,正则表达式用正则表达式语言来建立;MySQL仅支持多数正则表达式实现的一个很小的子集; 一、基本字符匹配select column from table where column regexp ‘1000’ order by column;该...原创 2018-03-22 14:03:55 · 268 阅读 · 0 评论 -
MySQL局域网内访问慢的原因及解决方法
转载自 http://blog.csdn.net/tiantang_1986/article/details/76890178MySQL局域网内访问慢的原因及解决方法。出现原因:主要是因为DNS服务器变更地址引起的。默认安装的mysql开启了DNS的反向解析,Windows系统下解决方法1. 进入WIN2003/XP系统Windows目录2. 找出my.转载 2018-02-01 21:29:33 · 1547 阅读 · 0 评论 -
Mycat入门教程
转载自 http://blog.csdn.net/u013467442/article/details/56955846mycat介绍介绍在官方网站上有比较详细的介绍,在这里复制粘贴没什么意思,大家到官网上看官网链接前置条件本教程是在window环境下运行的,实际生产推荐在Linux上运行。 必备条件(自行安装,如果不会装请先打好基础在来学习):转载 2018-01-31 19:32:49 · 341 阅读 · 0 评论 -
SQL中Group By的使用,以及一些特殊使用方法
转载自 https://www.cnblogs.com/jingfengling/p/5962182.html 1、概述“Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理。2、原始表3、简单Group By转载 2018-01-31 18:33:49 · 1453 阅读 · 0 评论 -
mysql索引及优化
1.mysql索引MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。索引分单列索引和组合索引。单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引。组合索引,即一个索包含多个列。创建索引时,你需要确保该索引是应用在 SQL 查询语句的条件(一般作为 WHERE 子句的条件)。实际上,索引也是一张表,该表保存了主键与原创 2018-01-16 17:28:05 · 247 阅读 · 0 评论 -
mysql中模糊查询的四种用法
转载自 https://www.cnblogs.com/songfayuan/articles/7290158.html下面介绍mysql中模糊查询的四种用法:1,%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。比如 SELECT * FROM [user] WHERE u_name LIKE '%三%'将会把u_na转载 2018-01-30 21:37:35 · 2871 阅读 · 0 评论