解决MSSQL附加数据库出错问题(mssql附加错误)
MSSQL提供了附加数据库的功能,可以将备份的数据库文件进行附加来恢复数据,但有时候附加数据库会出现一些问题,比如”附加数据库失败:无法打开文件。特定的系统错误:32(将文件指针重新定位到文件开头失败)等” 。这时候,如何解决MSSQL附加数据库失败问题呢?
1. 检查系统管理员权限。
添加数据库需要系统管理员权限,先检查是否拥有此权限。可以在SQL Server管理工具中查看。
2. 尝试关闭所有的对应MDF文件的连接
MDF文件就是数据库文件,如果此数据库已经被其他用户打开,我们可以尝试关闭其连接,再重新尝试附加。
USE MASTER
GO
SELECT *
FROM SYS.DATABASES
WHERE NAME=’MyDB’
GO
— Check if there are any open connections
EXEC sp_who2 ‘Active’
GO
— Kill the connection, for example for SPID 54
KILL 54
3. 极端情况下,可以尝试把MDF文件和LDF文件放到系统数据文件夹下,然后重新附加
MDF文件和LDF文件都是数据库文件,如果文件放置的路径比较复杂,我们可以尝试把两个文件放到系统数据文件夹下,然后重新附加尝试。
4. 使用权限模式
我们可以使用权限模式,首先找出拥有管理员权限的账号,然后以账号来进行附加数据库。
其实只要认真检查一下权限、文件路径以及是否有被其他人打开、文件状态等,我们就可以解决MSSQL附加数据库失败的问题。