概述
analyzedb -d dbname
{ -s schema |
{ -t schema.table
[ -i col1[, col2, ...] |
-x col1[, col2, ...] ] } |
{ -f | --file} config-file }
[ -l | --list ]
[ --gen_profile_only ]
[ -p parallel-level ]
[ --full ]
[ -v | --verbose ]
[ --debug ]
[ -a ]
analyzedb { --clean_last | --clean_all }
analyzedb --version
analyzedb { -? | -h | --help }
选项介绍
–clean_last
删除由上一次analyzedb操作生成的状态文件。所有的其他选项, 除了-d都会被忽略。
–clean_all
删除由analyzedb生成的所有状态文件。 所有其他操作除了-d都会被忽略。
-d dbname
指定包含要分析的表的数据库的名称。如果未指定此选项,则从环境变量PGDATABASE 中读取数据库名称。如果未设置PGDATABASE,则使用连接指定的用户名。
–debug
如果指定,则将日志级别设置为调试。在执行命令期间,调试级别信息被写入日志文件和命令行。 这些信息包括公用程序执行的命令和每个ANALYZE操作的持续时间。
-f config-file | --file config-file
包含要分析的表的列表的文本文件。可以指定当前目录的相对文件路径。该文件每行列出一个表。表名必须使用模式名称进行限定。或者,可以使用-i或 -x来指定列名。文件中国不允许其他选项。其他诸如–full 的选项必须在命令行中指定。只有一个选项可用于指定要分析的文件:-f或–file, -t ,或 -s。当在多个表上执行ANALYZE操作时候,analyzedb 会创建并行会话来并行分析表。该-p选项控制并发会话的最大数目。在下面的示例中,第一行施加了一个ANALYZE操作对表public.nation, 第二行仅对public.lineitem表的l_shipdate和 l_receiptdate列施加了一个ANALYZE操作。
public.nation
public.lineitem -i l_shipdate, l_receiptdate
–full
对所有指定的表执行ANALYZE操作。即使统计数据是最新的,也会执行该操作。
–gen_profile_only
不执行ANALYZE操作,但是更新analyzedb收集的表统计信息快照。 如果有其他选项制定了表或者模式名,该工具仅更新指定表的快照信息。如果ANALYZE命令在数据库表上运行并且您想更新analyzedb该表 的快照信息,请指定该选项。
-i col1, col2, …
可选的,必须用-t选项指定。对于使用-t选项指定的表, 仅收集指定列的统计信息。
只能指定-i, 或-x。这两个选项不能同时指定。
-l | --list
列出将用指定选项进行分析的表格。ANALYZE操作不执行。
-p parallel-level
并行分析的表的数量。并行级别可以是1到10之间的整数,包含首尾值。默认值是5.
-s schema
指定要分析的模式。模式中的所有表将被分析。只能在命令行中指定一个模式名称。
只有一个选项可用于指定要分析的文件:-f或–file, -t,或 -s。
-t schema.table
只收集schema.table的统计信息。 表名称必须使用模式名称进行限定。在命令行上只能指定一个表名。用户可以指定-f 选项来指定文件中的多个表,或者指定-s选项来指定模式中的所有表。只有其中一个选项可用于指定要分析的文件:-f或–file, -t,或 -s。
-x col1, col2, …
可选的,必须用-t选项来指定。对于使用-t选项指定的表, 请排除指定列上的收集的统计信息。统计信息只收集在未列出的列上。只能指定-i, 或-x。这两个选项不能同时指定。
-a
静默模式,不提示用户确认。
-h | -? | --help
展示在线帮助。
-v | --verbose
如果指定,则将日志记录级别设置为verbose,以在命令执行过程中向日志文件和命令行写入附加信息。 这些信息包括所有要分析的表的列表(包括分区表的子叶子分区)。输出还包括每个ANALYZE 操作操作的持续时间。
–version
显示此工具的版本。