sqllogship 应用程序

适用范围:SQL Server

sqllogship 应用程序用于执行日志传送配置中的备份、复制或还原操作以及相关的清理任务。 这些操作是在特定的 Microsoft SQL Server 实例上针对特定数据库执行的。

有关语法约定,请参阅 SQL 命令行实用工具(数据库引擎)。

语法

sqllogship
-server instance_name { -backup primary_id | -copy secondary_id | -restore secondary_id }
[ -verboselevel level ]
[ -logintimeout timeout_value ]
[ -querytimeout timeout_value ]
[ -connectionoptions "<key_value_pairs>; [ ... ]"]

争论

-服务器 instance_name

指定运行作的 SQL Server 实例。 要指定的服务器实例取决于所指定的日志传送操作。 因此 -backupinstance_name 必须是日志传送配置中主服务器的名称。 或者-copy-restore必须是日志传送配置中的辅助服务器的名称。

-backup primary_id

执行主数据库的备份操作,此数据库的主 ID 由 primary_id指定。 可以通过从 log_shipping_primary_databases 系统表选择此 ID 或通过使用 sp_help_log_shipping_primary_database 存储过程来获取此 ID。

备份操作将在备份目录中创建日志备份。 然后, sqllogship 应用程序会根据文件保持期清除任何旧备份文件。 接着,此应用程序记录在主服务器和监视服务器上执行备份操作的历史记录。 最后,此应用程序会运行 sp_cleanup_log_shipping_history,根据保持期清除旧的历史记录信息。

-复制secondary_id

执行复制操作,从指定辅助服务器上复制一个或多个由secondary_id指定的辅助数据库的备份。 可以通过从 log_shipping_secondary 系统表选择此 ID 或通过使用 sp_help_log_shipping_secondary_database 存储过程来获取此 ID。

此操作将备份文件从备份目录复制到目标目录。 然后, sqllogship 应用程序会记录在辅助服务器和监视服务器上执行复制操作的历史记录。

-恢复 secondary_id

在指定辅助服务器上对一个或多个辅助数据库执行还原操作,辅助数据库的辅助 ID 由 secondary_id指定。 可以使用存储过程获取此 ID sp_help_log_shipping_secondary_database

目标目录中在最近还原点之后创建的所有备份文件都将还原到一个或多个辅助数据库中。 然后, sqllogship 应用程序会根据文件保持期清除任何旧备份文件。 接着,此应用程序记录在辅助服务器和监视服务器上执行还原操作的历史记录。 最后,应用程序会 sp_cleanup_log_shipping_history运行,它根据保留期清理旧历史记录信息。

-verboselevel 级别

指定要添加到日志传送历史记录的消息的级别。 level 是以下整数之一:

级别 说明
0 不输出跟踪消息和调试消息。
1 输出错误处理消息。
2 输出警告消息和错误处理消息。
3(默认值) 输出信息性消息、警告和错误处理消息。
4 输出所有调试消息和跟踪消息。

-logintimeout timeout_value

指定在尝试超时之前尝试登录服务器实例所分配的时间量。默认值为 15 秒。 timeout_value为 int

-querytimeout timeout_value

指定启动指定操作之前所分配的时间,以防止操作超时。默认情况下没有超时期限。 timeout_value为 int

-connectionoptions “<key_value_pairs>;[ ...n ]”

适用于:SQL Server 2025(17.x)及更高版本。

以键值对的形式指定额外的连接选项。

下表列出了可用的连接选项:

Key 价值
Encrypt strictmandatoryoptionaltruefalse
TrustServerCertificate truefalseyesno
ServerCertificate 文件系统上服务器证书的路径。 此选项的最大长度为 260 个字符。
HostNameInCertificate 证书的主机名替代。 此选项的最大长度为 255 个字符。

备注

建议尽可能使用备份、复制和还原作业来执行备份、复制和还原。 若要从批处理操作或其他应用程序启动这些作业,请调用 sp_start_job 存储过程。

sqllogship 创建的日志传送历史记录与由日志传送备份、复制和还原作业创建的历史记录混杂在一起。 如果打算反复使用 sqllogship 来执行日志传送配置中的备份、复制或还原操作,请考虑禁用相应的日志传送作业。 有关详细信息,请参阅禁用或启用作业

sqllogship 应用程序SqlLogShip.exe安装在<drive>:\Program Files\Microsoft SQL Server\130\Tools\Binn目录中。

权限

sqllogship 使用 Windows 身份验证。 运行此命令所使用的 Windows 身份验证帐户需要 Windows 目录访问权限和 SQL Server 权限。 要求取决于 sqllogship 命令是指定-backup还是-copy-restore指定选项。

选项 目录访问权限 权限
-backup 需要对备份目录的读/写访问权限。 需要与语句相同的权限 BACKUP 。 有关详细信息,请参阅 BACKUP
-copy 需要对备份目录的读取访问权限以及对复制目录的写入访问权限。 需要与 sp_help_log_shipping_secondary_database 存储过程相同的权限。
-restore 需要对拷贝目录的读/写访问权限。 需要与语句相同的权限 RESTORE 。 有关详细信息,请参阅 RESTORE 语句

若要了解备份和复制目录的路径,可以运行 sp_help_log_shipping_secondary_database 存储过程或查看 log_shipping_secondary 表中 msdb的路径。 备份目录和目标目录的路径分别位于 backup_source_directory 列和 backup_destination_directory 列中。