SQL Server 2014还原LocalDB备份后重启进入恢复挂起状态求助
问题背景与现象
开发团队使用Visual Studio 2022安装的LocalDB(版本15.0.4153)存储开发数据库。一台环境服务器运行Windows Server 2019系统,搭载SQL Server 2014(版本12.0.6329.1)。由于服务器盘符与开发机不同,还原时会通过MOVE参数重新定位文件到本地正确路径,还原过程显示正常,但重启机器后,还原的数据库进入「恢复挂起(Recovery Pending)」模式。该问题始于服务器从Windows Server 2012 R2升级到2019之后。
奇怪的是,用完全相同的方式将备份还原到本地SQL Server 2022 Dev Edition(版本16.0.10000.6)实例时,即使重启机器也一切正常。另外发现异常:删除处于恢复挂起状态的数据库时,.mdf文件会被删除,但.ldf文件不会被删除,推测文件未与数据库正确关联。
2023年7月18日补充:还原SQL语句
USE [master]; RESTORE DATABASE [MyDb] FROM DISK = N'C:\Database\Backups\my_backup.bak' WITH FILE = 1, MOVE N'MyDb' TO N'C:\Database\Data\MyDb.mdf', MOVE N'MyDb_log' TO N'C:\Database\Data\MyDb_log.ldf', NOUNLOAD, STATS = 5;
2023年7月19日补充:故障排查信息
执行ALTER DATABASE MyDb SET ONLINE命令时,报错如下:
Msg 1853, Level 16, State 1, Line 7 The logical database file 'MyDb_log' cannot be found. Specify the full path for the file. Msg 5181, Level 16, State 5, Line 7 Could not restart database "MyDb". Reverting to the previous status. Msg 5069, Level 16, State 1, Line 7 ALTER DATABASE statement failed.
但执行以下查询时,确认.ldf文件确实存在于指定磁盘路径中:
SELECT name as 'Logical Name', physical_name as 'File Location' FROM sys.master_files;
内容的提问来源于stack exchange,提问作者dmoore1181
相关产品推荐
相关产品推荐

