这是我面临的错误
标题:Microsoft.SqlServer.Smo
数据库“Go3D_Retailer”设置脱机失败
- - - - - - - - - - - - - - - 附加信息:
执行 Transact-SQL 语句或批处理时发生异常。(Microsoft.SqlServer.ConnectionInfo)
无法打开物理文件“E:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\ftrow_Go3D_catalog.ndf”。操作系统错误 2:“2(无法检索此错误的文本。原因:15105)”。由于文件无法访问或内存或磁盘空间不足,无法打开数据库“Go3D_Retailer”。有关详细信息,请参阅 SQL Server 错误日志。ALTER DATABASE 语句失败。(Microsoft SQL Server,错误:5120)
此错误的背景 我一直在尝试将目标日志传输数据库移至另一台物理服务器以进行分析。由于我没有设置 Active Directory,因此我不得不对源服务器和目标服务器使用相同的用户名/密码来破解我的流程,以使该流程正常运行。
之后,我使用这家伙的解决方案将目标数据库移至另一台服务器。但是,当我尝试将数据库重新联机时,会出现此错误。
我的服务器上没有 E 盘,我不知道它为什么尝试打开 E 盘上的文件。我的硬盘上还剩下 100 多 GB,所以这肯定不是空间问题。这听起来像是一个错误……有什么想法吗?
我在 Windows Server 2008 R2 64 位上运行 SQL Server 2008 企业版
答案1
看起来原始数据库有多个数据文件(错误消息显示文件扩展名为 .ndf)。如果您尝试移动数据库并执行附加操作,那么您将需要附加所有数据文件才能使其联机。