专注,勤学,慎思。戒骄戒躁,谦虚谨慎

just do it

导航

2017年6月2日 #

Linux下MySQL5.7.18 yum方式从卸载到安装

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6932166.html 折腾了大半天,看了想,想了看,总算是弄清楚yum安装的过程了,之前写过二进制包安装的,这里用yum安装,环境都是一样的,Centos7.2+MySQL5.7.18.每一步都参考了不少文章,后面会一一列举 阅读全文

posted @ 2017-06-02 10:42 MSSQL123 阅读(2920) 评论(0) 推荐(0) 编辑

2017年5月27日 #

SQL Server 利用Profiler观察执行计划是否重用时SP:Cachemiss,SP:CacheInsert以及SP:CacheHit的含义

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6913055.html 执行计划的缓存与重用 在通过SQL Profile观察一个SQL语句或者存储过程是否有可用的缓存执行计划的时候,通过SP:CacheMiss和SP:CacheHit事件可以说明是否发生了编译/重编译和是 阅读全文

posted @ 2017-05-27 15:52 MSSQL123 阅读(1012) 评论(0) 推荐(1) 编辑

2017年5月26日 #

T-SQL行合并成列与列拆分成行

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6910468.html 感觉最近sql也没少写,突然有一点生疏了,对于用的不是太频繁的一些操作,时间一久就容易生。 多行的某一个列合并成一个列 另外是一个相反的操作,借助上面合并之后的结果,将一个多个值的字符串列拆分开来,转换 阅读全文

posted @ 2017-05-26 21:32 MSSQL123 阅读(1399) 评论(1) 推荐(0) 编辑

SQLServer中利用NTILE函数对数据进行分组的一点使用

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6908377.html NTILE函数可以按照指定的排序规则,对数据按照指定的组数(M个对象,按照某种排序分N个组)进行分组,可以展现出某一条数据被分配在哪个组中. 不仅可以单单利用这个特性,还可以借助该特实现更加有意思的功能 阅读全文

posted @ 2017-05-26 15:16 MSSQL123 阅读(2073) 评论(0) 推荐(0) 编辑

2017年5月18日 #

SQL Server 中BIT类型字段增删查改那点事

摘要: 话说BIT类型字段之前,先看“诡异”的一幕,执行Update成功,但是查询出来的结果依然是1,而不是Update的2 当别人问起我来的时候,本人当时也是处于懵逼状态的,后面联想具体的业务突然想起来这个字段是bit类型的 如果把这个现象跟BIT类型字段连续起来就不觉得奇怪了。 废话不多,直接上代码看结 阅读全文

posted @ 2017-05-18 12:24 MSSQL123 阅读(6806) 评论(1) 推荐(3) 编辑

2017年5月15日 #

浅析SQL Server 中的SOS_SCHEDULER_YIELD类型的等待

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6856802.html 进程的状态转换 在说明SOS_SCHEDULER_YIELD等待之前,先简要介绍一下进程的状态(迷迷糊糊记得操作系统原理课上讲过,三态五态转换的,比下面这个图要复杂,大部分都还给老师了)。 如下图,分别 阅读全文

posted @ 2017-05-15 16:02 MSSQL123 阅读(2356) 评论(0) 推荐(0) 编辑

2017年5月11日 #

SQLServer中使用扩展事件获取Session级别的等待信息以及SQLServer 2016中Session级别等待信息的增强

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6835939.html 什么是等待 简单说明一下什么是等待:当应用程序对SQL Server发起一个Session请求的时候,这个Session请求在数据库中执行的过程中会申请其所需要的资源,比如可能会申请内存资源,表上的锁资 阅读全文

posted @ 2017-05-11 09:02 MSSQL123 阅读(2223) 评论(1) 推荐(3) 编辑

2017年5月10日 #

浅析SQL Server数据库中的伪列以及伪列的含义

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6833116.html SQL Server中的伪列 下午看QQ群有人在讨论(非聚集)索引的存储,说,对于聚集索引表,非聚集索引存储的是索引键值+聚集索引键值;对于非聚集索引表,索引存储的是索引键值+RowId,这应该是一个常 阅读全文

posted @ 2017-05-10 08:41 MSSQL123 阅读(4088) 评论(5) 推荐(5) 编辑

