reindexdb

PostgreSQL 9.4.4 中文手册
上一页 | 上一级 |  | 下一页

# reindexdb

## 名称

reindexdb -- 重建PostgreSQL数据库索引

## 大纲

`reindexdb` [`connection-option`...] [ `--table` | `-t` `table` ] ... [ `--index` | `-i` `index` ] ... [`dbname`]

`reindexdb` [`connection-option`...] `--all` | `-a`

`reindexdb` [`connection-option`...] `--system` | `-s` [`dbname`]

## 描述

reindexdb是一个重建数据库索引的工具。

reindexdb是 SQL 命令REINDEX的包装。 因此，用哪种方法重建索引都一样。

## 选项

reindexdb accepts the following command-line arguments: reindexdb接受下列命令行参数：

`-a`
`--all`

  对所有数据库重建索引。

`[-d] `dbname``
`[--dbname=]`dbname``

  指定要重建索引的数据库的名字。如果没有指定并且也没有使用`-a` （或`--all`），那么数据库名从环境变量`PGDATABASE` 中读取。如果没有设置环境变量，那么就使用连接使用的用户名。

`-e`
`--echo`

  回显reindexdb生成并发送给数据库的命令。

`-i `index``
`--index=`index``

  仅对`index`索引进行重建。 可以通过写多个`-i`选项重建多个索引。

`-q`
`--quiet`

  不显示进程信息。

`-s`
`--system`

  对数据库的系统表重建索引。

`-t `table``
`--table=`table``

  仅对`table`表重建索引。 可以通过写多个`-t`选项给多个表重建索引。

`-V`
`--version`

  打印reindexdb的版本然后退出。

`-?`
`--help`

  显示关于reindexdb命令行参数的帮助然后退出。

reindexdb还接受下列命令行参数作为连接参数：

`-h `host``
`--host=`host``

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

`-p `port``
`--port=`port``

  指定服务器正在侦听的 TCP 端口或本地 Unix 域套接字文件的扩展(描述符)。

`-U `username``
`--username=`username``

  连接的用户名。

`-w`
`--no-password`

  从不发出密码提示问题。如果服务器要求密码认证并且密码不可用于其他意思如 `.pgpass`文件，则连接尝试将会失败。 该选项在批量工作和不存在用户输入密码的脚本中很有帮助。

`-W`
`--password`

  强制reindexdb在连接到数据库之前提示一个密码。

  这个选项从来不是至关重要的，因为如果服务器需求密码认证，则reindexdb 自动提示一个密码。不过，reindexdb 将在找出服务器想要一个密码上浪费一个连接尝试。在某些情况下，值得输入`-W` 以避免额外的连接尝试。

`--maintenance-db=`dbname``

  指定要连接到的数据库的名字以发现其他应该重建索引的数据库。如果没有指定， 那么将使用`postgres`数据库，如果该数据库不存在， 则使用`template1`。

## 环境变量

`PGDATABASE`
`PGHOST`
`PGPORT`
`PGUSER`

  缺省连接参数

这个功用，类似大多数其他PostgreSQL实用工具， 也使用由libpq支持的环境变量（参阅第 31.14 节）。

## 诊断

如果遇到麻烦，参阅REINDEX和psql 获取潜在问题和错误消息的论述。数据库服务器必须在目标主机上运行。同样， 任何libpq前端库可获得的缺省设置和环境变量都将生效。

## 注意

reindexdb可能需要多次连接PostgreSQL 服务器，且每次都询问密码。此时使用`~/.pgpass`文件将会很方便。 参见第 31.15 节获取更多信息。

## 例子

重建数据库`test`中的所有索引：

    $ reindexdb test

重建数据库`abcd`中名为`foo`的表上的`bar`索引：

    $ reindexdb --table foo --index bar abcd

## 又见

REINDEX

上一页 | 起始页 | 下一页
psql | 上一级 | vacuumdb