04 2012 档案

摘要:alter proc test @sourcetablename varchar(30), @targettablename varchar(200), @id varchar(8)as declare @cols varchar(max);declare @cols1 varchar(max);declare @cols2 varchar(max);with cols as ( select columns.name,'s.'+columns.name name1, 'd.'+columns.name+'='+'s.'+colu 阅读全文
posted @ 2012-04-27 11:42 qanholas 阅读(311) 评论(0) 推荐(0) 编辑
摘要:症状如果同时满足以下两个条件,Microsoft Search 服务 (MSSearch) 可能无法启动,或可能导致 CPU 使用率达到 100%: 从 SQL S...如果同时满足以下两个条件,Microsoft Search 服务 (MSSearch) 可能无法启动,或可能导致 CPU 使用率达到 100%:从 SQL Server 2000 删除了 BUILTIN\Administrators 帐户。Microsoft Search 服务配置为在本地系统帐户以外的帐户下启动。原因不支持 Microsoft Search 服务在本地系统帐户以外的帐户下运行。不支持 Microsoft Se 阅读全文
posted @ 2012-04-26 21:50 qanholas 阅读(528) 评论(0) 推荐(0) 编辑
摘要:本来是自动的,修改为这个之后很快,跟本地执行很接近 阅读全文
posted @ 2012-04-25 10:54 qanholas 阅读(707) 评论(0) 推荐(0) 编辑
摘要:alter function fn_GetColumns ( @TableName varchar(max) )returns varchar(max)as begin declare @cols varchar(max); with cols as ( select columns.name from sys.columns join sys.objects on sys.columns.object_id = sys.objects.object_id and objects.name = @TableName ... 阅读全文
posted @ 2012-04-21 21:33 qanholas 阅读(219) 评论(0) 推荐(0) 编辑
摘要:--Descript:利用CHECKSUM建立索引USE tempdb ;GO--DROP TABLE dbo.TCREATE TABLE dbo.T ( ID INT PRIMARY KEY IDENTITY(1, 1) , [Name] NVARCHAR(MAX) ) ;--这里我偷懒一下,自己注意在IDE中,关闭,不要插入太多了.哈WHILE 1 = 1 INSERT INTO dbo.T SELECT CAST(NEWID() AS NVARCHAR(36)) SELECT *FROM dbo.T--表 'T'。扫描计数 1,逻辑读取 5059 次,物理读取 0 次,预 阅读全文
posted @ 2012-04-21 11:31 qanholas 阅读(894) 评论(0) 推荐(0) 编辑
摘要:优化SQL Server 2000的设置 SQL Server已经为了优化自己的性能而进行了良好的配置,比今天市场其他的关系型数据库都要好得多。然而,你仍然有几项设置需要进行修改,以便你的数据库每分钟可以处理更多的事务(TPM)。本篇文章的目的就是讨论这些设置。我们忽略那些可以通过硬件配置或者表或者索引设计提高的性能,因为这些内容在本篇文章范围之外。 破碎页面检测 在我们开始讨论服务器配置开关之前,让我们快速浏览一下你的模型数据库??或者说用作构建新的数据库的基础的模板。默认情况下,你可以在数据库中创建存储过程、函数等类似的东西,随后他们将会被加入新创建的数据库中。 要优化性能,你也许... 阅读全文
posted @ 2012-04-21 10:49 qanholas 阅读(2257) 评论(0) 推荐(0) 编辑
摘要:如何提高性能SELECT TOP n * FROM [tablename] ORDER BY NEWID()想从数据库随机获得一条记录在网上查了一下全都是这个方法但性能太差 千万级的表要20秒以上如何提高性能SELECT TOP 1 * FROM [tablename] ORDER BY NEWID()SELECT * FROM [tablename] where id=(select count(*)+1 from tablename)*rand()如果id连续,这个就是最快的方法。SELECT top 1 * FROM [tablename] where id>=(select ma 阅读全文
posted @ 2012-04-21 10:47 qanholas 阅读(5146) 评论(0) 推荐(0) 编辑
摘要:今天接到一用户问题,ArcSDE for SQL Server 数据库,利用ArcGIS桌面创建数据集时,提示如下错误:其实这个错误已经非常明显的告诉了用户,查询的开销比数据库默认设置的小才造成的该错误“查询开销”是指在特定硬件配置中完成查询所需的估计占用时间(秒)那么数据库哪个参数与“查询开销”有关呢?MSSQLSERVER_8649详细信息产品名称SQL Server产品版本10.50产品内部版本号10.50.0000.00事件 ID8649事件源MSSQLSERVER组件SQLEngine符号名称COST_TOO_HIGH消息正文查询已取消,因为此查询的估计开销 (%d) 出了配置的阈值 阅读全文
posted @ 2012-04-19 15:02 qanholas 阅读(3968) 评论(0) 推荐(1) 编辑
摘要:SELECT [Car] , DeviceNo , MIN([StateTime]) [StateTime] , MAX([EndTime]) [EndTime] , CAST(( DATEDIFF(SS, MIN([StateTime]), MAX([EndTime])) / 3600 ) AS VARCHAR(12)) + ':' + CAST(( ( DATEDIFF(SS, MIN([StateTime]), MAX([EndTime])) - ( DATEDIFF(SS, MIN([StateTime]), MAX([EndTime])) / 3600 ) * 360 阅读全文
posted @ 2012-04-18 11:58 qanholas 阅读(696) 评论(0) 推荐(0) 编辑
摘要:UPDATE msdb.dbo.sysschedulesSET freq_subday_interval = 1 , date_modified = GETDATE() , version_number = version_number + 1WHERE ( schedule_id = 64 ) 阅读全文
posted @ 2012-04-16 14:07 qanholas 阅读(362) 评论(0) 推荐(0) 编辑
摘要:很多做架构设计、程序开发、运维、技术管理的朋友可能或多或少有这样的困惑:SQLServer到底支持多少连接数的并发?SQLServer是否可以满足现有的应用吗?现有的技术架构支持多少连接数的并发?在硬件性能与网络性能足够理想的情况下理论上可以支持多少并发连接?生产环境中的数据库现在的并发量是多少?如何监控现有数据库并发的数量?生产环境中的并发量距离理论上的最大并量发还差多少?为此,我专门写程序做了下测试,利用循环不断的打开连接并保持连接打开不关闭,测试代码如下:1usingSystem; 2usingSystem.Collections.Generic; 3 4namespaceSQLServ 阅读全文
posted @ 2012-04-15 16:37 qanholas 阅读(691) 评论(0) 推荐(0) 编辑
摘要:SQL Server 阻止了对组件 'Agent XPs' 的 过程 'dbo.sp_set_sqlagent_properties' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Agent XPs'。有关启用 'Agent XPs' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。 (.Net SqlClient Data Provider)sp_configure 'show advanced opt 阅读全文
posted @ 2012-04-13 17:28 qanholas 阅读(5028) 评论(0) 推荐(0) 编辑
摘要:USE 出问题的库名; EXEC sp_changedbowner '数据库系统管理员'; 阅读全文
posted @ 2012-04-13 12:35 qanholas 阅读(1727) 评论(0) 推荐(0) 编辑
摘要:错误提示(配置发布和禁用复制功能时提示 分发服务器未正确安装。):1、无法为本地服务器找到分发服务器或分发数据库。可能未安装分发服务器,也可能在分发服务器上未将本地服务器配置为发布服务器。2、SQL Server 无法禁用“xxxx”上的发布和分发。------------------------------其他信息:执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)------------------------------分发服务器未正确安装,所以无法使数据库不可发布。问题原因: 服务器换过主机,所以此时机器 阅读全文
posted @ 2012-04-13 11:23 qanholas 阅读(3335) 评论(0) 推荐(0) 编辑
摘要:USE master EXEC sp_removedbreplication ’数据库名称’ GO运行即可sp_removedbreplication该存储过程在发布服务器的发布数据库中或在订阅服务器的订阅数据库中执行。该过程将从执行它的数据库中删除所有复制对象,但它不会从其他数据库(例如,分发数据库)中删除对象。注意: 只有当其他删除复制对象的方法都失败后,才应当使用此过程。有关这些方法的详细信息,请参阅删除复制。Transact-SQL 语法约定语法sp_removedbreplication [ [ @dbname = ] ‘dbname’ ] [ , [ @type = ] type 阅读全文
posted @ 2012-04-12 17:24 qanholas 阅读(4090) 评论(0) 推荐(0) 编辑
摘要:講到 SQL Server 2008 效能調校,這可是一門大大的學問,但是若能掌握一些基本的 SQL Server 資料庫運作原理,要能成為 SQL Server 效能調校的專家其實並不困難。我們都知道學習這些原理並不難,看書就會了,難的是如何才能在實務管理工作上真正的融會貫通、靈活運用這些已知的知識,再搭 配一些方便的工具幫你快速取得所要的重要資訊,進而做出效能調校的判斷與改善現有資料庫的效能問題。今天我打算來分享一個分析索引使用量統計的技巧,來改 善資料庫「寫入」效率的問題。一般來說,我們在做資料庫效能調校時,都會想調整「讀取」資料的效能,也就是建立「非叢集索引」來縮短篩選與取得資料的時間 阅读全文
posted @ 2012-04-12 09:46 qanholas 阅读(1245) 评论(0) 推荐(0) 编辑
摘要:微軟在 SQL Server 2005 Service Pack 2 推出的時候也釋出了一套免費的 Performance Dashboard Reports 自訂報表,透過此報表可以很輕易的分析出整台 SQL Server 的執行效能,是一個非常非常實用的效能分析工具,幾乎是每位 DBA 必備的工具之一,可惜的是到了 SQL Server 2008 之後就不再更新,以致於無法正常安裝到 SQL Server 2008 之後的版本,本文章將說明正確的安裝步驟,讓此報表也能夠在 SQL Server 2008 上正確執行。在我們下載完 SQL Server 2005 Performance Da 阅读全文
posted @ 2012-04-12 09:23 qanholas 阅读(661) 评论(1) 推荐(0) 编辑
摘要:前言我看过不少对Bit字段能否建立索引,以及建立索引后性能如何的讨论,还有朋友建议用Tinyint代替Bit,我在这里深入研究一下:研究方法:一、建立六张表,具体说明见SQL语句中的注释部分:建表Sql语句Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->CREATEDATABASEIndexTestGOUSEIndexTestGO--bit无索引,0、1相等CREATETABLEdbo.TestBitNoIndex(TestIDINTNOTN 阅读全文
posted @ 2012-04-09 21:48 qanholas 阅读(1038) 评论(0) 推荐(1) 编辑
摘要:Now, the question is, do you really WANT an index on a BIT column? We're going to run some experiments, but in general, it is highly unlikely that you will get much use out of such an index. The exception is when the data is heavily weighted towards, say, 1 (e.g. 95-99% of the table), and you ar 阅读全文
posted @ 2012-04-09 21:14 qanholas 阅读(1201) 评论(0) 推荐(0) 编辑
摘要:SELECT TOP 100 [Total Cost] = ROUND(avg_total_user_cost * avg_user_impact * ( user_seeks + user_scans ), 0) , user_seeks , user_scans , avg_total_user_cost , avg_user_impact , TableName = statement , [EqualityUsage] = equality_columns , [InequalityUsage] = inequality_columns , [Include Cloumns] = .. 阅读全文
posted @ 2012-04-09 14:36 qanholas 阅读(689) 评论(0) 推荐(0) 编辑
摘要:DROP TABLE test1GODROP TABLE test2GOCREATE TABLE test1 (col1 INT, col2 INT)GOCREATE TABLE test2 (col3 INT, col4 INT)GOINSERT INTO test1 VALUES(1,1)INSERT INTO test1 VALUES(2,2)INSERT INTO test1 VALUES(3,3)INSERT INTO test1 VALUES(4,4)INSERT INTO test1 VALUES(5,5)INSERT INTO test2 VALUES(1,1)INSERT I 阅读全文
posted @ 2012-04-08 14:45 qanholas 阅读(174) 评论(0) 推荐(0) 编辑
摘要:原表无压缩原行压缩原页压缩分区表页压缩分区表行压缩分区视图页压缩分区视图行压缩1802883758224955595258479789328701841987178831834380058689384478865810580508540824377594846098449351906682178590801558239853783198132875979397933681488631785985968505810285907816179288910791686528319794888569830486887789786978888000981778241887581048006... 阅读全文
posted @ 2012-04-05 15:22 qanholas 阅读(271) 评论(0) 推荐(1) 编辑
摘要:简介 数据库快照,正如其名称所示那样,是数据库在某一时间点的视图。是SQL Server在2005之后的版本引入的特性。快照的应用场景比较多,但快照设计最开始的目的是为了报表服务。比如我需要出2011的资产负债表,这需要 数据保持在2011年12月31日零点时的状态,则利用快照可以实现这一点。快照还可以和镜像结合来达到读写分离的目的。下面我们来看什么是快照。什么是快照 数据库快照是 SQL Server 数据库(源数据库)的只读静态视图。换句话说,快照可以理解为一个只读的数据库。利用快照,可以提供如下好处: 提供了一个静态的视图来为报表提供服务 可以利用数据库快照来恢复数据库,相比备份恢复来说 阅读全文
posted @ 2012-04-05 08:55 qanholas 阅读(836) 评论(2) 推荐(2) 编辑
摘要:创建分区表定义了分区函数(逻辑结构)和分区架构(物理结构)后,既可以创建分区表来利用它们。分区表定义应使用的分区架构,而分区架构又定义其使用的分区函数。要将这三者结合起来,必须指定应用于分区函数的列 。范围分区始终只映射到表中的一列。CREATETABLE 语法如下:CREATETABLE[ database_name . [ schema_name ] . | schema_name . ] table_name( { <column_definition>|<computed_column_definition> }[ <table_constraint> 阅读全文
posted @ 2012-04-01 16:56 qanholas 阅读(4204) 评论(0) 推荐(1) 编辑
摘要:--=========================================-- 转换为分区表--=========================================-- 1. 创建分区函数-- a. 适用于存储历史存档记录的分区表的分区函数DECLARE @dt datetimeSET @dt = '20020101'CREATE PARTITION FUNCTION PF_HistoryArchive(datetime)AS RANGE RIGHTFOR VALUES(@dt,DATEADD(Year, 1, @dt))-- b. 适用于存储历史记录 阅读全文
posted @ 2012-04-01 14:57 qanholas 阅读(437) 评论(0) 推荐(1) 编辑
摘要:--所有请求情况:SELECT s.session_id , s.status , DB_NAME(r.database_id) AS database_name , s.login_name , s.login_time , s.host_name , c.client_net_address , c.client_tcp_port , s.program_name , r.cpu_time , r.reads , r.writes , c.num_reads , c.num_writes , s.client_interface_name , s.last_request_start_ti 阅读全文
posted @ 2012-04-01 10:14 qanholas 阅读(210) 评论(0) 推荐(0) 编辑
摘要:SELECT OBJECT_NAME(object_id, database_id) 存储过程名 , d.cached_time 编译时间 , d.last_execution_time 最近一次执行时间ms , d.total_elapsed_time / 1000 总花费时间ms , d.total_elapsed_time / d.execution_count * 1000 AS 平均执行时间ms , d.last_elapsed_time 最近一次执行花费时间ms , d.execution_count 执行次数FROM sys.dm_exec_procedure_stats AS 阅读全文
posted @ 2012-04-01 10:00 qanholas 阅读(419) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示