SQL Server
文章平均质量分 95
發糞塗牆
MVP, TOGAF, MCSE, Azure Solution Architect
展开
-
Azure SQL DB/DW 系列(10)——重新认识Query Store(3)——配置查询存储
本文属于Azure SQL DB/DW系列上一文:Azure SQL DB/DW 系列(9)——重新认识Query Store(2)——工作原理本文介绍Query Store的配置,包括PaaS平台和非云版本默认设置 和其他功能一样,要最大化它的潜在用处,需要按需配置。Query Store在非云版本中(托管实例除外,因为托管实例非常接近非云版本)默认是不开启的,如果你需要使用,当然...原创 2020-03-29 20:54:55 · 1022 阅读 · 0 评论 -
SQL Server导入性能对比(1)——WITH TABLOCK并行导入
随着大数据和大量数据系统的出现,数据的加载变得越来越重要,很多岗位甚至只需要ETL技能,不过今时今日数据加载已经不再是单纯的ETL,还有ELT,甚至不需要进行数据移动的计算等等。本文先把精力放在传统的ETL上。介绍几种数据加载的过程和对比。常规数据加载方式 数据加载的本质就是把数据插入特定的地方,通常我们关注的是性能,说白了就是插入完成的时间,及引起的空间消耗。 本文及后面两篇文章...原创 2020-03-02 11:37:39 · 1561 阅读 · 0 评论 -
SQL Server—— 在ETL过程列存储索引vs 行存储索引
本人新书上市,请多多关照:《SQL Server On Linux运维实战 2017版从入门到精通》这几天我一直在跟进公司的一个性能问题,里面涉及到聚集列存储索引的问题。跟微软的技术支持讨论了一下,他们的建议可以考虑转成非聚集的列存储索引,那我到底怎么做好呢?我觉得有必要研究一下这两者的差异,说不定可以得出一个“不用列存储索引”的结论呢。为了感觉记录下处理过程,在本系列中先缓一下分区的内容...原创 2020-02-29 13:16:53 · 653 阅读 · 0 评论 -
SQL Server On Linux(8)—— SQL Server On Linux安全性(1)——Active Directory Authentication
数据库及数据的安全在今时今日的重要性已经不用多说,那么作为成熟的数据库管理系统,SQL Server特别是SQL Server On Linux上对安全性又作出了什么的改进呢?接下来几篇将向大家介绍一下。在本篇中,主要介绍的是以AD授权方式登录Linux上的SQL Server。安全简介 下面先看个图,下图的右边是近8年来安全方面的统计,可以看到SQL Server远比其他产品低。左边是...原创 2019-01-24 11:57:26 · 1123 阅读 · 0 评论 -
SQL Server On Linux(3)——SQL Server 2019 For Linux 下载并部署示例数据库
接上文SQL Server On Linux(2)——SQL Server 2019 For Linux安装过程细节研究正所谓工欲善其事必先利其器,读者可能也跟作者一样很迫切希望了解和尝试SQL Server On Linux及SQL 2019的各种新特性,不过为了走得更远,并且少踩坑,作者还是建议先把路踏踏实实地铺好。当我们有一个可用的环境之后,不妨先把示例数据库准备好。 很多人应...原创 2018-10-10 15:34:17 · 4077 阅读 · 0 评论 -
SQL Server On Linux(4)——Linux 初步配置
文件目录内存调整(引出NUMA)原创 2018-10-18 14:40:41 · 2055 阅读 · 0 评论 -
SQL Server On Linux(1)——CentOS 7 安装SQL Server2019
前言SQL Server 2019已经正式公布,虽然只是preview版,但是不影响我们追求新的技术。接下来的一个系列,随着本人的研究,尽量让这个系列成为“教程”,真正的入门到精通。环境准备 不废话,先把研究环境搭建起来。由于某些原因(晚点再说),本系列首先使用CentOS 7作为操作系统。官方指引中支持的Linux平台及文件系统中并没有指出CentOS,但是作为与Red Hat同源的...原创 2018-09-29 16:40:17 · 10570 阅读 · 9 评论 -
SQL Server On Linux(2)——SQL Server 2019 For Linux安装过程细节研究
接上文SQL Server On Linux(1)——CentOS 7 安装SQL Server2019在安装过程中,作者发现了一些信息,这些信息引起了作者的兴趣,那么下面作者把自己研究的结果分享出来,如果读者对此有深入研究过,欢迎指正。...原创 2018-10-08 15:05:27 · 3350 阅读 · 1 评论 -
SQL Server新基数估量器
本系列属于 SQL Server性能优化案例分享 专题 当你使用SQL Server 2014及以上版本并且数据库的兼容级别为120或以上时,可能会有一个比较奇怪的现象,原本在SQL 2008/2012上运行正常的数据库,可能因为迁移到SQL Server 2014版本,在新环境突然变慢了。 一般来说,迁移/升级实例版本时,我们必不可少的工作有:备份、重建全库索引、全库更新统计信息。但...原创 2018-03-21 16:05:16 · 972 阅读 · 0 评论 -
管理SQL Server AlwaysOn(1)——基础维护
本文属于管理SQL Server AlwaysOn 系列文章 前言: 前面系列已经介绍了SQL Server AlwaysOn的知识点、安装演示及注意事项等。但是这并不是终点,更多的反而是起点。就像不能生了孩子就不管,你还得养(管理)。作为DBA,更原创 2017-03-06 22:43:20 · 9673 阅读 · 3 评论 -
管理SQL Server AlwaysOn(5)——常规监控(1)——常规监控
本文属于管理SQL Server AlwaysOn 系列文章前言: 前面几节提到了如何对AlwaysOn做常规管理,这一节和接下来的一节专门对“监控”进行解释和演示。管理和监控这两个词在很多时候是混淆的,但是我们大概也可以区分出来,比如我做备份原创 2017-03-14 16:31:31 · 10050 阅读 · 11 评论 -
SQL Server On Linux(5)——Linux上添加磁盘
接上文:[SQL Server On Linux]随着数据库的使用时间越来越久,空间问题越显突出。这个时候其中一个手段就是加空间。很多时候是通过加磁盘来实现。在很多规范化的企业里面,有专门的IT人员负责运维服务器,DBA通常只负责管理数据库。但是作为新时代的DBA,有必要了解DB以外的内容。那么下面来演示一下如何在Linux上添加磁盘以满足SQL Server的空间要求。 要添加磁盘,首...原创 2018-12-27 12:00:27 · 997 阅读 · 0 评论 -
SQL Server On Linux(18)—— SQL Server On Linux性能(4)——针对性能的配置(实例层面)
本人新书上市,请多多关照:《SQL Server On Linux运维实战 2017版从入门到精通》原创 2019-03-19 15:47:28 · 1096 阅读 · 0 评论 -
SQL Server On Linux(19)—— SQL Server On Linux性能(5)——针对性能的配置(数据库层面)
本人新书上市,请多多关照:《SQL Server On Linux运维实战 2017版从入门到精通》原创 2019-03-20 11:44:49 · 920 阅读 · 2 评论 -
SQL Server On Linux(16)—— SQL Server On Linux性能(2)——内置特性(2)——内存和Cache管理
本人新书上市,请多多关照:《SQL Server On Linux运维实战 2017版从入门到精通》原创 2019-03-06 11:19:41 · 836 阅读 · 0 评论 -
SQL Server On Linux(17)—— SQL Server On Linux性能(3)——内置特性(3)——I/O行为
本人新书上市,请多多关照:《SQL Server On Linux运维实战 2017版从入门到精通》原创 2019-03-11 15:12:22 · 973 阅读 · 0 评论 -
SQL Server On Linux(15)—— SQL Server On Linux性能(1)——内置特性(1)——内置扩展性
本人新书上市,请多多关照:《SQL Server On Linux运维实战 2017版从入门到精通》原创 2019-03-04 17:57:26 · 1001 阅读 · 0 评论 -
SQL Server On Linux(13)—— SQL Server On Linux安全性(6)——Data Classification and Auditing
pro sql server on linux p376原创 2019-02-22 16:41:37 · 883 阅读 · 0 评论 -
SQL Server On Linux(12)—— SQL Server On Linux安全性(5)———透明数据加密(TDE)
阿萨德原创 2019-02-19 11:29:04 · 861 阅读 · 0 评论 -
SQL Server On Linux(14)—— SQL Server On Linux安全性(7)——小结
https://www.databasejournal.com/features/mssql/data-encryption-using-always-encrypted-in-sql-server.htmlTDE to secure data at restEncryption based data security to secure cell level valuesDynamic D...原创 2019-03-01 15:25:26 · 649 阅读 · 0 评论 -
SQL Server On Linux(11)—— SQL Server On Linux安全性(4)——Always Encrypted
本人新书上市,请多多关照:《SQL Server On Linux运维实战 2017版从入门到精通》Always Encrypted,简称AE,官方翻译叫始终加密原创 2019-02-13 16:29:20 · 918 阅读 · 0 评论 -
SQL Server On Linux(10)—— SQL Server On Linux安全性(3)——Dynamic Data Masking
大家是否已经很熟悉快递单上的手机号中间几位打码的情况?虽然我不清楚别人用的是什么技术,但是在SQL Server 2016开始,使用Dynamic Data Masking(DDM,动态数据掩码)就可以实现这种效果,下面来演示一下。DDM 演示 为了保证环境不受影响,这次使用TempDB来演示。--创建测试数据USE tempdb;GOSELECT TOP (10) ID ...原创 2019-02-02 15:29:45 · 934 阅读 · 0 评论 -
SQL Server On Linux(7)—— SQL Server On Linux 安装及配置细节(2)
从版本而言,SQL Server On Linux提供了比Windows平台更便捷的更新版本方式,但是Linux上更加讲究CU和GDR这两个概念。同时这种便捷方式也适用于卸载和移除SQL Server工作中,接下来我们简单介绍一下。升级SQL Server 首先来看看SQL Server的升级,在Linux平台上,SQL Server很依赖于“存储库”(repository),基于这个存...原创 2019-01-14 14:38:02 · 825 阅读 · 0 评论 -
SQL Server On Linux(6)—— SQL Server On Linux 安装及配置细节(1)
asdfasdf原创 2019-01-14 11:02:21 · 1158 阅读 · 0 评论 -
SQL Server On Linux(9)—— SQL Server On Linux安全性(2)——Row Level Security
原创 2019-02-01 15:17:45 · 656 阅读 · 0 评论 -
理解性能的奥秘——应用程序中慢,SSMS中快(6)——SQL Server如何编译动态SQL
本文属于《理解性能的奥秘——应用程序中慢,SSMS中快》系列接上文:理解性能的奥秘——应用程序中慢,SSMS中快(5)——案例:如何应对参数嗅探翻译 2016-11-30 16:41:36 · 6506 阅读 · 1 评论 -
全废话SQL Server统计信息(1)——统计信息简介
为什么要写这个内容? 随着工作经历的积累,越来越感觉到,大量的关系型数据库的性能问题,其根源在于统计信息。这里说的是根源,其实很多时候大家觉得的那些什么索引失效等都只是表象。当然,不能一概而论,还有很多问题如配置问题、设计问题等等,甚至电源也会影响性能。 之所以得出这个结论,因为在常规的开发和部署过程中,一般企业级系统已经大量使用较为高级的磁盘阵列甚至企业级SSD,IO方面的问题已经很少,而且关系原创 2016-11-01 23:17:19 · 6887 阅读 · 0 评论 -
全废话SQL Server统计信息(2)——统计信息基础
我想在大地上画满窗子,让所有习惯黑暗的眼睛习惯光明——顾城《我是一个任性的孩子》 这一节主要介绍一些理论层面的东西,主要针对SQL Server,为后面的做铺垫,如果从实操层面考虑可以跳过,但是我强烈建议还是要找时间看一下这节。本节的内容如下:SQL Server统计信息列级统计信息统计信息与执行计划统计信息与内存分配开销预估模型SQL Server统计信息 说到统计信息,就一定要提到查询优化器,原创 2016-11-01 23:18:49 · 11564 阅读 · 8 评论 -
SQL Server专家的10个秘诀(翻译加注解)
当你点开这篇文章的时候,如果觉得没有读下去的必要,也希望你能拉到最后看看那几行字!原文出处:https://technet.microsoft.com/en-us/magazine/gg299551.aspx译者注: 本文主要以翻译为主,但由于工作经历,译者也有一些自己的看法和心得,并且不打算完全照搬直译,期间过滤了一些本人觉得无关紧要的信息,如果读者觉得看的别扭,可以看原文。 这篇文章可能已被广原创 2016-02-14 17:24:02 · 11595 阅读 · 14 评论 -
T-SQL动态查询(3)——静态SQL
接上文:T-SQL动态查询(2)——关键字查询 本文讲述关于静态SQL的一些知识和基础技巧。简介: 什么是静态SQL?静态SQL是和动态SQL相对而言的,其实我们没必要过于纠结精确定义,只要大概知道什么算静态SQL即可。当一个语句特别是存储过程,语句不需要动态生成或拼接,除了参数之外我们都知道语句的最终形态时,就可以认为这是静态SQL,简单来说,我们大部分的处理动态查询条件的语句都属于静态SQ原创 2015-11-26 16:01:48 · 6845 阅读 · 0 评论 -
T-SQL动态查询(4)——动态SQL
接上文:T-SQL动态查询(3)——静态SQL 前言: 前面说了很多关于动态查询的内容,本文将介绍使用动态SQL解决动态查询的一些方法。 为什么使用动态SQL: 在很多项目中,动态SQL被广泛使用甚至滥用,很多时候,动态SQL又确实是解决很多需求的首选方法。但是如果不合理地使用,会导致性能问题及无法维护。动态SQL尤其自己的优缺点,是否使用需要进行评估分析:动态SQL优点:动态SQL提供了强大的扩原创 2015-12-09 09:38:17 · 13245 阅读 · 2 评论 -
SQL Server 执行计划操作符详解(1)——断言(Assert)
前言: 很多很多地方对于语句的优化,一般比较靠谱的回复即使——把执行计划发出来看看。当然那些只看语句就说如何如何改代码,我一直都是拒绝的,因为这种算是纯蒙。根据本人经验,大量的性能问题单纯从语句来看很难发现瓶颈,同一个语句,由于环境的不同,差距非常大,所以比较合适的还是分析执行计划。 那么对于执行计划,一般使用图形化执行计划就差不多了,但是用过的人也有一些疑惑,里面的图标(称为操作符)并不非常原创 2015-12-11 14:38:43 · 12171 阅读 · 4 评论 -
SQL Server 执行计划操作符详解(3)——计算标量(Compute Scalar)
接上文:SQL Server 执行计划操作符详解(2)——串联(Concatenation )原创 2016-01-06 17:27:42 · 7040 阅读 · 2 评论 -
T-SQL动态查询(2)——关键字查询
接上文:T-SQL动态查询(1)——简介 前言: 在开发功能的过程中,我们常常会遇到类似以下情景:应用程序有一个查询功能,允许用户在很多查询条件中选择所需条件。这个也是本系列的关注点。 但是有时候你也许会发现,有些条件或多或少是互相排斥的。比如用户通过下面其中一个条件查找信息:1. 客户名2. 客户ID3. 客户身份标识号(如国内身份证、美国社保号等)。 并且这三列上都有适当的索引。本系列主原创 2015-11-19 16:39:43 · 5772 阅读 · 2 评论 -
T-SQL中的APPLY用法(半翻译)
本文接上文:T-SQL 中的CROSS JOIN用法(半翻译) 同样可用于微软认证70-461: Querying Microsoft SQL Server 2012考试的学习中。 ---------------------------------------------------------------------以下为译文-----------------------------------原创 2015-09-18 14:38:33 · 7165 阅读 · 0 评论 -
T-SQL 中的CROSS JOIN用法(半翻译)
今天来翻译一篇关于T-SQL的文章,本文可供微软认证70-461:QueryingMicrosoft SQL Server 2012的学习和练习之用。本文以翻译为主,引出个人工作中的一些思考,详见最后部分。 我会尽可能抽时间翻译本系列(见原文出处的相关链接,这是一系列的文章)的其他文章,除了回顾一些知识之外,重点是总结一下自己的所得。 -------------------------------原创 2015-09-15 13:09:07 · 7697 阅读 · 0 评论 -
第三篇——第二部分——第五文 配置SQL Server镜像——域环境SQL Server镜像日常维护
搭建镜像不维护将比不搭建还要危险,本文介绍关于这方面的一些基础知识,以起到抛砖引玉的作用。原创 2014-06-13 14:32:50 · 10217 阅读 · 0 评论 -
第三篇——第二部分——第一文 SQL Server镜像简介
原文出处: 镜像是什么?说白了就是个镜子(没用过镜子?没镜子你总要小便吧?开个玩笑),这里镜子的含义主要有两个:1、一模一样,下面会详细介绍,包括库名、数据文件和日志文件的存放路径都要一样。2、看得到,却“用不了”,镜像库在没有做任何处理时是不可访问的。原创 2014-05-26 12:02:45 · 17771 阅读 · 3 评论 -
为什么说数据库版本控制是必须的
前言 开发过程中的版本控制非常常见,但在数据库的世界来说,版本控制就是二等甚至三等公民了。当多人同时开发一个数据库管理和应用系统时,采用合理的方法监控数据库中表、存储过程和视图等对象的变动是非常重要的,每次更改数据库,都需要做详细的记录,稍不留神就出问题。我任职过的几家公司在开发流程中的版本控制做的非常到位,但数据库方面却是一片空白,在开发过程中,经常会涉及到表上增加列、修改列、修改存储过程和视图原创 2014-05-08 15:43:27 · 15496 阅读 · 3 评论 -
SQLServer 2008以上误操作数据库恢复方法——日志尾部备份
原文出处:http://blog.csdn.net/dba_huangzj/article/details/8491327问题: 经常看到有人误删数据,或者误操作,特别是update和delete的时候没有加where,然后就喊爹喊娘了。人非圣贤孰能无过,做错可以理解,但不能纵容,这个以后再说,现在先来解决问题。 遇到这种情况,一般都是没有做备份,不然也不会来发问了。原创 2013-01-10 20:48:44 · 166228 阅读 · 84 评论