mssql数据库变为单用户模式要执行多长时间。 查询执行了一个小时了还在执行。
在SQL Server数据库中,系统信息存储在系统数据库中,主要的系统数据库包括:
master-从整体上控制用户数据库和SQL Server操作,在创建了任何用户定义的对象后,都要备份它
model-为新数据库提供模版和原型
msdb-包含了有关作业、报警及操作员等信息
如果包含系统数据库的介质变了,那么必须重建系统数据库,如果你仍然可以启动SQL Server服务,则可以通过RESTORE语句从系统数据库的备份中恢复数据库。
如果master坏了,不能启动系统,可以按照下面步骤进行恢复
1重建系统数据库 运行c:\mssql7\binn\rebuildmexe,按照提示进行即可,
过程中需要系统数据库样本的路径,可在安装光盘中找到;
2 重建系统数据库后,启动SQL Server服务,用系统数据库的备份恢复数据库
就行了通常恢复顺序为master->msdb->model
在恢复master的备份时要注意:必须在单用户(single user)模式下进行
a进入单用户模式的方法:
1在命令行模式下输入sqlservr -c -f -m或者输入sqlservr -m
其中:-c 可以缩短启动时间,SQL Server 不作为Windows NT的服务启动
-f 用最小配置启动SQL Server
-m 单用户模式启动SQL Server
2可以在控制面板-服务-MSSQLServer的启动参数中输入-c -f -m或者输入-m,点击开始
3进行master数据库的恢复
a直接进入查询分析器,有个提示不要理会它
输入恢复语句进行数据库恢复:
RESTORE DATABASE master from disk='c:\具体的备份文件名'
b或者用这个,在命令提示符下输入,注意大小写
使用"windows身份验证"的,输入:isql /E
使用"sql server和windows身份验证"的,输入:isql /U"用户名" /P"密码"
然后在出现的提示符下输入(注意1>,2>是提示符):
初安装SQL Server时,选择的是Windows身份认证方式。但是,现在需要用到SQL Server身份认证方式,那么现在应该如何设置呢。
首先,使用Windows身份认证方式登录SQL Server,在对象资源管理器中选择数据库对象实例,右键单击选择属性,如下图:
其次,在服务器属性对话框中选择安全性,勾选SQL Server和Windows身份验证模式,点击确定保存。
再次,在对象资源管理器中选择安全性->登录名->sa,右键选择属性。
接着在登录属性对话框选择常规设置sa密码,然后选择状态选项,在登录下勾选启用,关闭SQL Server,再次启动时即可使用SQL Server身份认证方式。
当初,选项都设置后,重启SQL Server仍不能使用SQL Server身份认证方式登录,原来是忘记了勾选启用。
后面要使用SQLServer配置工具,开启TCP/IP和Named pipes两个,好像还要在named pipes中配置1304端口
--先运行该语句再恢复数据,你也可以手动设置数据库属性中的
--用户模式为“单用户(single user)”
use master
go
ALTER DATABASE 数据库名 SET SINGLE_USER
今天想在sql
server2005下复制一个数据库,结果最后一步出错,复制没成功反而导致数据库打不开了,
名称后出现"单个用户",估计是进行复制的时候自动将其改为了单用户模式,可通过执行如下语句恢复多用户模式。
原理是先kill占用了数据库的那个进程,然后设置数据库为多用户模式。
USE
master;
GO
DECLARE
@SQL
VARCHAR(MAX);
SET
@SQL=''
SELECT
@SQL=@SQL+';
KILL
'+RTRIM(SPID)
FROM
mastersysprocesses
WHERE
dbid=DB_ID('数据库名');
EXEC(@SQL);
GO
ALTER
DATABASE
数据库名
SET
MULTI_USER;
0条评论