usp_GetAccessPattern
.TRC文件经过RML的ReadTrace解析,生成一些表,usp_GetAccessPattern可以分析这些表,得到性能瓶颈。CREATE PROCEDURE usp_GetAccessPattern@duration_filter INT = -1 --传入的参数,可以按照语句执行的时间过滤统...
SQL Server容量规划中使用的计数器
SQL Server容量规划中使用的计数器使用SQL Server容量规划中的计数器计数器 说明Processor:%Processor Time 平均低于75%(低于50%更佳)。System:Processor Queue Length 每个处理器平均低于2.例如,在一个双处理...
更改系统数据库的排序规则
select * from sys.databasesopen cmd, locate C:Program FilesMicrosoft SQL Server100Setup BootstrapReleaserun:Windows Authentication Mode:Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=MSSQLSERVER /...
移动sql server 2008 master 数据库
若要移动 master 数据库,请按下列步骤进行操作。若要移动 master 数据库,请按下列步骤进行操作。1.在“开始”菜单中,依次指向“所有程序”、Microsoft SQL Server 和“配置工具”,再单击 SQL Server 配置管理器...
SQL SERVER十大最佳存储实践
要想让 SQL Server 系统的性能和运行达到最佳,关键在于适当配置 IO 子系统。以下是 SQL Server 小组推荐的一些最常用、最好的 SQL Server 存储配置方法。http://sqlcat.com/whitepapers_chinese-simplified/archive...
批量置Job为无效
使用系统存储过程EXEC dbo.sp_update_job[@more@]EXEC dbo.sp_update_job @job_name = N'NightlyBackups', @new_name = N'NightlyBackups -- Disabled', @description = N'Nightly backups disabled during server migration.', @enabled = 0 select name, enabled, 'EXEC dbo.sp_update_job @job_name = N''' + name + ''', @enabled = 0' from msdb.dbo.sysjobswhere name not in('')
Load 1TB in less than 1 hour
OVERVIEWThis project was done using SQL Server 2005 Enterprise Edition (with SP1 beta) using the BULK INSERT command with 60 parallel input files, each of approximately 16.67 GB. The best time I got was 50 minutes. Hewlett Packard was kind enough to loan me some time one night on the machine they use to do the TPC-C tests. It is an Itanium2 Superdome with 64 1.6GHZ 9M (Madison) CPUs. For the insert tests the system was equipped with 256GB of RAM. The HP SAN configuration is rated at 14GB pe
Integration Services 高性能策略
本文描述了如何成功的运用性能提高策略来对Microsoft® SQL Server™ 2005 Integration Services(SSIS)的数据整合方案进行优化。[@more@]简介性能是数据集成解决方案里关乎成败的重要因素。性能不仅决定了是否能够有效的满足当前的数据集成需求,而且影响了解决方案的可扩展性,以及对未来商业需求变化的适应能力。例如,性能问题可以增加数据容量,减少批处理窗口,扩展数据复杂性,形成数据的质量标准。 尽管性能问题在每个项目中都扮演着至关重要的角色,讽刺的是,人们最容易忽视它,往往把它放在开发周期的最后环节才加以考虑
SSIS工程师为您揭秘数据流
我上个月有幸参加了在西雅图召开的PASS(Professional Association for SQL Server)峰会。我的同事Matt Masson做了个关于SQL Server 数据集成服务(Integration Services,SSIS)的讲座(下载),现场非常火爆,讲完后他被听众围住了个把小时。他的题目是Maximize Your SSIS Investment with Tuning Tricks and Tips,主要关于提升数据集成包(package)的性能。 他讲了四部分,其中第二部分深入浅出地介绍了SSIS数据流(Data flow)。我估计我国的用户会特别感兴趣这一块,因此在这里分享给你 :-)[@more@]数据流一瞥SSIS的引擎(engine)
使用聚集索引和非聚集索引的区别
使用聚集索引和非聚集索引的区别使用情景注意事项性能对比[@more@]使用聚集索引 聚集索引确定表中数据的物理顺序。聚集索引类似于电话簿。由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。但该索引可以包含多个列(组合索引),就像电话簿按姓氏和名字进行组织一样。聚集索引对于那些经常要搜索范围值的列特别有效。使用聚集索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理相邻。避免每次查询该列时都进行排序,从而节省成本。注意事项定义聚集索引键时使用的列越少越好。• 包含大
4步追踪导致事务日志膨胀的SQL命令
4步追踪导致事务日志膨胀的SQL命令[@more@]-- 1. create LogSize and BufferSQL tablecreate table LogSize(ID int identity(1, 1),DatabaseName varchar(100),LogSize decimal(9, 2),LogSpaceUsed decimal(9, 2),Status tinyint,Date datetime DEFAULT (getdate()))create table BufferSQL(ID int,EventType varchar(50),Parameters varchar(100),EventInfo varchar(150),Date datetime DEFAULT (getdate()))-- 2. create sp_GetBufferSQL procedurealter PROCEDURE sp_GetBufferSQL(@ID int)ASBEGINdeclare @spid int,@intCountProperti
SQL Server数据库管理常用SQL和T-SQL语句
SQL Server数据库管理常用SQL和T-SQL语句[@more@]1. 查看数据库的版本select @@version2.查看数据库所在机器操作系统参数exec master..xp_msver3. 查看数据库启动的参数sp_configure4.查看数据库启动时间select convert(varchar(30),login_time,120) from master..sysprocesses where spid=1查看数据库服务器名和实例名print ''Server Name...............: '' + convert(varchar(30),@@SERVERNAME)print ''Instance..................: '' + convert(varchar(30),@@SERVICENAME)5. 查看所有数据库名称及大小sp_helpdb重命名数据库用的SQL
减少SQL Server死锁的方法
锁是指在某组资源中,两个或两个以上的线程在执行过程中,在争夺某一资源时而造成互相等待的现象,若无外力的作用下,它们都将无法推进下去,死时就可能会产生死锁,这些永远在互相等待的进程称为死锁线程。简单的说,进程A等待进程B释放他的资源,B又等待A释放他的资源,这样互相等待就形成死锁。 [@more@]锁是指在某组资源中,两个或两个以上的线程在执行过程中,在争夺某一资源时而造成互相等待的现象,若无外力的作用下,它们都将无法推进下去,死时就可能会产生死锁,这些永远在互相等待的进程称为死锁线程。简单的说,进程A等待进程B释放
SQL Server 优化汇总
SQL Server 优化汇总[@more@]如何加快查询速度? 1、升级硬件 2、根据查询条件,建立索引,优化索引、优化访问方式,限制结果集的数据量。 3、扩大服务器的内存 4、增加服务器CPU个数 5、对于大的数据库不要设置数据库自动增长,它会降低服务器的性能 6、在查询Select语句中用Where字句限制返回的行数,避免表扫描,如果返回不必要的数据,浪费了服务器的I/O资源,加重了网络的负担降低性能。如果表很大,在表扫描的期间将表锁住,禁止其他的联接访问表,后果严重。 7、查询时不要返回不需要的行、列 8、用select top 100 / 10
SQL 事务日志填满的原因
SQL Server 事务日志可能会处于填满状态,这将阻止在数据库中继续进行 UPDATE、DELETE 或 INSERT 活动,包括 CHECKPOINT。通常为错误 1105: Can't allocate space for object syslogs in database dbname because the logsegment is full. If you ran out of space in syslogs, dump the transaction log. Otherwise use ALTER DATABASE or sp_extendsegment to increase the size of the segment. [@more@]SQL Server 事务日志可能会处于填满状态,这将阻止在数据库中继续进行 UPDATE、DELETE 或 INSERT 活动,包括 CHECKPOINT。通常为错
MS SQL Server 事务日志介绍
交易日志,或称事务日志(Transaction logs)是数据库结构中非常重要但又经常被忽略的部分。由于它并不像数据库中的schema那样活跃,因此很少有人关注交易日志。[@more@]交易日志,或称事务日志(Transaction logs)是数据库结构中非常重要但又经常被忽略的部分。由于它并不像数据库中的schema那样活跃,因此很少有人关注交易日志。 交易日志是针对数据库改变所做的记录,它可以记录针对数据库的任何操作,并将记录结果保存在独立的文件中。对于任何每一个交易过程,交易日志都有非常全面的记录,根据这些记录可以将数据文件恢复成交易前
DBA在企业可持续发展中的价值
在当今竞争激烈的市场环境下,成本控制毫无疑问是各个企业提升竞争力非常重要的一个部分,由于众多竞争对手会提供同质化产品和服务,企业必须从控制内部成本做起,做为企业内部开销相对比较大的IT部门,应该首当其冲最大化得挖掘系统的潜力。DBA要引进新方法,新思路,扩展自己的视野,不仅仅局限在数据库维护本身。总的来说,DBA能为这个目标做的事情基本上可以分为系统优化,应用优化,流程优化三个方面。[@more@]首先谈到系统优化,这是大部分dba都要接触到的工作。企业定出一个商业目标,IT主管需要把这个商业目标转换成系统的承载能力
导入xml文件到SQL Server 2005
SQLServer2005分解并导入xml文件[@more@]1. 一次性导入:DECLARE @idoc int;DECLARE @doc xml;SELECT @doc=BulkColumn FROM OPENROWSET(BULK N'E:MStarIndustryCodes.xml', SINGLE_BLOB) AS xEXEC sp_xml_preparedocument @idoc OUTPUT, @docSELECT * into tmp_tab FROM OPENXML (@idoc, '/Root/Record'/',2)WITH (IndustryCode varchar(10),IndustryGlobalId varchar(10),IndustryName varchar(100),SectorCode varchar(10),SectorGlobalId varchar(10),SectorName varchar(100),SuperSectorCode varchar(10),SuperSectorName varchar(10
Understanding How to Set the SQL Server I/O Affinity Option
for MS SQL 2000.http://support.microsoft.com/kb/298402/en-us/[@more@]
SQLServer乐观锁定和悲观锁定实例
本文使用一个实例来说明如何使用乐观锁定和悲观锁定来解决多用户并发的环境里,其他用户已经把你要修改的数据进行了修改而造成数据的不一致的问题。本文来自: 编程入门网 http://www.bianceng.cn/data/SQLServer/jc/200712/6263.htm[@more@]在实际的多用户并发访问的生产环境里边,我们经常要尽可能的保持数据的一致性。而其中最典型的例子就是我们从表里边读取数据,检查验证后对数据进行修改,然后写回到数据库中。在读取和写入的过程中,如果在多用户并发的环境里边,其他用户已经把你要修改的数据进行了修改是非常有可能发生的情况,这