摘要:
今天碰到了Intra-Query Parallel Thread Deadlocks 简单的说就是并发查询把自己给锁住了。原理: 在并发查询运行是,有一个生产者和一个消费者,生产者等待消费者产生数据,而消费者等待生产者处理完数据。本来是不应该出现死锁的情况的。出现死锁就是因为sql server 有bug,但是修补这个bug可能风险太高所以一直没有修补。实例: 贴上我今天抓到的intra-Query Parallel 死锁 ... 阅读全文
摘要:
今天碰到了Intra-Query Parallel Thread Deadlocks 简单的说就是并发查询把自己给锁住了。原理: 在并发查询运行是,有一个生产者和一个消费者,生产者等待消费者产生数据,而消费者等待生产者处理完数据。本来是不应该出现死锁的情况的。出现死锁就是因为sql server 有bug,但是修补这个bug可能风险太高所以一直没有修补。实例: 贴上我今天抓到的intra-Query Parallel 死锁 ... 阅读全文
摘要:
7.3Hardware Prefetching 《Speculative Execution in High Performance Computer Architectures》本节主要介绍硬件数据预取,数据预取分为2个端,处理器端和内存端,处理器端主要在主要在L1或者L2实现预取,内存端主要在内存控制器中实现。预取算法也有3种:顺序或者步长预取(Stride and Sequential Prefetching),关联性预取(Correlation Prefetching),内容关联性预取(Content-Based Prefetching)顺序或者步长预取(Stride and Sequ 阅读全文
摘要:
Performance Considerations of Data Types本文大意: 主要介绍数据类型的选择,选择尽量小的数据类型,减少表宽就以为这减少磁盘占用空间,以为这减少读入内存后占用的内存,就以为这减少不必要的cpu来读入数据,处理数据,char和varchar最佳实践小于5使用ch... 阅读全文
摘要:
设置填充因子和关注碎片的人应该不多,大家的处理方法都是类似每天重建或者重组没有人真正考虑过碎片问题,什么原因造成,会有什么影响,就算知道可以通过设置填充因子来搞,很多人都无从下手有的人不想全部索引都设置上指定的填充因子 只是想在内存中占用较大的浪费较多的设置上填充因子。今天从paul的blog上看到一个sql,感觉对设置填充因子帮助很大所以发这里和大家分享EXEC sp_MSforeachdb N'IF EXISTS (SELECT 1 FROM (SELECT DISTINCT DB_NAME ([database_id]) AS [name] FROM sys.dm_os_bu.. 阅读全文
摘要:
今天有人问我关于物理顺序和逻辑顺序的事情,就像到了这个话题页碎片:就是IAM页中叶子页的下一页和页头中该页的下一页不相同,那么就是碎片逻辑顺序:就是索引的叶子页中通过上一页下一页形成的顺序物理顺序:就是IAM中分配的顺序DROP TABLE dbo.t_indexgoCREATE TABLE t_index (id INT PRIMARY KEY ,VALUE CHAR(1000))GOINSERT INTO t_index VALUES(1,'1')INSERT INTO t_index VALUES(2,'2')INSERT INTO t_index VAL 阅读全文
摘要:
Wait statistics, or please tell me where it hurts本文大意: waits stats(waits and queues) 是sql server调优的一个重要环节。waits是sql server 跟踪的值,queue是线程等待的资源。当线程使用cp... 阅读全文
摘要:
第一,确定安装了office 2007的访问插件2007 Office System Driver: Data Connectivity Components注意要选对语言版本第二,sql server启动程序是否对文件有访问权限第三USE [master] GO EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1 GO EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB. 阅读全文
摘要:
分享大师的blog,并且把主要内容写出来,不敢翻译,以备看了之后忘记可以温习,也推广一下大师的博客Importance of choosing the right LOB storage technique本文大意: N/CHAR:当数据长度都是固定的比较好用,并且可以用来限制列的大小,避免太长而... 阅读全文
摘要:
Why does the buffer pool contain so many dirty tempdb pages?本文大意: 对于tempdb来说,还原模式为简单模式也只能是简单模式,不需要从故障中恢复,tempdb只会重建,所以tempdb没有必要做恢复,不需要自动checkpoin... 阅读全文
摘要:
You are here:Home>>Database Maintenance>>Comprehensive tempdb blog post seriesComprehensive tempdb blog post seriesBy:Paul RandalPosted on: January 16, 2009 9:24 amOver the last few weeks Sunil Agarwal (from the SQL Storage Engine team) hasposted a great series of blog articles about tem 阅读全文
摘要:
2年SQL Server DBA调优方面总结当2年dba 我觉得,有些东西需要和大家分享探讨,先书单。书单1.《深入解析SQL Server 2008 系列》 这个就是mssql 2005 的技术内幕系列。2012版的也出了有兴趣可以看看,技术内幕系列是我接触最早的书,里面内容涵盖量很大,但是都是点到为止。所以很多都是可以细细品味,回头再看的。2.《Troubleshooting SQL Server A Guide for the Accidental DBA》 这本书是我接触最早的关于性能调优的书。链接已经给出可以去下载,不过需要注册SQLServerCenter ,这个网站是SQL Se 阅读全文
摘要:
出处:http://blog.csdn.net/zhubc/article/details/7293376最近在学习Go语言,发现调用一些库函数失败后的返回字符串,都是一些乱码,觉得奇怪。所以写了一个最简单的程序来复现这个问题:func main(){ _, err := os.Open("none-exist-file") if err != nil{ fmt.Println(err) }}编译运行一切都正常,但是输出是乱码:open none-exist-file: 绯荤粺鎵句笉鍒版寚瀹氱殑鏂囦欢銆?原因就是Go语言以UTF-8编码进行输出,而Windows... 阅读全文
摘要:
问题: sql server 2005 之后 文件状态变为了7,DEFUNCT(僵死状态)问题原因: 一般都是因为一些不合法的操作引起的 如以下:CREATE DATABASE TestGOALTER DATABASE [Test] ADD FILEGROUP [TestFG]GOALTER DATABASE [Test] ADD FILE ( NAME = N'TestFile', FILENAME = N'C:\Program Files (x86)\Microsoft SQL Server\MSSQL10_50.SQL2008R2\MSSQL\DATA\TestF 阅读全文
摘要:
问题描述: sql server 2005 之后 删除数据库文件之后,在元数据里面在背景: 一般在完全恢复模式下才会出现这个问题解决方法: 备份日志 阅读全文
摘要:
问题描述: 因为业务上的需要所以要对某些用户赋予表创建权限,当然不能让他瞎建。 所以把他控制在自己的schema下。解决方法: grant create table to user grant control on schema::name to user 这样用户就有了schema 建表的权限了。 阅读全文
摘要:
写在前面.非常非常感谢 Superor 拿出自己的时间,为中国的Perl界做出了第一个中文视频教程,象别的语言都有很好的教程。Perl 的相比起来还是少.看视频,在入门时还是相当方便的,就象电影来看就好了。我基本 Superor老师每出一集我都看了。希望大家也认真看看。记的,学习时要多写,只能看明白,只有 5% 是你的,练习都做一做,就有 30% 是你的啦。其它的如果能根据教程,自己写出自己要的程序,才 80% 是你的.再次感谢 Superor 老师.更新到 46 集 Perl引用,Perl包和模块,类和对象,调试,Perl通过DBI访问数据库,用户界面更新到第十七章OLE 邮件处理模块 PO 阅读全文
摘要:
Clean Clean false 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE ... 阅读全文
摘要:
SQL Server 中存储过程,函数,触发器代码存放于sys.sql_modules对每个 SQL 语言定义的模块对象都返回一行。类型为 P、RF、V、TR、FN、IF、TF 和 R 的对象均有关联的 SQL 模块。在此视图中,独立的默认值,即 D 类型的对象也具有 SQL 模块定义。有关这些类型的说明,请参阅 sys.objects 目录视图中的类型列。列名数据类型说明object_idint包含对象的对象的 ID。在数据库中是唯一的。definitionnvarchar(max)用于定义此模块的 SQL 文本。NULL = 已加密。uses_ansi_nullsbit模块是使用 SET 阅读全文
摘要:
朋友的一个checksum计算列建立的索引:在数据库设计中需要一列标注网页的URL地址,LINK NVARCHAR(1000)。在INSERT的时候需要判断之前有无同样的URL地址记录被插入。也就是用select top 1 @ID=ID from Table where Link=@Link,然后判断@ID值是否大于0。如果数据量过大,需要给LINK加为索引,但是这时会发现SQL SERVER的索引对那么大的NVARCHR是无法建立的,限制在200字符以内。我在最早的时候解决这个问题是采用了对LINK进行MD5化,MD5的值只有几十个字符长,然后对MD5结果进行索引。但这样做性能其实一般,而 阅读全文
摘要:
From:http://blog.csdn.net/yangzhawen/article/details/820916718056客户端无法重新使用 SPID 为 %d 的会话,该会话已被重置用于连接池。失败 ID 为 %d。此错误可能是由于先前的操作失败引起的。请查看错误日志,找出在显示此错误消息之前刚发生的失败操作。2011-11-19 16:33:53.91 spid5495 The client was unable to reuse a session with SPID 5495, which had beenreset for connection pooling. The f. 阅读全文
摘要:
很多DBA对nonpage pool 和 paged pool 搞不太清楚干嘛用的,看perfmon中的说明也看得稀里糊涂。找到一个资料就翻译一下。From:http://blogs.technet.com/b/markrussinovich/archive/2009/03/26/3211216.aspxNonpaged Pool(非分页池)The kernel and device drivers use nonpaged pool to store data that might be accessed when the system can’t handle page faults. T 阅读全文
摘要:
CareSon 发表了一片博文http://www.cnblogs.com/CareySon/archive/2012/10/30/2745918.html其实我碰到过类似的事情,但是没有仔细研究为什么。借着CareSon的Demo,仔细的观察了执行计划。测试数据 当然第一步根据CareSon的Demo建立一份测试数据。 第二步为了做比较的需要,建一个非分区的非聚集索引,Key 和 分区对齐的非聚集索引一样。 第三步建议一个非分区表,数据和分区表一样,我在测试的时候叫Order2 第四步在Order2建3个索引,1 聚集索引非分区,2.非聚集索引分区,3非聚集索引非分区疑问 这样测试... 阅读全文
摘要:
运行了就知道怎么回事儿了。这个是一个简单的例子 里面还涉及到 如 对称密钥加密使用证书解密,没有涉及到。可以查看:OPEN SYMMETRIC KEY 命令关于 对称密钥加密使用证书解密 CREATEMASTERKEYENCRYPTIONBYPASSWORD='password'goCREATECERTIFICATECertTestwithSUBJECT='Test Certificate'GO--创建非对称密钥CREATEASYMMETRICKEYTestAsymmetricWITHALGORITHM=RSA_2048ENCRYPTIONBYPASSWORD= 阅读全文
摘要:
出处:http://www.cnblogs.com/fly_zj/archive/2010/07/07/1772818.html原文为Determining SET Options for a Current Session in SQL Server问题?对于每个连接到SQLSERVER上的会话(Session),用户能够设置SET选项来影响查询的结果和SQLSERVER潜在的行为,有些选项能通过GUI来设置,有些需要通过SET 命令来设置,使用GUI非常方便知道某个设置开启与否,但是怎样获取当前会话的所有选项设置呢?解决方案SQLSERVER 提供许多内建的元数据函数,其中一个是@@OPT 阅读全文
摘要:
Open theregistry(regedit) on the local machine.Go toHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\PerflibRight click on Perflib and select PermissionAdd LOCAL SERVICE with Full ControlRestart the Remote Registry Service (services.msc) 阅读全文
|