lowlydba.sqlserver.install_script 模块 – 对数据库运行迁移脚本

注意

此模块是 lowlydba.sqlserver 集合 (版本 2.3.4) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install lowlydba.sqlserver。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求

要在 playbook 中使用它,请指定: lowlydba.sqlserver.install_script

lowlydba.sqlserver 0.11.0 中的新增功能

概要

  • 使用 DBOps 模块对目标 SQL Server 数据库运行 Dbo-InstallScript

要求

执行此模块的主机需要以下要求。

参数

参数

注释

connection_timeout

整数

数据库服务器连接超时(秒)。仅影响连接尝试。不影响执行超时。

默认值: 30

create_database

布尔值

如果数据库不存在,则创建空数据库。

选项

  • false ← (默认)

  • true

database

字符串 / 必需

目标数据库的名称。

deployment_method

字符串

SingleTransaction - 将所有部署脚本包装到单个事务中,并在出错时回滚整个部署。

TransactionPerScript - 将每个脚本包装到单独的事务中;如果出错,则回滚单个脚本部署。

NoTransaction - 按原样部署。

AlwaysRollback - 回滚事务。

选项

  • "NoTransaction" ← (默认)

  • "SingleTransaction"

  • "TransactionPerScript"

  • "AlwaysRollback"

execution_timeout

整数

脚本执行超时。如果执行时间超过指定秒数,脚本将被中止。

默认值: 0

match

字符串

使用提供的字符串对提供的文件名运行正则表达式验证。

no_log_version

布尔值

如果设置,则不会在数据库中跟踪部署。这也意味着将部署包中的所有脚本和所有构建,而不管之前的任何部署历史。

选项

  • false ← (默认)

  • true

no_recurse

布尔值

仅处理目标路径的第一级。

选项

  • false ← (默认)

  • true

output_file

字符串

将日志输出到指定文件。

path

字符串 / 必需

存储目标 sql 脚本的目录。

schema_version_table

字符串

将保存脚本执行历史记录的表。此表用于选择在部署期间将运行哪些脚本,防止脚本被执行两次。

sql_instance

字符串 / 必需

要修改的 SQL Server 实例。

sql_password

字符串

SQL 身份验证的密码。

sql_username

字符串

SQL 身份验证的用户名。

属性

属性

支持

描述

check_mode

支持:完全支持

可以在 check_mode 下运行并返回更改状态预测,而无需修改目标。

platform

平台:所有

可以对其进行操作的目标操作系统/系列。

示例

- name: Migrate a database
  lowlydba.sqlserver.install_script:
    sql_instance: test-server.my.company.com
    database: AdventureWorks
    path: migrations

返回值

常用返回值已记录在 此处,以下是此模块独有的字段

描述

data

字典

Install-DboScript 函数的修改后的输出。

返回: 成功,但不在检查模式下。

作者

  • John McCall (@lowlydba)