createdb

Name

createdb — 创建一个新的 Postgres 数据库

createdb [options...] [dbname] [description]

输入

-h, --host host

声明运行 postmaster 的机器的主机名. 如果主机名以斜扛开头,则它被用做到 Unix 域套接字的路径.

-p, --port port

声明 postmaster 侦听的等待连接的互联网 TCP/IP 端口或一个本地 Unix 域套接字文件扩展(描述符).

-U, --username username

进行联接的用户名。

-W, --password

强制口令提示符。

-e, --echo

回显 createdb 生成的查询并且把它发送到后端。

-q, --quiet

不显示响应。

-D, --location datadir

声明变更了的数据库安装(节点)的位置. 又见 initlocation

-T, --template template

声明创建此数据库的模板数据库.

-E, --encoding encoding

声明用于此数据库的字符编码方式。

dbname

声明要创建的数据库名.该名称应该在本节点的 Postgres 所有数据库里面是唯一的. 缺省是与当前系统用户同名。

description

这个选项声明一个与新创建的数据库相关的注解。

选项 -h-p-U-W-e 是以文本形式传递给 psql。 选项 -D, -T-E 转换为下层的 SQL 命令 CREATE DATABASE 的选项;参考该条目获取更多相关信息.

输出

CREATE DATABASE

成功创建数据库。

createdb: Database creation failed.

(什么都可能)

createdb: Comment creation failed. (Database was created.)

不能给该数据库创建注解/描述。数据库本身已经创建成功了。 你可以稍后用SQL 命令 SQL 命令 COMMENT ON DATABASE 创建评注.

如果出现错误,将会显示后端错误信息。参阅 CREATE DATABASEpsql 获取可能信息描述。

描述

createdb 创建一个新的 Postgres 数据库, 执行此命令的用户成为该数据库的管理员。

createdb 是一个 shell 脚本,通过 Postgres 交互终端 psql封装了 SQL 命令 CREATE DATABASE。 因此,用哪种方法创建数据库都没什么特别的。 这意味着 psql 必须能被脚本找到并且有一个数据库服务器在目标主机上运行。同样,任何 psqllibpq 前端库可获得的缺省 设置和环境变量都将生效。

用法

用缺省数据库服务器创建一个数据库 demo

$ createdb demo
CREATE DATABASE
响应信息与运行 CREATE DATABASE SQL 命令时一样。

用在主机 eden 上的 postmaster 创建数据库 demo, 端口是 5000,使用 LATIN1 编码方式,并且显示执行的查询:

$ createdb -p 5000 -h eden -E LATIN1 -e demo
CREATE DATABASE "demo" WITH ENCODING = 'LATIN1'
CREATE DATABASE