数据库 ------- OushuDB 在初始化完成后,会默认生成三个数据库,可以使用 \l 命令查看,或者查看 pg_database 系统表。 .. code-block:: html :linenos: postgres=# \l List of databases Name | Owner | Encoding | Access privileges -----------+----------+----------+------------------- postgres | oushu | UTF8 | template0 | oushu | UTF8 | template1 | oushu | UTF8 | (4 rows) 其中 template0 和 template1 为模版数据库。template1 为系统默认用来创建新数据库的模版数据库,用户可以修改。template0 默认不接受连接,所以不可更改,目的是始终保存一个干净的模版数据库。 创建一个数据库的时候,可以指定一个数据库的模版数据库。缺省为 template1,现在 OushuDB 只支持以 template0,template1 和 postgres 数据库为模版数据库。例如: .. code-block:: html :linenos: postgres=# create database tdb; # 创建一个新数据库,默认以 template1 为模版 CREATE DATABASE postgres=#\c postgres # 连接 postgres postgres=# create table test(i int); # 在 postgres 数据库中创建表 test CREATE TABLE postgres=# create table test_orc(i int) with (appendonly=true, orientation=orc); # 在 postgres 数据库中创建 ORC 格式表 CREATE TABLE postgres=# create database dbnew template postgres; CREATE DATABASE postgres=#\c dbnew # 连接 dbnew 可以看到,dbnew中现在包含 test 表 .. code-block:: html :linenos: dbnew=#\d List of relations Schema | Name | Type | Owner | Storage --------+------+-------+----------+------------- public | test | table | oushu | append only (1 row)