怎么还原sql2008数据库 heroes可疑
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么还原sql2008数据库 heroes可疑相关的知识,希望对你有一定的参考价值。
参考技术A SQL server 2008如何还原数据库?与SQL 2005或SQL 2008是一样的,在这里分享给大家;首先,当然是要备份好一份SQL的数据文件;通常我们讲的还原数据库是指文件到数据库,而在这里,SQL2000,备份的文件可以还原到高版本的SQL server上,而高版备份文件却还原不了低版本的SQL server;下面我们来操作一次给大家看,因为我的备份文件很大,20G左右,有点慢;如图示:登陆SQL Server Management Studio管理器,然后右击数据库-选择还原数据库:这里首先写好数据库名-选择源设备-文件-添加数据库文件(文件名是以.bak结尾的备份文件);然后确定:这里便可以看这个备份文件的基本内容;备份日期,备份类型,数据库名等;然后我们下一步完成还原;这里通常会有一个报错,超过所有数据库大小达到10G会还原失败,我查了一下资料:解决办法:1、选中该数据库“右键”选择【属性】;2、在弹出的对话框中选择【选项 】,然后在右侧列表找到【状态】下的【限制访问】:将状态值改为“Multiple”或者“MULTI_USER” ,点击【确定】保存就可以了!以上参考之用,但如果出现报错提示,要看清楚提示语;然后去查一下相关资料SQL Server2005还原数据库之前,怎么断开所有的用户链接?
最简单的办法就是把服务器的网线拔掉,你爱怎么还原就怎么还原,完了再插上网线 参考技术A 1)在master数据库下建立下面的存储过程killspid。create proc killspid (@dbname varchar(20))
as
begin
declare @sql nvarchar(500)
declare @spid int
set @sql='declare getspid cursor for
select spid from sysprocesses where dbid=db_id(
exec (@sql)
open getspid
fetch next from getspid into @spid
while @@fetch_status<>-1
begin
exec('kill )
fetch next from getspid into @spid
end
close getspid
deallocate getspid
end
GO
2)还原数据库时,首先执行这个killspid存储过程:
SqlConnection masConn = new SqlConnection("Server=.;Database=master;User id=sa;Password=sa"); //注意是master数据库
masConn.Open();
SqlCommand kill = new SqlCommand("killspid",masConn);
kill.Parameters.Add("@dbname", SqlDbType.Char).Value = "数据库名";
kill.ExecuteNonQuery();
3)以上就断开了所有的用户连接,然后执行还原命令即可。本回答被提问者采纳
以上是关于怎么还原sql2008数据库 heroes可疑的主要内容,如果未能解决你的问题,请参考以下文章