如何找出默认创建的数据库,模式和表?

时间:2018-01-16 01:19:38

标签: postgresql

我想知道默认情况下创建了哪些数据库,模式和表。我想知道该怎么做?

我使用ORDER BY但无法从输出中辨别出来。感谢。

\l

2 个答案:

答案 0 :(得分:2)

template0默认情况下会创建数据库template1postgresinitdb

数据库postgres用于管理连接,template1将在创建新数据库时用作默认模板,而不指定显式模板,template0是您使用的模板你需要一个真正的空数据库。

答案 1 :(得分:1)

我将对“我怎么说”这个问题给出一个非常笼统的答案:你做不到。

“默认创建”可能意味着各种各样的事情,但通常只是意味着“由安装程序初始化”;系统通常没有理由跟踪安装程序创建的内容以及用户创建的内容。

用户甚至可以更改或删除安装程序创建的内容,无论是否影响系统的正常操作。

对于PostgreSQL,确实有许多由安装程序创建的对象。其中一些必须继续存在以便系统安全运行 - 您可以删除“内置”运算符和函数的定义,但如果这样做,可能会留下一些有点破坏的系统。其他对用户来说非常有用 - postgres数据库按惯例是完全空的,并且在连接时用于工具以执行服务器维护命令。

找出默认创建的所有内容的唯一可靠方法是彻底安装最新版本的软件,并在添加任何自己的数据之前立即查看其中包含的内容。了解这些内容的最佳方法是阅读手册。这适用于PostgreSQL,但也适用于任何其他软件。