代码改变世界

随笔分类 -  数据库技术(MS SQL)

The Windows account sa does not exist and cannot be provisioned as a SQL Server system administrator

2017-10-16 23:21 by 潇湘隐者, 2133 阅读, 收藏,
摘要: 今天遇到一个案例,在使用命令修改一个测试服务器(SQL Server 2014标准版)的服务器排序规则时,遇到了下面错误信息 (具体账号信息脱敏处理,随机生成一个账号密码) The Windows account sa does not exist and cannot be provisioned as a SQL Server system administrator c:\SQL... 阅读全文

三大关系数据库字段值超长的一个有趣对比

2017-10-02 09:23 by 潇湘隐者, 1280 阅读, 收藏,
摘要: 三大关系数据库字段值超长的一个有趣对比 在开发中,我们可能会遇到插入字段值超长的情况,前阵子遇到这样一个案例,结果一对比后发现一个有趣的现象,如果插入字段值超长,ORACLE、SQL Server、MySQL它们会提示那个字段值超长吗?下面看看实验吧: ORACLE数据库 SQL> create table test(id number(10), name varchar2(12))... 阅读全文

MS SQL作业Schedule的限制注意事项

2017-09-18 11:47 by 潇湘隐者, 1004 阅读, 收藏,
摘要: 最近遇到了一个关于MS SQL作业Schedule下有限制的特殊案例,有一个作业,用户要求执行的时间为:9:30,14:30,16:30, 19:00,于是我设置了两个Schedule,其中一个每隔5小时执行一次,时间范围为9:30~ 14:30.另外一个作业的Schedule为每隔150分钟执行,时间范围16:30 ~ 19:00, 结果设置后,用户反馈作业并没有在19:00执行,而是18... 阅读全文

YourSQLDba遭遇.NET Framework Error 6522

2017-09-14 17:09 by 潇湘隐者, 1302 阅读, 收藏,
摘要: 一工厂的SQL Server数据库服务器上的YourSQLDba_LogBackups作业做事务日志备份时,突然出现异常,异常的错误信息指向.NET Framework,出现这个问题时,一般我估计是该服务器自动应用了.NET Framework的一些补丁导致,因为以前也碰到过这类错误,于是去检查服务 阅读全文

SQL Server如何定位自定义标量函数被那个SQL调用次数最多浅析

2017-09-08 12:04 by 潇湘隐者, 1170 阅读, 收藏,
摘要: 前阵子遇到一个很是棘手的问题,监控系统DPA发现某个自定义标量函数被调用的次数非常高,高到一个离谱的程度。然后在Troubleshooting这个问题的时候,确实遇到了一些问题让我很是纠结,下文是解决问题过程的一点思索和尝试,如果你有更好的思路和解决方法,也请多多指教。 DPA可以监控到该函数每小时被调用的次数,如下截图所示: 那么第一个问题来了。 DPA如何监控获取这个函数每小时执... 阅读全文

批量修改所有服务器的dbmail配置

2017-08-29 11:33 by 潇湘隐者, 665 阅读, 收藏,
摘要: 最近遇到这样一个案例,需要修改所有SQL Server的Database Mail的SMTP,原来的SMTP为10.xxx.xxx.xxx, 现在需要修改为192.168.xxx.xxx, 另外需要规范邮件地址,以前这类邮件ServerName@yoursqldba.com的后缀需要修改为ServerName@xxxx.com(信息做了脱敏处理)。 如果使用SSMS客户端的UI界面去修改的话,... 阅读全文

Multiple Server Query Execution报The result set could not be merged..

2017-08-23 16:48 by 潇湘隐者, 695 阅读, 收藏,
摘要: 在SQL Server中使用Multiple Server Query Execution这个功能做数据库维护或脚本发布时非常方便,昨天由于磁盘空间原因,删除清理了大量的软件和组件,结果导致SSMS客户端出了问题,重装过后,使用Multiple Server Query Execution时,出现了 阅读全文

SQL Server中授予用户查看对象定义的权限

2017-08-07 14:28 by 潇湘隐者, 2232 阅读, 收藏,
摘要: SQL Server中授予用户查看对象定义的权限 在SQL Server中,有时候需要给一些登录名(用户)授予查看所有或部分对象(存储过程、函数、视图、表)的定义权限存。如果是部分存储过程、函数、视图授予查看定义的权限,那么就像下面脚本所示,比较繁琐: GRANT VIEW DEFINITION ON YOUR_PROCEDURE TO USERNAME; GRANT VIE... 阅读全文

The process could not read file xxx due to OS error 53

2017-08-02 08:53 by 潇湘隐者, 985 阅读, 收藏,
摘要: 在不同地域的两个SQL Server服务器上配置了复制(Replication)用于同步数据(生产环境配置有Replication,测试环境也配有Replication),两地通过专线连接起来,这些复制(Replication)已经稳定运行了一两年了, 但是前阵子,测试环境的SQL Server的Replication中突然遇到下面错误: Error messages: The... 阅读全文

SQL Server中如何定位Row Lock锁定哪一行数据

2017-08-01 15:36 by 潇湘隐者, 1962 阅读, 收藏,
摘要: 在SQL Server中有时候会使用提示(Hint)强制SQL使用行锁(Row Lock),前两天有个同事咨询了一个问题,如何定位Row Lock具体锁定了哪一行。其实这个问题只适合研究一下,实际意义并不大,因为找到、定位被锁定的行的代价开销较大,而意义却不怎么大,而且使用场景也很少。那么下面我们来探讨、研究一下这个问题吧: 在会话窗口(会话ID=65)下执行下面SQL语句,模拟SQL S... 阅读全文

