PostgreSQL Tablespace
Resumo
- Adiciona ou remove tablespaces de servidores remotos PostgreSQL
Parâmetros
Parâmetro | Tipo | Escolhas | Valores padrão | Comentários |
|---|---|---|---|
db | string | | Nome do banco de dados ao qual se conectar e que irá executar consultas. aliases: login_db |
location | path | | Caminho para o diretório do espaço de tabela no sistema de arquivos. Certifique-se de que o local existe e tem os privilégios corretos. aliases: path |
owner | string | | Nome do perfil a ser definido como proprietário do tablespace. Se esta opção não for especificada, o proprietário do tablespace é um perfil que cria o tablespace. |
rename_to | string | | Novo nome do tablespace. O novo nome não pode começar com pg_, pois esses nomes são reservados para tablespaces do sistema. |
session_role | string | | Alterna para session_role após conectar. O session_role especificado deve ser uma função da qual o login_user atual é membro. A verificação de permissões para comandos SQL é realizada como se o session_role fosse aquele que havia se logado originalmente. |
set | dictionary | | Dicionário de opções de tablespace a serem definidas. Compatível com PostgreSQL 9.0. Para obter mais informações, consulte https://www.postgresql.org/docs/current/sql-createtablespace.html. Quando o reset é passado como um valor de opção, se a opção foi definida anteriormente, ela será removida. |
state | string | Escolhas:
| Estado do tablespace state=present implica que o tablespace deve ser criado se não existir. state=absent implica que o tablespace deve ser removido, se presente. state=absent é mutuamente exclusivo com location, owner, i(set). Consulte a seção Observações para obter informações sobre as restrições do modo de verificação. |
tablespace | string | | Nome do tablespace a ser adicionado ou removido. aliases: name |
trust_input | boolean | Escolhas:
| Caso use 'no', verifique se os valores dos parâmetros tablespace, location, owner, rename_to, session_role, settings_list são potencialmente perigosos. Faz sentido usar no apenas quando as injeções de SQL por meio dos parâmetros são possíveis. |
Extende fragmentos da documentação do módulo PostgreSQL Base
Notas
- state=absent e state=present (o segundo se o espaço de tabela não existir) não suportam o modo de verificação porque os comandos DROP e CREATE TABLESPACE correspondentes do PostgreSQL não podem ser executados dentro do bloco de transação.
- A autenticação padrão assume que você está fazendo login ou sudo na conta do postgres no host.
- Para evitar o erro “Peer authentication failed for user postgres”, use o usuário postgres como um become_user.
- Se o host remoto for o servidor PostgreSQL (que é o caso padrão), o PostgreSQL também deve ser instalado no host remoto.
- O parâmetro ca_cert requer pelo menos Postgres versão 8.4.
Exemplos
- name: Cria um novo tablespace chamado acme e defina bob como seu proprietário
postgresql_tablespace:
name: acme
owner: bob
location: /data/foo
- name: Cria um novo tablespace chamado bar com opções definidas
postgresql_tablespace:
name: bar
set:
random_page_cost: 1
seq_page_cost: 1
- name: Redefinir opção random_page_cost
postgresql_tablespace:
name: bar
set:
random_page_cost: reset
- name: Renomeia o tablespace de bar para pcie_ssd
postgresql_tablespace:
name: bar
rename_to: pcie_ssd
- name: Elimine o tablespace chamado bloat
postgresql_tablespace:
name: bloat
state: absentValores retornados
Chave | Tipo | Retornado quando | Descrição |
|---|---|---|---|
location | string | sempre | Caminho para o tablespace no sistema de arquivos. Exemplo: /incredible/fast/ssd |
newname | string | se existente | Novo nome do tablespace. Exemplo: new_ssd |
options | dictionary | sempre | Opções do tablespace. Exemplo: {'random_page_cost': 1, 'seq_page_cost': 1} |
owner | string | sempre | Proprietário do tablespace. Exemplo: Bob |
queries | string | sempre | Lista de consultas que se tentou executar. Exemplo: ["CREATE TABLESPACE bar LOCATION '/incredible/ssd'"] |
state | string | sempre | Estado do tablespace state no fim da execução. Exemplo: present |
tablespace | string | sempre | Nome do tablespace. Exemplo: ssd |