createdb
createdb — 创建一个新的 Postgres 数据库
大纲
createdb [options]dbname[description]
输入
- -h, --host
host 指定 postmaster 所在机器的主机名。
- -p, --port
port 指定 postmaster 正在监听连接的 Internet TCP/IP 端口或本地 Unix 域套接字文件扩展名。
- -U, --username
username 要连接使用的用户名。
- -W, --password
强制提示输入密码。
- -e, --echo
回显 createdb 生成并发送给后端的查询。
- -q, --quiet
不显示响应。
- -D, --location
datadir 指定本次数据库安装的备选数据库位置。这是安装系统表的位置,而不是这个具体数据库的位置,后者可能不同。
- -E, --encoding
encoding 指定该数据库使用的字符编码方案。
dbname指定要创建的数据库的名称。该名称在本安装中的所有 Postgres 数据库中必须唯一。默认创建一个与当前系统用户同名的数据库。
description可选地指定与新创建的数据库关联的注释。
The options -h, -p, -U,
-W, and -e are passed on literally to
psql
.
输出
CREATE DATABASE数据库创建成功。
createdb: Database creation failed.(一目了然。)
createdb: Comment creation failed. (Database was created.)无法创建数据库的注释/描述。数据库本身已经创建。可以以后用 SQL 命令
COMMENT ON DATABASE创建注释。
If there is an error condition, the backend error message will be displayed. See CREATE DATABASE and psql for possibilities.
描述
createdb 创建一个新的 Postgres 数据库。执行这个命令的用户成为该数据库的所有者。
createdb 是围绕 SQL 命令 CREATE DATABASE 的一个 shell 脚本包装,它通过 Postgres 交互式终端 psql 执行。因此,用这种方法或其他方法创建数据库并没有什么特别之处。这意味着脚本必须能找到 psql,而且目标主机上有数据库服务器在运行。此外, psql 和 libpq 前端库可用的任何默认设置和环境变量都适用。
用法
用默认的数据库服务器创建数据库 demo:
$ createdb demo
CREATE DATABASE
其响应与你直接运行
CREATE DATABASE SQL 命令所得到的相同。
用主机 eden 上的 postmaster、端口 5000 创建数据库
demo,使用 LATIN1
编码方案,并看一看底层查询:
$ createdb -p 5000 -h eden -E LATIN1 -e demo
CREATE DATABASE "demo" WITH ENCODING = 'LATIN1'
CREATE DATABASE