©
本文档使用
php.cn手册 发布
clusterdb [connection-option...] [--verbose | -v] [--table | -t table ] [dbname]
clusterdb [connection-option...] [--verbose | -v] [--all | -a]
clusterdb用于对PostgreSQL 数据库中的表进行重新群集。 它寻找以前群集过的表,然后在上次用过的同一个索引上再次群集。它不会动那些从未群集的表。
clusterdb是对SQL命令CLUSTER的封装。 使用这两种方法对数据库群集实际上没有任何区别。
clusterdb 接受下列命令行参数:
对所有数据库进行群集
声明要群集的数据库名字。如果没有声明这个并且没有使用-a (或者 --all) , 那么数据库名从环境变量PGDATABASE中读取。如果这个环境变量也没有设置, 那么使用用于连接的用户名。
回显clusterdb生成并发送给服务器的命令
不要显示进程消息。
不要显示程序信息。
只对table表进行群集。
在处理期间打印详细信息。
打印clusterdb版本并推出。
Show help about clusterdb command line arguments, and exit. 显示关于clusterdb命令行参数的帮助并退出。
clusterdb 还接受下列命令行参数获取连接参数:
指定服务器所在的主机。如果数值以斜杠开头,那么就用作Unix域套接字的目录。
声明服务器监听的TCP端口或者本地Unix域套接字文件的扩展。
进行连接的用户名。
不设密码提示。如果服务器需要密码身份验证并且一个密码是不能通过javascript:void(0) 其他方式(例如.pgpass文件)获得的,此连接尝试将会 时报。这个选项在批量作业和脚本中是有效的,目前没有用户能输入一个密码。
在俩接到一个数据库之前,强制clusterdb 提示密码。
连接数据库之前强制clusterdb提示口令。
This option is never essential, since clusterdb will automatically prompt for a password if the server demands password authentication. However, clusterdb will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt. 这个选项从来不是最重要的,尽管若服务器要求密码认证, clusterdb将会自动提示密码。然而, clusterdb将会浪费尝试发现服务器需要密码的尝试。 有时可以键入-W来避免避免额外的连接请求。
缺省连接参数
This utility, like most other PostgreSQL utilities, also uses the environment variables supported by libpq (see Section 31.13). 这个性能,跟大多数其他PostgreSQL性能一样,也是用libpq 支持的环境变量(参阅Section 31.13)。
出现困难的时候,参阅CLUSTER 和psql获取有关可能的错误和错误信息的讨论。 数据库服务器必须在目标主机上运行。同样, 任何缺省连接设置和libpq前端库使用的环境变量都将得以应用。
对数据库test进行群集:
$ clusterdb test
对xyzzy数据库里的foo表进行集群:
$ clusterdb --table foo xyzzy