左岸印象
sql server

分类: 服务器类 作者: 阅读: 13,305  

问题现象:
系统日志文件(控制面板–管理工具–系统日志)
能找到以下两条错误:
17052:
无法恢复 master 数据库。正在退出。
18052:
错误: 9003,严重度: 20,状态: 1。

解决方法:

将Microsoft SQL Server\MSSQL\Data 目录改名为data_bak目录,然后从其他机器上把master.mdf,master.ldf,model.mdf,modellog.ldf拷过来随便放到哪(或者直接把data目录拷过来也行),不能放到Microsoft SQL Server\MSSQL\Data这个目录。

接着在服务器上打开C:\Program Files\Microsoft SQL Server\80\Tools\Binn文件夹,找到rebuildm.exe文件并运行,重新初始化master表,选择文件,按旁边的浏览,指向刚刚从旁边电脑上拷过来的那个文件夹,点确定开始重新初始化,提示成功(有时可能也提示失败,但不要紧,因为是从另外的电脑拷过来的,数据库文件链接不一样),点确定后就可以启动SQL服务了,有时启动不了的话要机器重启一下就可以了,这时把之前的数据库再附加上去就行了,把显示质疑的都删掉。

阅读全文      5条评论

分类: 服务器类 作者: 阅读: 2,397  

日志文件满而造成SQL数据库无法写入文件时,可用两种方法:

打开SQL查询分析器 => 连接数据库所在服务器
可以使用以下语句清理数据库日志: 
–对mssql事务日志变大的处理 清空日志
DUMP TRANSACTION 数据库名 WITH NO_LOG

–截断事务日志
BACKUP LOG 数据库名 WITH NO_LOG

–收缩数据库
DBCC SHRINKDATABASE(数据库名)

阅读全文      1条评论

分类: 服务器类 作者: 阅读: 2,465  

DECLARE @name VARCHAR(25)
DECLARE @SQL VARCHAR(1000)
DECLARE @logid INT
DECLARE sysdatabase_name CURSOR FOR SELECT name FROM master.dbo.sysdatabases
OPEN sysdatabase_name
FETCH NEXT FROM sysdatabase_name INTO @name

WHILE @@FETCH_STATUS = 0
BEGIN
IF ( @name NOT IN (‘xxx’))
BEGIN
SET @SQL =’ DECLARE @logid INT
USE [' + @name+']
SELECT @logid = fileid FROM sysfiles WHERE RIGHT(rtrim(filename),3) = ”ldf”
BACKUP LOG [' + @name+'] WITH NO_LOG
DBCC SHRINKFILE (@logid) ‘
EXEC(@SQL)
END

FETCH NEXT FROM sysdatabase_name INTO @name

END
CLOSE sysdatabase_name
DEALLOCATE sysdatabase_name

阅读全文      暂无评论

分类: 服务器类 作者: 阅读: 4,795  

要重装系统 sql server 数据库 备份 恢复 问题

重装系统,sql server 数据库 如何备份,装好系统后又如何还原?
解决方法:
备份sql 数据库目录下的data目录下的所有数据及所有您放在其它目录下的数据库文件。

装系统把以上备份的文件又放回原处启动服务就可以了,权限,什么的都有了

阅读全文      暂无评论

分类: 服务器类 作者: 阅读: 2,063  

ALTER DATABASE qkly_mssql
MODIFY FILE(NAME=qkly_mssql.mdf’,NEWNAME=’qkly_mssql’)
GO

ALTER DATABASE qkly_mssql
MODIFY FILE(NAME=’qkly_mssql.ldf’,NEWNAME=’qkly_mssql_log’)
GO

DATABASE数据库名,第一个NAME是逻辑文件名,NEWNAME是要改名的,查询分析器查询执行就行了。可以先把数据库文件改名成需要的再执行

阅读全文      暂无评论

分类: 服务器类 作者: 阅读: 2,186  

IF OBJECT_ID('ChangeAllObjOwner') IS NOT NULL  //line continous
                  DROP PROC ChangeAllObjOwner
GO

上面貌似可以不加进去,直接复制中间的那大段到查询分析器:

阅读全文      暂无评论