postgre列出数据库
时间: 2023-07-08 17:15:03 浏览: 58
要列出PostgreSQL服务器上的所有数据库,可以按照以下步骤操作:
1. 连接到PostgreSQL数据库控制台。
2. 在控制台中输入以下命令:
```
\list
```
这个命令会列出当前服务器上的所有数据库名称、所属角色、编码方式和已配置的所有扩展等信息。
除了上述命令,你还可以使用以下命令列出更详细的数据库信息:
```
\l+
```
这个命令会列出每个数据库的名称、所属角色、编码方式、已配置的所有扩展、大小等详细信息。
注意,在控制台中输入命令时,命令前面需要加`\`符号。
相关问题
postgre列出数据库数据表
要列出PostgreSQL数据库中的所有数据表,可以按照以下步骤操作:
1. 连接到PostgreSQL数据库控制台。
2. 在控制台中输入以下命令:
```
\dt
```
这个命令会列出当前数据库中的所有数据表名称和它们所属的模式。
如果你只想列出特定模式的数据表,可以使用以下命令:
```
\dt schema_name.*
```
其中,`schema_name`是你要列出数据表所属的模式名称,`*`表示列出该模式下的所有数据表。
除了上述命令,你还可以使用以下命令列出更详细的数据表信息:
```
\dt+ table_name
```
其中,`table_name`是你要列出详细信息的数据表名称。这个命令会列出数据表的名称、所属的模式、表的类型(例如,表或视图)、表的大小、描述等信息。
注意,在控制台中输入命令时,命令前面需要加`\`符号。
postgre建立主从数据库
要在 PostgreSQL 中建立主从数据库,可以采用以下步骤:
1. 在主服务器上,编辑 `postgresql.conf` 文件,将 `wal_level` 参数设置为 `replica`,将 `max_wal_senders` 参数设置为主服务器可以同时向多少个从服务器发送 WAL 日志,将 `wal_keep_segments` 参数设置为主服务器应该保留的 WAL 日志段数量。例如:
```
wal_level = replica
max_wal_senders = 10
wal_keep_segments = 100
```
2. 在主服务器上,编辑 `pg_hba.conf` 文件,将从服务器的连接方式添加到文件中。例如:
```
host replication replica 192.168.1.0/24 md5
```
其中,`replication` 是从服务器连接时所使用的用户名,`192.168.1.0/24` 是从服务器的 IP 地址,`md5` 表示使用 MD5 加密方式进行身份验证。
3. 在主服务器上,重启 PostgreSQL 服务以使配置生效。
4. 在从服务器上,创建一个空的数据库,并使用 `pg_basebackup` 命令从主服务器上复制数据。例如:
```
pg_basebackup -D /data/postgresql/data -h master.example.com -p 5432 -U replica -X stream -P
```
其中,`/data/postgresql/data` 是从服务器上数据库的数据目录,`master.example.com` 是主服务器的主机名或 IP 地址,`5432` 是主服务器的端口号,`replica` 是从服务器连接时所使用的用户名,`stream` 表示使用流复制方式进行备份,`-P` 表示在复制过程中输出进度信息。
5. 在从服务器上,编辑 `postgresql.conf` 文件,将 `hot_standby` 参数设置为 `on`。例如:
```
hot_standby = on
```
6. 在从服务器上,创建一个名为 `recovery.conf` 的文件,并设置以下内容:
```
standby_mode = on
primary_conninfo = 'host=master.example.com port=5432 user=replica'
```
其中,`master.example.com` 是主服务器的主机名或 IP 地址,`5432` 是主服务器的端口号,`replica` 是从服务器连接时所使用的用户名。
7. 在从服务器上,启动 PostgreSQL 服务。从服务器将自动连接到主服务器并开始进行流复制。
这样,主从数据库就建立完成了。主服务器将自动将 WAL 日志发送到从服务器,从服务器将自动将 WAL 日志应用到自己的数据中。可以通过查询 `pg_stat_replication` 视图来查看主从服务器之间的复制状态。