

# Noções básicas sobre o esquema da pgactive
<a name="Appendix.PostgreSQL.CommonDBATasks.pgactive.schema"></a>

O esquema da pgactive gerencia a replicação ativa-ativa no RDS para PostgreSQL. Esse esquema contém tabelas que armazenam informações de configuração e status da replicação.

**nota**  
O esquema da pgactive está evoluindo e está sujeito a alterações. Não modifique os dados nessas tabelas diretamente.

As tabelas principais no esquema da pgactive incluem:
+ `pgactive_nodes`: armazena informações sobre os nós no grupo de replicação ativa-ativa.
+ `pgactive_connections`: armazena detalhes da conexão para cada nó.

## pgactive\_nodes
<a name="Appendix.PostgreSQL.CommonDBATasks.pgactive.schema.nodes"></a>

A pgactive\_nodes armazena informações sobre os nós que participam do grupo de replicação ativa-ativa. 


| Coluna | Tipo | Collation (Agrupamento) | Anulável | Padrão | 
| --- | --- | --- | --- | --- | 
| node\_sysid | texto | – | não nulo | – | 
| node\_timeline | oid | – | não nulo | – | 
| node\_dboid | oid | – | não nulo | – | 
| node\_status | char | – | não nulo | – | 
| node\_name | texto | – | não nulo | – | 
| node\_dsn | texto | – | não nulo | – | 
| node\_init\_from\_dsn | texto | – | não nulo | – | 
| node\_read\_only | booleano | – | – | false | 
| node\_seq\_id | smallint | – | não nulo | – | 

**node\_sysid**  
ID exclusivo para um nó, gerado durante `pgactive_create_group` ou `pgactive_join_group`.

**node\_status**  
Prontidão do nó:  
+ **b**: iniciando a configuração
+ **i**: inicializando
+ **c**: recuperando
+ **o**: criando slots de saída
+ **r**: pronto
+ **k**: encerrado
Essa coluna não indica se um nó está conectado ou desconectado.

**node\_name**  
Nome de nó exclusivo fornecido pelo usuário.

**node\_dsn**  
String de conexão ou nome de mapeamento do usuário

**node\_init\_from\_dsn**  
DSN com base no qual esse nó foi criado.

## pgactive\_connection
<a name="Appendix.PostgreSQL.CommonDBATasks.pgactive.schema.connection"></a>

A pgactive\_connections armazena detalhes da conexão para cada nó.


| Coluna | Tipo | Collation (Agrupamento) | Anulável | Padrão | 
| --- | --- | --- | --- | --- | 
| conn\_sysid | texto | nenhuma | não nulo | nenhuma | 
| conn\_timeline | oid | nenhuma | não nulo | nenhuma | 
| conn\_dboid | oid | nenhuma | não nulo | nenhuma | 
| conn\_dsn | texto | nenhuma | não nulo | nenhuma | 
| conn\_apply\_delay | integer | nenhuma | nenhuma | nenhuma | 
| conn\_replication\_sets | texto | nenhuma | nenhuma | nenhuma | 

conn\_sysid  
Identificador do nó ao qual essa entrada se refere.

conn\_dsn  
O mesmo que `node_dsn` de pgactive.pgactive\_nodes.

conn\_apply\_delay  
Se definido, milissegundos de espera antes de aplicar cada transação por meio do nó remoto. Principalmente para depuração. Se nulo, o padrão global se aplica.

## Trabalhar com conjuntos de replicações
<a name="Appendix.PostgreSQL.CommonDBATasks.pgactive.replication"></a>

Os conjuntos de replicações determinam quais tabelas incluir ou excluir das operações de replicação. Por padrão, todas as tabelas são replicadas, a menos que você especifique o contrário usando as seguintes funções:
+ `pgactive_exclude_table_replication_set()`: exclui tabelas especificadas da replicação.
+ `pgactive_include_table_replication_set()`: inclui tabelas especificadas na replicação.

**nota**  
Antes de configurar os conjuntos de replicações, considere o seguinte:  
Você pode configurar a inclusão ou exclusão da tabela somente depois de executar `pgactive_create_group()`, mas antes de `pgactive_join_group()`.
Depois de usar `pgactive_exclude_table_replication_set()`, você não pode usar `pgactive_include_table_replication_set()`.
Depois de usar `pgactive_include_table_replication_set()`, você não pode usar `pgactive_exclude_table_replication_set()`.

O sistema trata as tabelas recém-criadas de forma diferente com base na sua configuração inicial:
+ Se você excluiu tabelas: todas as outras tabelas criadas depois de `pgactive_join_group()` serão automaticamente incluídas na replicação.
+ Se você incluiu tabelas: todas as outras tabelas criadas depois de `pgactive_join_group()` serão automaticamente excluídas da replicação.

Para visualizar a configuração do conjunto de replicações de uma tabela específica, use a função `pgactive.pgactive_get_table_replication_sets()`.