community.postgresql.postgresql_schema 模块 – 添加或删除 PostgreSQL 模式
注意
此模块是 community.postgresql 集合(版本 3.9.0)的一部分。
如果您使用的是 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.postgresql
。您需要进一步的要求才能使用此模块,请参阅 要求 了解详细信息。
要在 playbook 中使用它,请指定:community.postgresql.postgresql_schema
。
概要
添加或删除 PostgreSQL 模式。
要求
在执行此模块的主机上需要以下要求。
psycopg2 >= 2.5.1
参数
参数 |
注释 |
---|---|
指定包含 SSL 证书颁发机构 (CA) 证书的文件名。 如果文件存在,将验证服务器的证书是否由这些机构之一签名。 |
|
使用 CASCADE 删除模式以移除子对象。 选项
|
|
在模式上设置注释。 要重置注释,请传递一个空字符串。 |
|
要传递给 libpg 的任何其他参数。 这些参数优先。 默认值: |
|
要连接并添加或删除模式的数据库的名称。 默认值: |
|
运行数据库的主机。 如果在使用 默认值: |
|
此模块应该用来建立其 PostgreSQL 会话的密码。 默认值: |
|
用于本地连接的 Unix 域套接字的路径。 默认值: |
|
此模块应该用来建立其 PostgreSQL 会话的用户名。 默认值: |
|
要添加或删除的模式的名称。 |
|
要设置为模式所有者的角色的名称。 默认值: |
|
要连接的数据库端口。 默认值: |
|
连接后切换到 session_role。 指定的 session_role 必须是当前 login_user 所属的角色。 SQL 命令的权限检查的执行方式就像 session_role 是最初登录的角色一样。 |
|
指定客户端 SSL 证书的文件名。 |
|
指定用于客户端证书的密钥的位置。 |
|
确定是否以及以何种优先级与服务器协商安全的 SSL TCP/IP 连接。 有关模式的更多信息,请参阅 https://postgresql.ac.cn/docs/current/static/libpq-ssl.html。 默认值 选项
|
|
模式状态。 选项
|
|
如果为 仅当通过参数可能发生 SQL 注入时,使用 选项
|
属性
属性 |
支持 |
描述 |
---|---|---|
支持: 完整 |
可以在 check_mode 中运行并返回更改状态预测,而无需修改目标。 |
注释
注意
默认身份验证假设您正在以
postgres
帐户登录或 sudo 到主机上的该帐户。为了避免“用户 postgres 的对等身份验证失败”错误,请使用 postgres 用户作为 become_user。
此模块使用
psycopg
,一个 Python PostgreSQL 数据库适配器。您必须确保在使用此模块之前,主机上安装了psycopg2 >= 2.5.1
或psycopg3 >= 3.1.8
。如果远程主机是 PostgreSQL 服务器(这是默认情况),则还必须在远程主机上安装 PostgreSQL。
对于基于 Ubuntu 的系统,请在使用此模块之前,在远程主机上安装
postgresql
、libpq-dev
和python3-psycopg2
包。
另请参阅
另请参阅
- PostgreSQL 模式
有关 PostgreSQL 模式的常规信息。
- CREATE SCHEMA 参考
CREATE SCHEMA 命令文档的完整参考。
- ALTER SCHEMA 参考
ALTER SCHEMA 命令文档的完整参考。
- DROP SCHEMA 参考
DROP SCHEMA 命令文档的完整参考。
示例
- name: Create a new schema with name acme in test database
community.postgresql.postgresql_schema:
db: test
name: acme
comment: 'My test schema'
- name: Create a new schema acme with a user bob who will own it
community.postgresql.postgresql_schema:
name: acme
owner: bob
- name: Drop schema "acme" with cascade
community.postgresql.postgresql_schema:
name: acme
state: absent
cascade_drop: true
返回值
常见返回值记录在 此处,以下是此模块特有的字段
键 |
描述 |
---|---|
已执行查询的列表。 已返回: 成功 示例: |
|
模式的名称。 已返回: 成功 示例: |