帮酷LOGO
  • 显示原文与译文双语对照的内容
文章标签:POST  postgres  tool  LIKE  Postgresql  pos  
top-like PostgreSQL statistics viewer.

  • 源代码名称:pgcenter
  • 源代码网址:http://www.github.com/lesovsky/pgcenter
  • pgcenter源代码文档
  • pgcenter源代码下载
  • Git URL:
    git://www.github.com/lesovsky/pgcenter.git
  • Git Clone代码到本地:
    git clone http://www.github.com/lesovsky/pgcenter
  • Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/lesovsky/pgcenter
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
  • 自述文件:pgCenter Build Status

    PostgreSQL提供了各种统计信息,包括关于表。索引。函数和其他数据库对象的信息及其用法。 这些统计信息包含有关许多事情的详细信息: 但是,连接。当前查询。数据库操作 (INSERT/DELETE/UPDATE), 等等 提供了作为永久递增计数器的大多数。 pgCenter提供了方便的接口,允许按每秒查看PostgreSQL统计信息。 pgCenter还提供数据库管理任务的快速访问,例如编辑配置文件。重新加载postgres服务。查看日志文件和取消或者终止数据库后端( 通过pid或者使用状态掩码) 。 此外,如果你需要执行特定的操作,pgCenter允许你启动psql会话。

    的关键功能:
    • 具有排序和过滤功能的顶部接口;
    • 使用与psql相同的连接选项
    • 选项卡支持,允许同时使用多个postgres服务( 受 8限制)的并发工作流。
    • 显示当前系统负载和 cpu/memory/swap 使用情况
    • 显示设备和分区的输入/输出统计信息,例如
    • 显示nicstat等网络接口的网络流量统计信息;
    • 显示当前postgres状态( 。连接,准备交易,最长事务,autovacuum ) ;
    • 提供有关表。索引。函数。当前查询活动。复制的统计信息;
    • 显示pg_stat_statements统计信息:调用,行;
    • 显示pg_stat_statements统计信息:cpu计时,IO计时;
    • 显示pg_stat_statements统计信息:块 IO ( 点击,读取,dirtied,写入,临时) ;
    • 显示pg_stat_statements统计信息:本地( 临时表) IO,临时( 临时文件) IO ;
    • 提供关系尺寸信息;
    • 显示真空进度( 自 9.6 ) ;
    • 包括配置文件编辑器和postgres服务重新加载;
    • 允许查看日志文件( 查看日志的整个日志或者尾行) ;
    • 允许通过使用状态掩码来取消查询或者终止进程,或者使用状态掩码来处理整个组;
    • 提供查询报告;
    统计:
    • 当前postgres活动- postgres uptime和版本,客户端数量和状态,( 自动) 真空任务数量,每秒的报表数,最长事务的年龄;
    • pg_stat_activity - 长期运行查询和异常活动,换句话说,在事务。中止或者等待过程中空闲;
    • pg_stat_database - 数据库广泛统计;
    • pg_stat_replication - ;发送方进程统计信息,关于复制到连接到备用服务器的特定发件人的过程统计信息
    • pg_stat_user_tables - 特定数据库中每个表的统计信息,显示有关对该特定表的访问的信息;
    • pg_statio_user_tables - 特定数据库中每个表的统计信息,显示特定表上有关 I/O的信息:
    • 在特定数据库中,pg_stat_user_indexes - pg_statio_user_indexes每个索引统计信息显示关于这些特定索引的访问和 I/O 信息;
    • pg_stat_user_functions - 跟踪函数的统计信息,显示有关这些函数的执行的信息:
    • 根据不同数据库标识。用户标识和查询ID对查询执行和资源使用情况统计
    • 基于 pg_relation_size() 和 pg_total_relation_size() 函数的表大小统计信息;
    • pg_stat_progress_vacuum - 对于当前正在清空的每个后端( 包括autovacuum工作进程),都包含一行。
    系统活动统计信息
    • 负载平均和cpu使用( 用户,系统,nice,空闲,iowait,软件和硬件中断,偷窃) ;
    • 内存和交换使用,缓存,脏内存和回写活动;
    • 存储设备状态:iops 。吞吐量。延迟。平均队列和请求大小。设备利用率;
    • 网络接口统计:字节和数据包的吞吐量,不同种类的错误,饱和和利用。

    pgCenter能够在运行postgres的主机上显示当前系统活动。 尤其是,它是负载平均。cpu利用率。内存和交换使用情况。iostat和nicstat的所有这些信息从数据库主机的/proc 文件系统 收集。 如何使用简而言之,pgCenter通过使用sql函数通过postgres连接获取系统统计信息。 当pgCenter连接到postgres服务时,它决定它是远程服务还是本地服务。 在远程情况下,pgCenter将按照程序语言和基于这些函数的视图安装它的函数。 接下来,pgCenter使用这些函数和视图从procfs收集统计数据并显示给用户。 注意:当与Postgres在同一主机上运行时,它直接从/proc 获取统计数据,不使用Postgres连接。 安装和删除函数可以通过pgCenter启动参数( 请参阅帮助中内置的程序) 获得。 目前,只支持 plperlu,它有几个限制:

    • 必须将plperlu过程语言安装在要连接的数据库中。
    • 在系统中应该安装 perl:: ethtool:: 设置,它用来获取网络接口的速度和双工,并正确计算一些度量值。

    无论如何,pgCenter可以以没有这些统计函数,在这种情况下,在系统数据界面( 。la,cpu,内存,交换,io,网络) 中显示零。 Stats函数和视图体不是硬编码的,存储在源代码树中,可以自由使用。 查看共享/目录。

    操作:
    • 显示当前配置,编辑配置文件并重新加载PostgreSQL服务;
    • 尾和查看日志文件;
    • 使用后端pid取消查询或者终止后端;
    • 取消查询或者终止后端使用后端状态;
    • 切换显示表和索引统计信息的系统表和索引;
    • 重新设置PostgreSQL统计计数器;
    • 显示有关查询( 基于 pg_stat_statements )的详细报告;
    • 启动psql会话。
    推荐:
    • 使用PostgreSQL在同一主机上运行 pgCenter 。 当pgCenter使用远程PostgreSQL时,某些特性将无法发挥作用,例如。 配置编辑,日志文件视图。
    • 在数据库超级用户帐户下运行 pgCenter,例如。 postgres 。某些内部PostgreSQL信息,系统函数或者视图中的数据仅适用于特权帐户。
    安装笔记:从Ubuntu安装
    • 安装PPA并更新
    $ sudo add-apt-repository ppa:lesovsky/pgcenter
    $ sudo apt-get update
    $ sudo apt-get install pgcenter

    Debian用户可以使用这个链接创建软件包,或者从启动Launchpad下载deb软件包,并使用 dpkg -i 安装 pgCenter 。 你可以在下面的例子中看到: 启动器使用它自己的buildfarm来创建软件包和从Launchpad安装的pgCenter在某些情况下可能会出现。

    从 RHEL/CentOS/Fedora 安装

    rhel系列中的pgCenter可以从以下几个源获得:

    $ sudo yum install epel-release
    $ sudo yum --enablerepo=epel-testing install pgcenter
    • 基本Kaos测试 repo 。
    $ sudo yum install http://release.yum.kaos.io/i386/kaos-repo-6.8-0.el6.noarch.rpm
    $ sudo yum --enablerepo=kaos-testing install pgcenter
    从源安装
    • 安装 git,制作,gcc,PostgreSQL开发和ncurses开发包。
    • 克隆源和生成。
    $ git clone https://github.com/lesovsky/pgcenter
    $ cd pgcenter
    $ make
    $ sudo make install
    $ pgcenter
    在 Docker 中运行( 在 Mac OS X 上运行)
    $ docker build -t pgcenter. 
    Sending build context to Docker daemon 968.2 kB
    [...]
    $ docker run -it pgcenter -h mydbhost.com -U user -d dbname
    mydbhost.com: user@dbname require password: ******
    连接到PostgreSQL服务器

    pgCenter能够用不同的方式连接到 Postgres:

    $ pgcenter -h <host> -p <port> -U <username> -d <dbname>
    $ pgcenter -U <username> -d <dbname>
    $ pgcenter -U <username>
    $ pgcenter <dbname> <username>
    $ pgcenter <dbname>
    $ pgcenter
    • 也可以使用 libpq 环境变量,例如 PGHOST 。PGPORT 。PGUSER 。PGDATABASE 。PGPASSWORD 。 如果没有通过输入参数或者连接文件( 。pgcenterrc ) 指定连接设置或者未指定连接文件,则这些设置具有最低优先级和使用情况。
    • 连接文件存储连接设置,连接数限制为8 个( 选项卡的最大数目) 。 当未指定输入参数时使用这里文件。 如果在启动期间指定连接选项,第一个连接将从第一个选项卡开始,而其他连接将在下面的。
    • 使用输入参数指定的连接设置将具有最高优先级,并且与此类设置的连接将在第一个选项卡中打开。

    已知问题

    • 在 9.5/9.6 ( 也与其他 9.x 版本进行了测试) 下开发和测试。
    • 这是一个测试版软件,在某些情况下可能会出现 segfaults 。 当出现 segfaults occur请让我知道- 这将有助于我在这个软件做必要的改进:
      • 从最新的源代码( 请参阅上面的说明) 构建 pgcenter 。
      • 使用 ulimit -c unlimited 启用 coredumps
      • 使用 sysctl kernel.core_pattern 检查coredumps存储位置
      • 可以选择使用 sysctl -w kernel.core_pattern=core 将存储位置重新配置到当前目录
      • 复制 segfault ( 在pgCenter崩溃之后,将创建一个针对 sysctl core_pattern参数的verbosegc文件) 。
      • 使用gdb运行 pgCenter gdb./pgcenter <coredump_filename_here>
      • 运行gdb命令,获取输出并创建一个问题 。
      • 另外,保留关于操作系统的发布版本和PostgreSQL版本的信息。
    谢谢
    • Sebastien Godard,用于 sysstat
    • 和 库克(Tim Cook) 为 nicstat 。
    • Pavel Stěhule为他的文章
    • Pavel Alexeev,EPEL测试 repo ( fedora/centos )的软件包维护者。
    • Manuel Rüger,mrueg覆盖 ( gentoolinux )的ebuild维护者。
    • Novojilov,rhel/centos Linux ( 基本 Kaos repo ) 上的包维护者。
    • Nikolay 。Fetisov,Sisyphus的软件包维护者,ALT Linux 。
    • Devrim Gündüz,在官方 repo的软件包维护者。
    • 感谢你使用 pgCenter !


    文章标签:tool  pos  POST  LIKE  postgres  Postgresql  

    Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语