postgresql - PostgresSQL 中的模板数据库
问题描述
我正在使用 PostgreSQL 来处理数据。我输入\l
命令查看我当前的数据库,但已经有 2 个数据库。我死而不是自己创造它们。
它们被称为template0
和template1
。那是什么?他们存在是为了什么?
解决方案
这些是在创建新数据库时用作模板的系统数据库。
CREATE DATABASE
实际上是通过复制现有数据库来工作的。默认情况下,它复制名为template1
. 因此,该数据库是创建新数据库的“模板”。如果您将对象添加到template1
,这些对象将被复制到随后创建的用户数据库中。
[...]
还有第二个标准系统数据库,名为
template0
. 此数据库包含与 的初始内容相同的数据template1
,即仅包含您的 PostgreSQL 版本预定义的标准对象。template0
数据库集群初始化后永远不要更改。通过指示CREATE DATABASE
复制template0
而不是template1
,您可以创建一个“原始”用户数据库,其中不包含template1
.
推荐阅读
- c# - 在实体框架中使用带条件的 ThenInclude
- python-3.x - 如何在 linux mint 中将 python3 更改为默认值
- java - 将适配器设置为 RecyclerView 或 notifyDataSetChanged 时冻结 ui 应用程序
- r - 如何从aws上的rstudio服务器访问restrserve api?
- c++ - 如何正确使用 kotlin 解密 c++ aes Rijndael CBC?
- javascript - 为什么 Chrome Canary 不支持我的 threejs AR [ARCore] Web 应用程序?
- javascript - 在导航栏中如何在未排序列表元素之间切换
- java - Unique characters from string
- sql-server - SQL Server cast() 与 convert()
- ios - Pop 和 Push 的导航在 SwiftUI 中不起作用?