9.1参考2

From PostgreSQL wiki

(Difference between revisions)
Jump to: navigation, search
(createdb — 创建一个新的 PostgreSQL 数据库)
(createdb — 创建一个新的 PostgreSQL 数据库)
Line 177: Line 177:
 
--locale=locale
 
--locale=locale
  
     Specifies the locale to be used in this database. This is equivalent to specifying both --lc-collate and --lc-ctype.
+
     在数据库中可以使用区域设置. 需要同时指定 --lc-collate --lc-ctype.
  
 
--lc-collate=locale
 
--lc-collate=locale
  
    Specifies the LC_COLLATE setting to be used in this database.
+
  在数据库中指定 LC_COLLATE.
 +
 
 
--lc-ctype=locale
 
--lc-ctype=locale
  
    Specifies the LC_CTYPE setting to be used in this database.
+
  数据库中指定 LC_CTYPE.
  
 
-O owner
 
-O owner
Line 193: Line 194:
  
 
-T template
 
-T template
 +
 
--template=template
 
--template=template
  
Line 201: Line 203:
 
     显示出 createdb 命令的版本号.
 
     显示出 createdb 命令的版本号.
 
-?
 
-?
 +
 
--help
 
--help
  
Line 216: Line 219:
  
 
-p port
 
-p port
 +
 
--port=port
 
--port=port
  
Line 225: Line 229:
  
 
   连接的用户名.
 
   连接的用户名.
 +
 
-w
 
-w
 +
 
--no-password
 
--no-password
  
  强制口令提示符。
+
  关闭口令提示符。
  
 
password.
 
password.
 +
 
-W
 
-W
 +
 
--password
 
--password
 
      
 
      
Line 241: Line 249:
  
 
     如果设置了,那么就是要创建的数据库名字,除非在命令行上覆盖了。  
 
     如果设置了,那么就是要创建的数据库名字,除非在命令行上覆盖了。  
 +
 
PGHOST
 
PGHOST
 +
 
PGPORT
 
PGPORT
 +
 
PGUSER
 
PGUSER
  

Revision as of 03:12, 22 July 2013

Contents

clusterdb — 对一个PostgreSQL数据库进行建簇

名称

clusterdb -- 对一个PostgreSQL数据库进行建簇

摘要

clusterdb [connection-option...] [--verbose | -v] [--table | -t table ] [dbname]
clusterdb [connection-option...] [--verbose | -v] [--all | -a]
 

描述

clusterdb 是一个用于对某个 PostgreSQL 数据库中的表进行重新建簇的工具. 它寻找以前建过簇的表,然后在上次用过的同一个索引上再次建簇. 没有创建过簇的表将不会受到影响.

clusterdb 是对 SQL 命令 CLUSTER 的封装.使用这两种方法对数据库建簇实际上没有任何区别.


clusterdb 接受的参数说明:

-a

--all

  对所有数据库建簇.

[-d] dbname

[--dbname=]dbname

  声明要建簇的数据库名字. 如果没有声明这个并且没有使用 -a(或者 --all), 那么数据库名从环境变量 PGDATABASE 中读取。 如果那个也没有设置,那么使用连接数据库的用户名。 

-e

--echo

   回显 clusterdb 生成并发送给服务器的命令。 

-q

--quiet

  不显示响应信息。 


-t table

--table=table


   只对表 table 建簇。 

-v

--verbose


   在程序处理过程中,显示详细的处理信息...

-V

--version


   显示 clusterdb 的版本信息,然后退出.

-?

--help

   显示 clusterdb 命令的帮助信息,然后退出.

clusterdb 还接受下列命令行参数获取连接参数:

-h host

--host=host

  声明服务器运行所在的机器的主机名。如果数值以斜杠开头, 那么就用作 Unix 域套接字的目录。 

-p port

--port=port

 声明服务器监听的网际网 TCP 端口或者本地 Unix 域套接字文件扩展。 

-U username

--username=username

   进行连接的用户名 。

-w

--no-password

   当服务器需要密码验证,或者一些脚本文件中,需要使用密码.

-W

--password

   强制提示口令。

环境

PGDATABASE PGHOST PGPORT PGUSER

   默认连接参数.

这个命令,和大多数PostgreSQL命令一样,也是使用libpq 支持的环境变量(详见:31.13) 诊断

出现困难的时候,参阅 CLUSTER 和 psql 获取有关可能的错误和错误信息的讨论。 数据库服务器必须在目标主机上运行。同样,任何缺省连接设置和 libpq 前端库使用的环境变量都将得以应用。 例子

对数据库 test 建簇: :

$ clusterdb test

对数据库 (xyzzy) 中的表( foo )建簇:

$ clusterdb --table foo xyzzy

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

Name

createdb -- 创建一个新的 PostgreSQL 数据库

Synopsis

createdb [connection-option...] [option...] [dbname] [description]

描述

createdb 创建一个新的 PostgreSQL 数据库。

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

createdb 是一个 SQL 命令 CREATE DATABASE 的封装。 因此,用哪种方法创建数据库都没什么特别的。

选项

createdb 接受下列命令行参数:

dbname

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

description

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

-D tablespace

--tablespace=tablespace

  声明数据库的缺省表空间。 

-e

--echo

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

-E encoding

--encoding=encoding

   声明用于此数据库的字符编码方式。 PostgreSQL 服务器支持的字符集在 Section  22.3.1. 里列出。

-l locale

--locale=locale

   在数据库中可以使用区域设置. 需要同时指定 --lc-collate 和--lc-ctype.

--lc-collate=locale

  在数据库中指定 LC_COLLATE.

--lc-ctype=locale

  数据库中指定 LC_CTYPE.

-O owner

--owner=owner

  指定新创建数据库的管理用户.

-T template

--template=template

   指定创建数据库的模板数据库.

-V --version

   显示出 createdb 命令的版本号.

-?

--help

   显示出 createdb 命令的帮助信息.

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

createdb 同样接受以下的链接参数:

-h host

--host=host

   声明运行服务器的主机名。 如果数值以斜杠开头,则它被用做到 Unix 域套接字的路径。 

-p port

--port=port

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

-U username

--username=username

  连接的用户名.

-w

--no-password

关闭口令提示符。 

password.

-W

--password

   强制口令提示符。 

环境

PGDATABASE

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

PGHOST

PGPORT

PGUSER

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

这个命令和其它的PostgreSQL一样, 同样可以使用被libpq 支持的环境变量。 (详见 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';

createlang — 定义一种新的 PostgreSQL 过程语言

撒飞洒

createuser — 定义一个新的 PostgreSQL 用户帐户

dropdb — 删除一个现有 PostgreSQL 数据库

droplang — 删除一种 PostgreSQL 过程语言

dropuser — 删除一个 PostgreSQL 用户帐户

ecpg — 嵌入的 SQL C 预处理器

pg_config — 检索已安装版本的 PostgreSQL 的信息

pg_dump — 将一个PostgreSQL数据库抽出到一个脚本文件或者其它归档文件中

pg_dumpall — 抽出一个 PostgreSQL 数据库集群到脚本文件中

pg_restore — 从一个由 pg_dump 创建的备份文件中恢复 PostgreSQL 数据库。

psql — PostgreSQL 交互终端

reindexdb -- 重新建立一个数据库索引

vacuumdb — 收集垃圾并且分析一个PostgreSQL 数据库

Personal tools