2017年5月5日 #

Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6815049.html 最新在学习MySQL,纯新手,对Linux了解的也不多,因为是下载的最新版的MySQL(MySQL5.7.18)二进制包,CentOS7.2下测试安装,方便以后折腾。大概步骤如下,安装删除反复折腾了几遍 阅读全文

posted @ 2017-05-05 21:49 MSSQL123 阅读(14385) 评论(2) 推荐(2) 编辑

2017年5月4日 #

关于T-SQL中exists或者not exists子查询的“伪优化”的做法

摘要: 问题起源 在使用t-sql中的exists(或者not exists)子查询的时候,不知道什么时候开始,发现一小部分人存在一种“伪优化”的一些做法,并且向不明真相的群众传递这一种写法“优越性”,实在看不下去,无法传递给他人正确的指导思想无可厚非,给他人传递错误的思想或者说误导人倒是一种罪恶。本来这个 阅读全文

posted @ 2017-05-04 20:48 MSSQL123 阅读(2841) 评论(1) 推荐(2) 编辑

2017年4月26日 #

SQL Server 中统计信息直方图中对于没有覆盖到谓词预估以及预估策略的变化(SQL2012-->SQL2014-->SQL2016)

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6770258.html 统计信息写过几篇了相关的文章了,感觉还是不过瘾,关于统计信息的问题,最近又踩坑了,该问题虽然不算很常见,但也比较有意思。相对SQL Server 2012,发现在新的SQL Server版本(2014, 阅读全文

posted @ 2017-04-26 20:21 MSSQL123 阅读(1410) 评论(1) 推荐(6) 编辑

2017年4月21日 #

T-SQL编程中的异常处理-异常捕获(try catch)与抛出异常(throw)

摘要: 本文出处: http://www.cnblogs.com/wy123/p/6743515.html T-SQL编程与应用程序一样,都有异常处理机制,比如异常的捕获与异常的抛出(try catch throw),本文简单介绍异常捕获与异常抛出在T-SQL编程中的实际使用 。 异常处理简单说明 异常捕获 阅读全文

posted @ 2017-04-21 16:52 MSSQL123 阅读(7656) 评论(0) 推荐(2) 编辑

2017年4月14日 #

SQL Server 数据库中的几个常见的临界值

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6709520.html 1,SQL语句或者存储过程的最大长度(SQL字符串容量)是多少? 经常有人问,我的SQL语句是拼凑出来的,可能很长,如果太长了,是不是SQL Server支持不动了? SQL语句的或者存储过程的最大长度 阅读全文

posted @ 2017-04-14 17:09 MSSQL123 阅读(2171) 评论(0) 推荐(4) 编辑

SQL Server数据库的存储过程中定义的临时表,真的有必要显式删除(drop table #tableName)吗?

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6704619.html 问题背景 在写SQL Server存储过程中,如果存储过程中定义了临时表,有些人习惯在存储过程结束的时候一个一个显式地删除过程中定义的临时表(drop table #tName),有些人又没有这个习惯, 阅读全文

posted @ 2017-04-14 08:42 MSSQL123 阅读(12179) 评论(9) 推荐(6) 编辑

2017年4月11日 #

SQL Server 优化---为什么索引视图(物化视图)需要with(noexpand)强制查询提示

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6694933.html 第一次通过索引视图优化SQL语句,以及遇到的一些问题,记录一下。 语句分析 最近开发递交过来一个查询统计的SQL,说是性能有问题,原本执行需要4-5秒钟,这个业务本身对性能要求又比较critical,期 阅读全文

posted @ 2017-04-11 19:13 MSSQL123 阅读(1893) 评论(1) 推荐(0) 编辑

2017年4月7日 #

数据库设计---关于建表的时候选择横表和竖表(纵表)的一点思考

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6677073.html 在做数据统计类数据库设计的时候,在考虑数据存储的时候,经常会遇到逻辑上同一个BusinessID对应多个数据点的情况,比如工资表中的员工ID以及各项工资信息,财务表中的各个报表Id和多个数据点之间的信息 阅读全文

posted @ 2017-04-07 14:02 MSSQL123 阅读(21914) 评论(4) 推荐(6) 编辑

2017年4月5日 #

MySQL查询提示

摘要: MySQL查询提示: 1.LOW_PROPRITY,HIGHT_PRIORITY 作用:指定sql语句的运行优先级,会将加了HIGHT_PROPRITY提示的sql调度到表访问队列的最前面 限制:仅对表级别的锁的引擎有效(MyISAM引擎),对非表级别的引擎的锁无效,比如innodb引擎 用法:up 阅读全文

posted @ 2017-04-05 15:23 MSSQL123 阅读(818) 评论(0) 推荐(0) 编辑

2017年4月1日 #

SQLServer数据库中开启CDC导致“事务日志空间被占满,原因为REPLICATION”的原因分析和解决办法

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6646143.html SQLServer中开启CDC之后,在某些情况下会导致事务日志空间被占满的现象为:在执行增删改语句(产生事务日志)的过程中提示,The transaction log for database '*** 阅读全文

posted @ 2017-04-01 09:32 MSSQL123 阅读(7230) 评论(5) 推荐(7) 编辑

2017年3月28日 #

译:SQL Server的Missing index DMV的 bug可能会使你失去理智---慎重看待缺失索引DMV中的信息

摘要: 注: 本文译自https://www.sqlskills.com/blogs/paul/missing-index-dmvs-bug-that-could-cost-your-sanity/ 原文作者是在SQL Server 2008 SP1下面说的这个问题,本人在SQL Server 2014 S 阅读全文

posted @ 2017-03-28 17:10 MSSQL123 阅读(954) 评论(5) 推荐(0) 编辑

2017年3月26日 #

SQLServer中间接实现函数索引或者Hash索引

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6617700.html SQLServer中没有函数索引,在某些场景下查询的时候要根据字段的某一部分做查询或者经过某种计算之后做查询,如果使用函数或者其他方式作用在字段上之后,就会限制到索引的使用,不过我们可以间接地实现类似于 阅读全文

posted @ 2017-03-26 00:11 MSSQL123 阅读(5834) 评论(2) 推荐(2) 编辑

2017年3月24日 #

MySQL缓存分类和配置

摘要: 读书笔记,待补充完善 MySQL缓存分类 InnoDB缓冲池 InnoDB日志文件和MyIsAM数据的操作系统缓存 MyIsAM键缓存 查询缓存 无法手工配置的缓存,二进制日志,表定义文件的操作系统缓存 其它缓存,通常不需要太多内存 InnoDB缓冲池 作用: 1.缓存的对象包括:数据行,索引,插入 阅读全文

posted @ 2017-03-24 10:27 MSSQL123 阅读(667) 评论(0) 推荐(0) 编辑

2017年3月21日 #

MySQL系统变量配置基础

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6595556.html MySQL变量的概念 个人认为可以理解成MySQL在启动或者运行过程中读取的一些参数问题,利用这些参数来启动服务、响应或者支持用户的请求等 变量的配置 如果打算长期使用,应该写入配置文件,而不是在命中指 阅读全文

posted @ 2017-03-21 17:24 MSSQL123 阅读(1094) 评论(2) 推荐(0) 编辑

2017年3月20日 #

MySQL索引统计信息更新相关的参数

摘要: MySQL统计信息相关的参数: 1. innodb_stats_on_metadata(是否自动更新统计信息),MySQL 5.7中默认为关闭状态 仅在统计信息配置为非持久化的时候生效。 也就是说在innodb_stats_persistent 配置为OFF的时候,非持久化存储统计信息的时候,inn 阅读全文

posted @ 2017-03-20 13:39 MSSQL123 阅读(4650) 评论(0) 推荐(0) 编辑

2017年3月18日 #

Sql Server优化---统计信息维护策略

摘要: 本文出处:http://www.cnblogs.com/wy123/p/5748933.html 首先解释一个概念,统计信息是什么: 简单说就是对某些字段数据分布的一种描述,让SQL Server大概知道预期的数据大小,从而指导生成合理执行计划的一种数据库对象 默认情况下统计信息的更新策略: 1,表 阅读全文

posted @ 2017-03-18 17:42 MSSQL123 阅读(5151) 评论(1) 推荐(2) 编辑

2017年2月7日 #

SQL Server 用角色(Role)管理数据库权限

摘要: 当数据库越来越多,连接到数据库的应用程序,服务器,账号越来越多的时候,为了既能达到满足账号操作数据权限需求,又不扩大其操作权限,保证数据库的安全性,有时候需要用角色来参与到权限管理中,通过角色做一个权限与访问用不之前的映射,可以更加方便地管理权限。 用SETUSER 切换到上面建的ReadUser账 阅读全文

posted @ 2017-02-07 14:10 MSSQL123 阅读(7627) 评论(3) 推荐(2) 编辑

sp_executesql 或者 EXECUTE 执行动态sql的权限问题

摘要: 当 sp_executesql 或 EXECUTE 语句执行字符串时,字符串将作为它的自包含批处理执行。SQL Server 会将字符串中的一个或多个 Transact-SQL 语句编译为独立于批处理(包含 sp_executesql 或 EXECUTE 语句)执行计划的执行计划。 跟权限有什么关系 阅读全文

posted @ 2017-02-07 11:25 MSSQL123 阅读(1971) 评论(1) 推荐(0) 编辑

2017年1月10日 #

关于T-SQL重编译那点事,内联函数和表值函数在编译生成执行计划的区别

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6266724.html 最近在学习 WITH RECOMPILE和OPTION(RECOMPILE)在重编译上的区别的时候,无意中发现表值函数和内联表值函数编译生成执行计划的区别下文中将会对此问题展开讨论。简单地说就是:同样一 阅读全文

posted @ 2017-01-10 14:22 MSSQL123 阅读(1777) 评论(1) 推荐(0) 编辑

2017年1月9日 #

关于T-SQL重编译那点事,WITH RECOMPILE和OPTION(RECOMPILE)区别仅仅是存储过程级重编译和SQL语句级重编译吗

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6262800.html 在考虑重编译T-SQL(或者存储过程)的时候,有两种方式可以实现强制重编译(前提是忽略导致重编译的其他因素的情况下,比如重建索引,更新统计信息等等), 一是基于WITH RECOMPILE的存储过程级别 阅读全文

posted @ 2017-01-09 21:50 MSSQL123 阅读(8789) 评论(3) 推荐(7) 编辑

2016年12月31日 #

Nested Loops join时显示no join predicate原因分析以及解决办法

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6238844.html 最近遇到一个存储过程在某些特殊的情况下,效率极其低效(同时服务器CPU资源占用急剧上升,导致整个服务器相应缓慢) 至于底下到什么程度我现在都没有一个确切的数据,因为预期很快就可以查询出来结果的SQL,实 阅读全文

posted @ 2016-12-31 12:11 MSSQL123 阅读(1159) 评论(0) 推荐(0) 编辑

2016年12月24日 #

T-SQL字符串相加之后被截断的那点事

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6217772.html 字符串自身相加, 虽然赋值给了varchar(max)类型的变量,在某些特殊情况下仍然会被“截断”,这到底是varchar(max)长度的问题还是操作的问题? 1,两个不超过8000长度的字符串自身相加 阅读全文

posted @ 2016-12-24 16:49 MSSQL123 阅读(2122) 评论(4) 推荐(2) 编辑

2016年12月17日 #

浅析SQL查询语句未显式指定排序方式,无法保证同样的查询每次排序结果都一致的原因

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6189100.html 标题有点拗口,来源于一个开发人员遇到的实际问题 先抛出问题:一个查询没有明确指定排序方式,那么,第二次执行这个同样的查询的时候,查询结果会不会与第一次的查询结果排序方式完全一样? 答案是不确定的,两个完 阅读全文

posted @ 2016-12-17 15:02 MSSQL123 阅读(4348) 评论(0) 推荐(9) 编辑

2016年11月28日 #

连接SQLServer时,因启用连接池导致孤立事务的原因分析和解决办法

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6110349.html 之前遇到过这么一种情况: 连接数据库的部分Session会出现不定时的阻塞,这种阻塞时长时短,有时候持续较长时间,有时间持续时间较短,没有什么规律。 之后分析相关存储过程和代码写法,发现是阻塞源头的存储 阅读全文

posted @ 2016-11-28 17:33 MSSQL123 阅读(2461) 评论(6) 推荐(9) 编辑

2016年11月20日 #

SELECT TOP 1 比不加TOP 1 慢的原因分析以及SELECT TOP 1语句执行计划预估原理

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6082338.html 现实中遇到过到这么一种情况: 在某些特殊场景下:进行查询的时候,加了TOP 1比不加TOP 1要慢(而且是慢很多)的情况, 也就是说对于符合条件的某种的数据,查询1条(符合该条件)数据比查询所有(符合该 阅读全文

posted @ 2016-11-20 14:07 MSSQL123 阅读(23410) 评论(7) 推荐(11) 编辑

2016年11月8日 #

SQL Server索引视图以(物化视图)及索引视图与查询重写

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6041122.html 经常听Oracle的同学说起来物化视图,物化视图的作用之一就是可以实现查询重写,听起来有一种高大上的感觉, SQL Server也有类似于Oracle物化视图的功能,只不过叫做索引视图。 说实话,还是物 阅读全文

posted @ 2016-11-08 08:52 MSSQL123 阅读(18843) 评论(6) 推荐(5) 编辑

2016年10月28日 #

SQL Server 执行计划利用统计信息对数据行的预估原理二(为什么复合索引列顺序会影响到执行计划对数据行的预估)

摘要: 本文出处:http://www.cnblogs.com/wy123/p/6008477.html 关于统计信息对数据行数做预估,之前写过对非相关列(单独或者单独的索引列)进行预估时候的算法,参考这里。 今天来写一下统计信息对于复合索引在预估时候的计算方法和潜在问题。 本文原形来自于是个实际业务问题, 阅读全文

posted @ 2016-10-28 17:58 MSSQL123 阅读(1353) 评论(1) 推荐(3) 编辑

2016年10月14日 #

SQL Server中公用表表达式 CTE 递归的生成帮助数据,以及递归的典型应用

摘要: 本文出处:http://www.cnblogs.com/wy123/p/5960825.html 我们在做开发的时候,有时候会需要一些帮助数据,必须需要连续的数字,连续间隔的时间点,连续的季度日期等等常见很多人利用master库的spt_values系统表,这个当然没有问题 比如下面这个(没截完,结 阅读全文

posted @ 2016-10-14 16:03 MSSQL123 阅读(1135) 评论(5) 推荐(4) 编辑

SQL Server 存储过程中处理多个查询条件的几种常见写法分析,我们该用那种写法

摘要: 本文出处: http://www.cnblogs.com/wy123/p/5958047.html 最近发现还有不少做开发的小伙伴,在写存储过程的时候,在参考已有的不同的写法时,往往很迷茫,不知道各种写法孰优孰劣,该选用那种写法,以及各种写法优缺点,本文以一个简单的查询存储过程为例,简单说一下各种写 阅读全文

posted @ 2016-10-14 08:50 MSSQL123 阅读(20640) 评论(18) 推荐(22) 编辑

2016年10月6日 #

SQL Server SQL性能优化之--pivot行列转换减少扫描计数优化查询语句

摘要: 原文出处:http://www.cnblogs.com/wy123/p/5933734.html 先看常用的一种表结构设计方式: 那么可能会遇到一种典型的查询方式,主子表关联,查询子表中的某些(或者全部)Key点对应的Value,横向显示(也即以行的方式显示) 这种查询方式很明显的一个却显示多次对字 阅读全文

posted @ 2016-10-06 13:52 MSSQL123 阅读(4043) 评论(1) 推荐(5) 编辑

2016年9月26日 #

SQL Server 通过重建方式还原 master 数据库

摘要: 1,备份master数据库 2,停止服务,直接删除master数据文件 3,用安装程序重建master数据文件 控制台下进入安装目录就不说了 D:\SetUp\sqlserver2012>Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=sqlse 阅读全文

posted @ 2016-09-26 17:25 MSSQL123 阅读(2007) 评论(2) 推荐(0) 编辑

2016年9月15日 #

SQL Server 统计信息更新时采样百分比对数据预估准确性的影响

摘要: 统计信息更新,采样百分比,密度 阅读全文

posted @ 2016-09-15 20:27 MSSQL123 阅读(3254) 评论(4) 推荐(6) 编辑