PostgreSQL 8.2.3 中文文档
后退快退快进前进

createdb

名称

createdb -- 创建一个新数据库

语法

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

描述

createdb 创建一个新 PostgreSQL 数据库。

通常,执行这个命令的数据库用户将成为新数据库的所有者。不过,如果拥有合适的权限,那么也可以通过 -O 指定其它用户。

createdb 是一个 SQL 命令 CREATE DATABASE 的封装。因此,两种方法创建的数据库都一样。

选项

createdb 接受下列命令行参数:

dbname

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

description

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

-D tablespace
--tablespace tablespace

指定数据库的缺省表空间

-e
--echo

回显 createdb 生成并它发送到服务器的命令。

-E encoding
--encoding encoding

声明此数据库的字符编码。PostgreSQL 服务器支持的字符集在节21.2.1里列出。

-O owner
--owner owner

指定将拥有新数据库的用户

-q
--quiet

不显示响应(安静模式)

-T template
--template template

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

选项 -D, -E, -O, -T 对应底层 SQL 命令 CREATE DATABASE 的选项,更多信息可以参考该命令的手册页。

createdb 还接受下列命令行参数作为连接参数:

-h host
--host host

指定运行服务器的主机名。如果数值以斜杠开头则被用作到 Unix 域套接字的路径。

-p port
--port port

服务器侦听的 TCP 端口或一个本地 Unix 域套接字文件的扩展(描述符)

-U username
--username username

进行连接的用户名

-W
--password

强制口令提示符

环境变量

PGDATABASE

如果设置了,那么就是要创建的数据库名字,除非在命令行上进行了覆盖。

PGHOST
PGPORT
PGUSER

缺省连接参数。如果没有在命令行上声明数据库名字,也没有用 PGDATABASE 声明的话,PGUSER 还决定了要创建的数据库名字。

诊断

如果出现错误,将会显示后端错误信息。参阅 CREATE DATABASEpsql 获取可能信息描述。数据库服务器必须在目标服务器上运行。同样,前端库 libpq 使用的缺省连接设置和环境变量都将适用。

例子

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

$ createdb demo
CREATE DATABASE

应答将会和运行 CREATE DATABASE 命令的结果相同。

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

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

又见

dropdb, CREATE DATABASE, 环境变量(节29.12)

后退首页前进
clusterdb上一级createlang