还原或删除sql server 2008数据库时,经常烩出现:

“因为数据库正在使用,所以无法获得对数据库的独占访问权”,终解决方案如下

关键SQL语句:

use master

ALTER DATABASE [datebase] SET OFFLINE WITH ROLLBACK IMMEDIATE

用完之后再

ALTER database [ datebase] set online


为SQL Server 2008设置非1433端口

1、 SQL Server配置管理器,双击“TCP/IP”

clip_image001
因为数据库正在使用,所以无法获得对数据库的独占访问_第1张图片
TCP/IP设置

clip_image002
因为数据库正在使用,所以无法获得对数据库的独占访问_第2张图片
只设置最下面的IPALL的TCP端口。

clip_image004
因为数据库正在使用,所以无法获得对数据库的独占访问_第3张图片
确定后重启SQL Server服务,打开SQL Server Management Studio,服务器名称输入127.0.0.1[\实例名],端口号,端口号就是刚才设置的端口号。

2、 网络设置,针对Windows Server 2008。

控制面板->网络和共享中心 自定义

clip_image006
因为数据库正在使用,所以无法获得对数据库的独占访问_第4张图片
clip_image008
因为数据库正在使用,所以无法获得对数据库的独占访问_第5张图片
3、 防火墙

控制面板->Windows防火墙,例外 添加刚才设定的sql server端口。