SQL Server事务遭遇网络异常时的处理机制浅析

2017-07-27 17:03 by 潇湘隐者, 2709 阅读, 收藏,
摘要: SQL Server数据库中,如果应用程序正在执行一个事务的时候突然遭遇了网络异常,例如网络掉包,网络中断等,那么这个事务会怎么样? SQL Server数据库是通过什么机制来判断处理呢? 估计很多人跟我一样都有不少疑问, 我们下面构造一个测试实验来测试验证一下。如下所示: 步骤1:在客户端连使用S 阅读全文

MS SQL批量生成作业脚本方法介绍总结

2017-07-25 11:21 by 潇湘隐者, 2300 阅读, 收藏,
摘要: 在迁移或升级SQL Server数据库服务器时,很多场景下我们不能还原msdb,所以我们必须手工迁移SQL Server相关作业。如果手工生成每一个作业的脚本话,费时又费力,其实SQL Server中有好几种方法可以批量生成作业脚本的方法, 下面介绍一下。 1:SSMS客户端工具批量生成创建作业脚本 1:在SSMS—>SQL Server Agent下,单击Jobs。 2: 按快捷键F... 阅读全文

The Microsoft Distributed Transaction Coordinator (MS DTC) has cancelled the distributed transaction.

2017-07-07 11:56 by 潇湘隐者, 1416 阅读, 收藏,
摘要: 同事反馈一个系统在运行一个存储过程时遇到了下面错误: Msg 1206, Level 18, State 169, Procedure xxxxxx, Line 118The Microsoft Distributed Transaction Coordinator (MS DTC) has cancelled the distributed transaction. 费了九牛二虎之力才定位到... 阅读全文

用户 'XXX\SERVERNAME$' 登录失败。 原因: 找不到与提供的名称匹配的登录名。 [客户端: ]

2017-06-23 15:35 by 潇湘隐者, 3560 阅读, 收藏,
摘要: 一工厂的中控服务器遇到了下面Alert提示,'XXX\SERVERNAME$' XXX表示对应的域名, SERVERNAME$(脱敏处理,SERVERNAME为具体的服务器名称+$),而且如下所示,客户端是本机,研究了一下,才搞清楚具体原因. 日期/时间: 2017/6/20 12:24:51 说明: 用户 'XXX\SERVERNAME$' 登录失败。 原因: 找不到与提... 阅读全文

Troubleshooting SQL Server RESOURCE_SEMAPHORE Waittype Memory Issues

2017-06-23 09:08 by 潇湘隐者, 831 阅读, 收藏,
摘要: 前言: 本文是对博客https://www.mssqltips.com/sqlservertip/2827/troubleshooting-sql-server-resourcesemaphore-waittype-memory-issues/的翻译,本文基本直译,部分地方读起来有点不自然。 如有翻译不对或不好的地方,敬请指出,大家一起学习进步。尊重原创和翻译劳动成果,转载时请注明出处htt... 阅读全文

SQL Server Alert发送告警邮件少了的原因

2017-06-21 17:53 by 潇湘隐者, 1199 阅读, 收藏,
摘要: 最近突然发现我们部署在数据库上面的告警(Alert),当错误日志里面出现错误时,并不是每个错误日志都会发送邮件出来。如下所示,设置了告警“SQL Server Severity Event 14” USE [msdb] GO IF NOT EXISTS(SELECT 1 FROM msdb.dbo.syscategories WHERE NAME='DBA_MONITORING' AN... 阅读全文

SQL Server使用sys.master_files计算tempdb大小不正确

2017-06-13 16:36 by 潇湘隐者, 2827 阅读, 收藏,
摘要: 一直习惯使用sys.master_files来统计数据库的大小以及使用情况,但是发现sys.master_files不能准确统计tempdb的数据库大小信息。如下所示: SELECT database_id AS DataBaseId ,DB_NAME(database_id) ... 阅读全文

SQL Server中sys.syslogin中updatedate字段的浅析

2017-06-07 23:09 by 潇湘隐者, 2206 阅读, 收藏,
摘要: 在系统视图sys.syslogins中,有createdate与updatedate两个字段,分别表示创建登录名与更新登录名的日期,如果你用updatedate的值来判断一个登录名的权限是否被修改过,那么你就要跳坑里了。当然sys.sysusers视图里面updatedate字段也不能作为某个use 阅读全文

SQL Server中sp_spaceused统计数据使用的空间总量不正确的原因

2017-06-05 17:05 by 潇湘隐者, 3417 阅读, 收藏,
摘要: 很多时候,我们经常使用sp_spaceused来查看表的空间使用情况,上个月群里有个网友说他使用DELETE删除了数据后,使用sp_spaceused查看,发现该表的分配的空间总量(reserved)与数据使用的空间总量(data)没有变化,当时和他讨论了并分析了一下原因,随手记录了一下这个案例,这个周末刚好有点时间,正好分析整理一下这个案例、分享在这篇文章。如下所示,我们先构造数据,我们的测... 阅读全文

SQL Server中INNER JOIN与子查询IN的性能测试

2017-05-17 17:07 by 潇湘隐者, 18278 阅读, 收藏,
摘要: 这个月碰到几个人问我关于“SQL SERVER中INNER JOIN 与 IN两种写法的性能孰优孰劣?”这个问题。其实这个概括起来就是SQL Server中INNER JOIN与子查询孰优孰劣(IN是子查询的实现方式之一,本篇还是只对比INNER JOIN与子查询IN的性能,如果展开INNER JOIN与子查询性能对比,范围太大了,没法一一详述)。下面这篇文章,我们就INNER JOIN与子查询I... 阅读全文
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 19 下一页