©
本文档使用
php.cn手册 发布
createdb [connection-option...] [option...] [dbname] [description]
createdb创建一个新PostgreSQL数据库。
通常,执行这个命令的数据库用户将成为新数据库的所有者。不过, 如果拥有合适的权限,那么也可以通过-O指定其它用户。
createdb是一个SQL命令CREATE DATABASE的封装。 因此,两种方法创建的数据库都一样。
createdb接受下列命令行参数:
要创建的数据库名。该名称应该在本节点的所有 PostgreSQL数据库里面必须是唯一的。 缺省是与当前系统用户同名。
这个选项声明一个与新创建的数据库相关的注解。
指定数据库的缺省表空间
回显createdb生成并它发送到服务器的命令。
指定在此数据库中要使用的环境。这相当于指定--lc-collate和 --lc-ctype。
声明要在数据库中使用的LC_COLLATE设置。
声明要再次数据库中使用的LC_CTYPE设置。
声明此数据库的字符编码。PostgreSQL 服务器支持的字符集在Section 22.2.1里列出。
指定将拥有新数据库的用户
声明创建此数据库的模板数据库
输出createdb版本并退出。
显示关于createdb命令行的帮助并退出。
选项-D,-l,-E, -O和-T对应底层SQL命令 CREATE DATABASE的选项, 更多信息可以参考该命令的手册页。
createdb还接受下列命令行参数作为连接参数:
指定运行服务器的主机名。如果数值以斜杠开头则被用作到Unix域套接字的路径。
服务器侦听的TCP端口或一个本地Unix域套接字文件的扩展(描述符)
进行连接的用户名
从不发出密码提示。若服务器请求密码认证并且一个密码不能通过其他 像.pgpass文件的方式获得,此连接尝试将会失败。 该选项在批量作业和脚本中是很有用的,在当前没有用户可以输入密码时。
在连接到一个数据可之前,强制createdb 提示密码。
连接数据库之前强制createdb口令提示符。
该选项从不是最重要的,尽管若服务器请求密码认证 createdb会自动提示密码。然而, createdb将浪费一个连接尝试来发现服务器想 要一个密码。在一些情况下,输入-W来避免额外的连接尝试是 值得的。
如果设置了,那么就是要创建的数据库名字,除非在命令行上进行了覆盖。
缺省连接参数。如果没有在命令行上声明数据库名字, 也没有用PGDATABASE声明的话,PGUSER还决定了要创建的数据库名字。
This utility, like most other PostgreSQL utilities, also uses the environment variables supported by libpq (see Section 31.13). 这个实用程序,跟大多数其他PostgreSQL实用程序一样,也试用 libpq支持的环境变量。(参阅Section 31.13)。
如果出现错误,将会显示后端错误信息。 参阅CREATE DATABASE 和psql获取可能信息描述。数据库服务器必须在目标服务器上运行。 同样,前端库libpq使用的缺省连接设置和环境变量都将适用。
用缺省数据库服务器创建一个demo数据库:
$ createdb demo
在主机eden上创建demo数据库, 端口是5000,使用LATIN1编码方式,并且显示执行的命令:
$ createdb -p 5000 -h eden -E LATIN1 -e demo CREATE DATABASE demo ENCODING 'LATIN1';