
MySQL
苏康申
成就别人就等于成就自己
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MySQL主从复制的配置
技术背景在做web应用系统中,如果数据库出现了性能瓶颈,而你又是使用的MySQL数据库,那么就可以考虑采用数据库集群的方式来实现查询负载了。因为一般来讲一个系统中数据库的查询操作比更新操作要多的多,因此通过多台查询服务器将数据库的查询分担到不同的查询数据库从而提高数据库的查询效率。MySQL的主从同步是一个很成熟的架构,优点为:①在从服务器可以执行查询工作(即我们常原创 2017-12-28 11:52:34 · 1941 阅读 · 0 评论 -
mysql 查询并删除重复的记录
1.查询重复的用户名记录select user_name,count(*) as count from user group by user_name having count>1;2.查找表中全部重复的记录Select * From 表 Where 重复字段 In (Select 重复字段 From 表 Group By 重复字段 Having Count(*)>1)...原创 2018-07-28 18:31:25 · 741 阅读 · 0 评论 -
mysql join 利用查询结果集进行关联
两种方式第一种 join左边是查询结果集 右边是单表进行关联,这是我们最常见的用法,基本上这种连接都能满足一般的查询需求。这里还要说明一下,LEFT JOIN是先连接,后过滤。也就是说,在WHERE条件过滤之前,已经进行了连接。SELECT S.STUDENT_NAME STUDENT_NAME, S.STUDENT_NO STUDENT_NO, F.ADDRESS ADDRESS...原创 2018-07-28 17:57:21 · 13686 阅读 · 0 评论 -
MySQL调优sql语句三步曲
前言http://www.linuxidc.com/Linux/2012-09/70459.htmmysql profile explain slow_query_log分析优化查询在做性能测试中经常会遇到一些sql的么就是cpu高,所以对数据的优化在性能测试过程中占据着很重要的地方,下面我就介绍一些msyql性能调优过程中经常用到的三件利器:1、慢查询 (分析出现出问题的sql)2、Explai...原创 2018-03-05 15:04:27 · 273 阅读 · 0 评论 -
MySQL 索引的使用以及注意事项
前言查看索引查看表中已经存在 index:show index from table_name;创建和删除索引索引的创建可以在CREATE TABLE语句中进行,也可以单独用CREATE INDEX或ALTER TABLE来给表增加索引。删除索引可以利用ALTER TABLE或DROP INDEX语句来实现。(1)使用ALTER TABLE语句创建索引。语法如下:alter table table...原创 2018-03-05 14:59:39 · 835 阅读 · 0 评论 -
MySQL索引背后的数据结构及算法原理
定义MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构。我们知道,数据库查询是数据库的最主要功能之一。我们都希望查询数据的速度能尽可能的快,因此数据库系统的设计者会从查询算法的角度进行优化。最基本的查询算法当然是顺序查找(linear search),这种复杂度为O(n)的算法在数据量很大时显然是糟糕的,好在计...原创 2018-03-05 14:57:35 · 211 阅读 · 0 评论 -
Innodb与MyIsam区别二
https://www.kancloud.cn/kancloud/theory-of-mysql-index/41846MyISAM引擎使用B+Tree作为索引结构,叶节点的data域存放的是数据记录的地址。下图是MyISAM索引的原理图:这里设表一共有三列,假设我们以Col1为主键,则上图是一个MyISAM表的主索引(Primary key)示意。可以看出MyISAM的索引文件仅仅保存数据记录的...原创 2018-03-05 14:46:05 · 335 阅读 · 0 评论 -
Innodb与MyIsam区别一
mysql支持的存储引擎:Innodb MyIsam NDB Memory Archive。存储文件1, 事务处理innodb 支持事务功能,myisam 不支持。Myisam 的执行速度更快,性能更好。MyISAM管理非事务表。它提供高速存储和检索,以及全文搜索能力。如果应用中需要执行大量的SELECT查询,那么MyISAM是更好的选择。 InnoDB用于事务处理应用程序,具有众...原创 2018-03-05 14:43:09 · 233 阅读 · 0 评论 -
对mysql乐观锁、悲观锁、共享锁、排它锁、行锁、表锁概念的理解
共享锁又称为读锁,简称S锁,顾名思义,共享锁就是多个事务对于同一数据可以共享一把锁,都能访问到数据,但是只能读不能修改。排他锁又称为写锁,简称X锁,顾名思义,排他锁就是不能与其他锁并存,如一个事务获取了一个数据行的排他锁,其他事务就不能再获取该行的其他锁,包括共享锁和排他锁,但是获取排他锁的事务是可以对数据就行读取和修改。对于共享锁大家可能很好理解,就是多个事务只能读数据不能改数据,对于排他锁大家...原创 2018-03-05 14:34:50 · 243 阅读 · 0 评论 -
MySQL 存储过程
存储过程定义我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。一个存储过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语句和一些特殊的控制结构组成。当希望在不同的应用程序或平台上执行...原创 2018-03-05 14:13:53 · 226 阅读 · 0 评论 -
MySQL 事务介绍及原理
1 为什么要事务 事务是一组不可被分割执行的SQL语句集合,如果有必要,可以撤销。银行转账是经典的解释事务的例子。用户A给用户B转账5000元主要步骤可以概括为如下两步。 第一,账户A账户减去5000元; 第二,账户B账户增加5000元; 这两步要么成功,要么全不成功,否则都会导致数据不一致。这就可以用到事务来保证,如果是不同银行之间的转账还需要用到分布式事务。2 事务的性质 事务的机制...原创 2018-03-05 14:00:21 · 240 阅读 · 0 评论 -
MySQL 触发器
一,什么触发器触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发语法:触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约...原创 2018-03-05 13:51:46 · 415 阅读 · 0 评论 -
mysql 两表关联更新
使用场景:在进行两个表join关联查询时,此时我想把p表中的user_name赋值给a表中的user_name,直接执行SQL如下:UPDATE mz_insurance.mz_insurance_user pLEFT JOIN insurance.ins_user aON p.union_id = a.union_idSET a.user_n...原创 2018-08-10 21:51:20 · 19506 阅读 · 0 评论