PostgreSQL 创建数据库

本章讨论如何在 PostgreSQL 中创建新数据库。PostgreSQL 提供了两种创建新数据库的方法

  • 使用 CREATE DATABASE,一个 SQL 命令。
  • 使用 createdb 命令来创建。

CREATE DATABASE 创建数据库

CREATE DATABASE 命令需要在 PostgreSQL 命令窗口来执行,语法格式如下:

CREATE DATABASE dbname;

其中dbname是要创建的数据库的名称。

示例

下面是一个简单的例子,在 PostgreSQL 模式中创建 jiyik_db 数据库

postgres=# CREATE DATABASE jiyik_db;

createdb 命令创建数据库

createdb 是一个 SQL 命令 CREATE DATABASE 的封装。

createdb 命令语法格式如下:

createdb [option...] [dbname [description]]

参数说明:

  • dbname:要创建的数据库名。
  • description:关于新创建的数据库相关的说明。
  • options:参数可选项,可以是以下值:
序号 选项 描述
1 -D tablespace 指定数据库默认表空间。
2 -e 将 createdb 生成的命令发送到服务端。
3 -E encoding 指定数据库的编码。
4 -l locale 指定数据库的语言环境。
5 -T template 指定创建此数据库的模板。
6 --help 显示 createdb 命令的帮助信息。
7 -h host 指定服务器的主机名。
8 -p port 指定服务器监听的端口,或者 socket 文件。
9 -U username 连接数据库的用户名。
10 -w 忽略输入密码。
11 -W 连接时强制要求输入密码。

接下来我们打开一个命令窗口,进入到 PostgreSQL 的安装目录,并进入到 bin 目录,createdb 命令位于 PostgreSQL安装目录/bin 下,执行创建数据库的命令:

$ cd /Library/PostgreSQL/11/bin/
$ createdb -h localhost -p 5432 -U postgres jiyik_db
password ******

以上命令我们使用了超级用户 postgres 登录到主机地址为 localhost,端口号为 5432 的 PostgreSQL 数据库中并创建 jiyik_db 数据库。

使用上述任一方法创建数据库后,我们可以使用\l在数据库列表中检查它,即反斜杠 el 命令,如下所示

postgres=# \l
                             List of databases
   Name    |  Owner   | Encoding | Collate | Ctype |   Access privileges   
-----------+----------+----------+---------+-------+-----------------------
 jiyik_db  | postgres | UTF8     | C       | C     | 
 postgres  | postgres | UTF8     | C       | C     | 
 template0 | postgres | UTF8     | C       | C     | =c/postgres          +
           |          |          |         |       | postgres=CTc/postgres
 template1 | postgres | UTF8     | C       | C     | =c/postgres          +
           |          |          |         |       | postgres=CTc/postgres
(4 rows)

查看笔记

扫码一下
查看教程更方便