SYNOPSIS

CREATE DATABASE name
[ [ WITH ] [ OWNER [=] dbowner ]
[ LOCATION [=] 'dbpath' ]
[ TEMPLATE [=] template ]
[ ENCODING [=] encoding ] ]

DESCRIPTION 描述

CREATE DATABASE 创建一个新的 PostgreSQL 数据库。

要创建一个数据库,你必须是一个超级用户或者有特殊的 CREATEDB 权限。 参阅 CREATE USER [create_user(7)]。

通常,创建者成为新数据库的管理员。 超级用户可以用 OWNER 子句创建其它用户所有的数据库。 他们甚至可以创建没有特殊权限的用户所有的数据库。 有CREATEDB权限的非超级用户使用只能创建自己使用的数据库。

可以声明一个可选的数据库位置,例如,在另一块硬盘上存放数据库。 该路径必须是事先用 initlocation[initlocation(1)]  命令准备好了的。

如果路径名不包含斜杠,那么它被解释成一个环境变量, 该变量必须为服务进程所知。这样数据库管理员 可以对能够在那里创建数据库进行控制。(例如,一个用户化的选择是 'PGDATA2'。)如果服务器带着 ALLOW_ABSOLUTE_DBPATHS  (缺省时没有)选项编译, 那么也允许使用以斜杠开头为标识的绝对路径(例如, ' '/usr/local/pgsql/data')。
In either case, the final path name must be absolute and must not contain any
single quotes.

缺省时,新数据库将通过克隆标准系统数据库 template1  来创建。不同的模板可以用 TEMPLATE =  name  来写。尤其是,如果你用 TEMPLATE = template0, 你可以创建一个很纯净的数据库,只包括你的版本的 PostgreSQL 预定义的 标准对象。这个方法可以避免把任何已经加入到template1  里的本地安装对象拷贝到新数据库。

可选的编码参数允许选择数据库编码, 如果没有声明,缺省是所选用的模板数据库用的编码。

PARAMETERS 参数

name
 要创建的数据库名。
dbowner
 数据库用户的名字,他将拥有新数据库,或者是写 DEFAULT  使用缺省的(也就是执行命令的用户)。
dbpath
     在文件系统里存储新数据库的可选位置;用字串文本声明。 或者用 DEFAULT 表示使用缺省位置。 
template
 从哪个模板创建新数据库,这是模板名。或者用 DEFAULT 使用缺省模板(template1)。
encoding
 创建新数据库用的多字节编码方法。声明一个字串文本名字 (比如,'SQL_ASCII'), 或者一个整数编号,或者是 DEFAULT  表示使用缺省编码。

可选参数可以以任意顺序写,而不仅是上面显示的顺序。

NOTES 注意

CREATE DATABASE 不能在一个事务块里面执行。 block.

类似 "could not initialize database directory" 这样的错误最有可能是因为数据目录的权限不够, 或者磁盘满,或者其它文件系统的问题。在使用可选的位置的时候,运行数据库服务器的用户必须有访问该位置的权限。

使用 DROP DATABASE [drop_database(7)]  删除一个数据库。

程序 createdb[createdb(1)] 是是这个命令的封装,提供来方便使用。

在用绝对路径指定的可选数据库位置时,有一些安全和数据完整性的问题, 这就是为什么缺省时没有打开这个特性的原因。 参考 ``Managing Databases'' 获取更多的信息。

尽管我们可以通过把某数据库名声明为模板(而非 template1)从非template1数据库拷贝数据库, 但是这(还)不是一个通用的 "COPY DATABASE" 功能。 因此,我们建议当做模板使用的数据库都应该是以只读方式对待的。 参阅 ``Managing Databases'' 获取更多信息。

EXAMPLES 例子

创建一个新的数据库:

CREATE DATABASE lusiadas;

在另一个地方 ~/private_db创建新数据库, 在 shell 里执行下面的东西: shell:

mkdir private_db
initlocation ~/private_db

然后在一个 psql 会话里执行下面的东西:

CREATE DATABASE elsewhere WITH LOCATION '/home/olly/private_db';

CREATE DATABASE - 创建新数据库的更多相关文章

  1. oracle创建新数据库

    oracle创建新数据库 look here http://www.cnblogs.com/phoenixzq/p/3510854.html windows start menu>Oracle& ...

  2. odoo学习:创建新数据库及修改数据库内容

    1.切换到odoo用户 su - odoo -s /bin/bash 2. 创建新数据库 createdb v8dev 3. 初始化数据库,并配置odoo数据模式 chmod +x odoo: odo ...

  3. 【neo4j】文件管理路径、数据备份、创建新数据库、导入数据等操作记录

    neo4j一般的配置路径如下 一.备份数据 使用neo4j-admin命令. 首先,先找到数据的存储路径,然后关闭数据库. 关闭数据库的语句如下: #切换到/bin目录下 ./neo4j stop 然 ...

  4. php大力力 [023节]CREATE TABLE创建新表sql写字段备注(2015-08-27)

    2015-08-27 php大力力023.CREATE TABLE创建新表sql写字段备注 http://www.cnblogs.com/dalitongxue/p/4762182.html 参考: ...

  5. 如何在neo4j中创建新数据库?

    解决方案一: 由于使用Neo3.x创建新数据库而不删除现有数据库,所以只需在$NEO4J_HOME的conf的目录编辑neo4j.conf. 搜寻dbms.active_database=,其默认值应 ...

  6. Create database 创建数据库

    首先在ORACLE用户下进入.bash_profile文件 [oracle@linux02 ~]$ vi .bash_profile export ORACLE_SID=hldbexport ORAC ...

  7. Oracle目录结构及创建新数据库

    oracle目录结构 当需要创建新的数据仓库时我可以用 Database Configuration Assistant(数据库配置助手) admin 存放创建的不同数据库 cfgtoollogs c ...

  8. EF Core使用CodeFirst在MySql中创建新数据库以及已有的Mysql数据库如何使用DB First生成域模型

    官方教程:https://docs.microsoft.com/en-us/aspnet/core/data/?view=aspnetcore-2.1 使用EF CodeFirst在MySql中创建新 ...

  9. sql server 2008 创建新数据库报错、创建表报错、更改表的设计报错

    一:创建数据库报错如下: 二:解决,将软件以管理员身份运行 三:创建表报错如下图: 四:解决办法,在你创建的数据库下面的安全里,找到你创建的用户,属性,添加权限,红色标注,然后确定: 五:更改表的设计 ...

随机推荐

  1. bzoj1465 bzoj1045: [HAOI2008] 糖果传递&&bzoj3293: [Cqoi2011]分金币

    一道神奇的题..看到做法是排序我的心是绝望的.. 首先我们可以先求出每个小朋友应该得到的糖果数,就是平均值,然后ave-a[i]就代表要从其他小朋友那得到多少个糖果(如果是负数就是要送出糖果)然后求前 ...

  2. 配置ant编译时的jdk版本

    如下图,选择对应的sdk版本:

  3. BZOJ1143:祭祀river(二分图求有向图的最大点独立集)

    在遥远的东方,有一个神秘的民族,自称Y族.他们世代居住在水面上,奉龙王为神.每逢重大庆典, Y族都 会在水面上举办盛大的祭祀活动.我们可以把Y族居住地水系看成一个由岔口和河道组成的网络.每条河道连接着 ...

  4. EF include 预先加载

    在asp.net mvc 中,常在控制器中预先加载导航属性,以便在视图中能够显示起关联的数据. 如果不预先加载,View中就会无法呈现外键的 关联数据. 会提示EF 错误发生. 一. 模型: publ ...

  5. 【黑金教程笔记之006】【建模篇】【Lab 05 SOS信号之一】—笔记

    sos_module.v是产生SOS信号的功能模块.即有次序的输出莫斯码:点.画.间隔.control_module.v是一个定时触发器,每一段时间使能sos_module.v. 模块: /***** ...

  6. Codeforces Round #209 (Div. 2) C - Prime Number

    传送门 题意 给出n个数及x,求 \[\frac{\sum _{i=1}^n x^{a_1+a_2+...+a_{i-1}+a_{i+1}+...a_n}}{\prod_{i=1}^n x^{a_i} ...

  7. bzoj 1625: [Usaco2007 Dec]宝石手镯【背包】

    裸的01背包 #include<iostream> #include<cstdio> using namespace std; int c,n,w,v,f[20001]; in ...

  8. 洛谷P4331 [BOI2004]Sequence 数字序列(左偏树)

    传送门 感觉……不是很看得懂题解在说什么? 我们先把原数列$a_i-=i$,那么本来要求递增序列,现在只需要求一个非严格递增的就行了(可以看做最后每个$b_i+=i$,那么非严格递增会变为递增) 如果 ...

  9. jenkins一次构建两次触发job问题

    具体内容详见: https://issues.jenkins-ci.org/browse/JENKINS-21464?focusedCommentId=250183&page=com.atla ...

  10. [POI2009]SLO

    Description 对于一个1-N的排列(ai),每次你可以交换两个数ax与ay(x<>y),代价为W(ax)+W(ay) 若干次交换的代价为每次交换的代价之和.请问将(ai)变为(b ...