我在 SQL 2008 中有一份工作,它运行一个存储过程来备份所有数据库。这通过 sql server 代理作业每天运行。
它每天都成功退出,但有时只有在备份了几个数据库后才成功退出。每次可以是不同数量的数据库。大多数情况下,它会成功备份所有数据库,但有时会成功备份 2 次,有时会成功备份 5 次,等等。
我在作业历史记录、事件查看器或 sql server 日志中没有看到任何错误。
备份是在本地磁盘上进行的,尽管该文件夹是可扩展存储卷上文件夹的“连接点”。
操作系统是 Windows 2003 64 位运行 Sql Server 2008 网络版 64 位作为在 Vmware ESXi 5 主机上运行的虚拟机。
存储过程:
ALTER PROCEDURE [dbo].[backup_all_databases]
@path VARCHAR(255)='c:\backups\'
AS
DECLARE @name VARCHAR(50) -- database name
DECLARE @fileName VARCHAR(256) -- filename for backup
DECLARE @fileDate VARCHAR(20) -- used for file name
DECLARE @dbIsReadOnly sql_variant -- is database read_only?
DECLARE @dbIsOffline sql_variant -- is database offline?
DECLARE db_cursor CURSOR FOR
SELECT name …Run Code Online (Sandbox Code Playgroud)