suther
宁静以致远
摘要: 数据库系统异常是DBA经常要面临的情景,一名有一定从业经验的DBA,都会有自己一套故障排查的方法和步骤,此文为为大家介绍一下通过系统性能视图(SQLServer05以上版本)来排查系统异常的基本方法,希望能对大家有所帮助。这里分两部分来介绍:一. 从数据库连接情况来判断异常:1. 首先我们来看一下目前数据库系统所有请求情况: 1 --request info 2 select s.session_id, s.status,db_name(r.database_id) as database_name, 3 s.login_name,s.login_time, s.host_name, 4 c. 阅读全文
posted @ 2012-10-12 14:37 suther 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 我们经常在迁移数据库时,需要将登录账号,用户和用户对应的角色也迁移过去,以下脚本就是迁移SQLServer数据库用户以及用户对应的角色的脚本;将在Message里面生成对应的脚本。 1 SET NOCOUNT ON 2 GO 3 if exists( SELECT 4 * 5 FROM tempdb.dbo.sysobjects 6 WHERE 7 xtype='U' and name='userrole' 8 9 ) 10 begin 11 drop table tempdb.dbo.userrole 12 CREATE TABLE tempdb.dbo.us 阅读全文
posted @ 2012-10-12 11:46 suther 阅读(307) 评论(0) 推荐(0) 编辑
摘要: --1. 打开配置管理工具(SQL Server Configuration Manager);--2. 停止您想要恢复的SQL Server实例;--3. 找到“高级”标签,“启动参数”选项文本框中增加“;–m”--4. 点击“是”按钮,然后重新启动SQL Server实例/*请注意:请确保在“;”和“-m”之间没有空格。注册参数解析器对类似的输入错误非常敏感。您可以在SQL Server的ERRORLOG文件内看到显示“SQL Server started in single-user mode.”*/--5. 在SQL Server实例以单用户模式启动后,Windows管理员帐号就能使用 阅读全文
posted @ 2012-09-24 16:46 suther 阅读(556) 评论(0) 推荐(0) 编辑
摘要: SELECT TOP 1000000 IDENTITY(INT,0,1) AS idx INTO dbo.t_Numbers FROM master.sys.all_columns c1 CROSS JOIN master.sys.all_columns c2-- 利用row_number更加快速地创建和填充数字表;100万数字表1s内就生成好了drop table t_NumbersSELECT TOP 1000000 ROW_NUMBER() over (order by c1.object_id) AS N INTO dbo.t_Numbers FROM ... 阅读全文
posted @ 2012-09-21 11:34 suther 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 此文章主要向大家描述的是SQL Server 2008高可用性的实际解决方案以及对其优劣的分析,在SQL Server 2008数据库中,其本身就具有很多的SQL Server 2008数据库的高可用性解决方案。 如可以采用故障转移群集、数据库镜像、日志传送或者复制等手段来提高数据库的高可用性。由于解决方案多了,数据库管理员不得不掌握各个解决方案的优 在SQL Server 2008数据库中,本身就带有不少的高可用性解决方案。如可以采用故障转移群集、数据库镜像、日志传送或者复制等手段来提高数据库的SQL Server 2008高可用性。由于解决方案多了,数据库管理员不得不掌握各个解决方... 阅读全文
posted @ 2012-09-21 10:37 suther 阅读(579) 评论(0) 推荐(0) 编辑
摘要: 概述Microsoft SQL Server 2008 提供了不断扩展的数据库,其中包含了优化性能、向上扩展个别服务器及向外扩展极大型数据库所需的工具和功能。重大的新功能使用资源调控器 (Resource Governor)取得资源分配的控制权使用 Performance Studio 针对企业中的 SQL Server 2008 实例进行故障排除、微调和监视在 SQL Server Analysis Services 中使用扩展性和性能增强功能来建立高性能的分析解决方案使用 SQL Server Reporting Services 中重新经过工程处理的报表引擎,充分利用其即时的报表处理和更 阅读全文
posted @ 2012-09-21 10:31 suther 阅读(873) 评论(0) 推荐(0) 编辑
摘要: 查看复制监视器/dbo.MSrepl_errors遇到如下错误:尝试的命令:if @@trancount > 0 rollback tran (事务序列号: 0x0000003A000001DB006800000000,命令 ID: 3) 错误消息:· 应用复制的命令时在订阅服务器上找不到该行。 (源: MSSQLServer,错误号: 20598) 获取帮助: http://help/20598· 应用复制的命令时在订阅服务器上找不到该行。 (源: MSSQLServer,错误号: 20598) 获取帮助: http://help/20598出现这种错误的原始可能是 阅读全文
posted @ 2012-09-20 10:41 suther 阅读(2180) 评论(0) 推荐(1) 编辑
摘要: 在使用SQL Server数据库中,有时在复制时会出现错误,下面就为你分类介绍SQL Server数据库复制错误的原因及解决方法,希望对您学习SQL Server数据库有所帮助。 错误消息MSSQL_ENG002601不能在具有唯一索引 '%.*ls' 的对象 '%.*ls' 中插入重复键的行。MSSQL_ENG002627违反了 %ls 约束 '%.*ls'。不能在对象 '%.*ls' 中插入重复键。MSSQL_ENG003165数据库 '%ls' 已还原,但在还原/删除复制时出错。该数据库仍保留为离线状态。请参 阅读全文
posted @ 2012-09-17 09:57 suther 阅读(1931) 评论(0) 推荐(0) 编辑
摘要: 复制以下出现错误已将此(这些)订阅标记为不活动,必须将其重新初始化。需要删除 NoSync 订阅,然后重新创建它们。 为了尽量避免重新初始化订阅,可以使用以下SQL修改,执行前需保证发布端和订阅端数据一致。exec sp_addsubscription @publication = N'发布包名', @subscriber = N'订阅服务器名', @destination_db = N'订阅DB', @sync_type = N'replication support only', @subscription_type = N& 阅读全文
posted @ 2012-09-03 15:54 suther 阅读(412) 评论(0) 推荐(0) 编辑
摘要: 今天,因为磁盘空间报警,注意到该服务器上有个数据库test的日志文件约80+G,马上着手处理空间,首先是常规的 任务-收缩-文件-日志,发现已用空间在90%以上,常规收缩是行不通了。因为数据本身没有重要性,只要能收缩,清理空间就OK。所以直接--收缩日志dbcc shrinKfile(UserRequirement_log,0)然后发现该数据库是简单恢复模式,并且存在多用户连接和复制。然后找到下述命令直接运行--1. 将数据库设为单用户模式alter database test set single_user with ROLLBACK IMMEDIATE--2. 将数据库设为offalter 阅读全文
posted @ 2012-07-17 17:43 suther 阅读(286) 评论(0) 推荐(0) 编辑