免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2325 | 回复: 3
打印 上一主题 下一主题

两个关于postgresql的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-22 19:00 |只看该作者 |倒序浏览
想请教一下:
1、在PGSQL中,如何查看status,有没有什么命令来进行查看?(就有点象MYSQL中的show status这样的)
2、在PGSQL中,如何查看PGSQL的错误日志报告,是否是在postgresql.conf中设置一个参数?

论坛徽章:
7
数据库技术版块每日发帖之星
日期:2015-08-08 06:20:00数据库技术版块每日发帖之星
日期:2015-08-29 06:20:00数据库技术版块每日发帖之星
日期:2015-08-29 06:20:00数据库技术版块每日发帖之星
日期:2015-09-18 06:20:00数据库技术版块每周发帖之星
日期:2015-11-06 19:56:51数据库技术版块每日发帖之星
日期:2016-01-22 06:20:00数据库技术版块每日发帖之星
日期:2016-02-05 06:20:00
2 [报告]
发表于 2011-12-22 22:26 |只看该作者
1. 不太清楚mysql的show status的作用
不过postgres提供了一组视图用来收集服务器的统计信息
1). SELECT * FROM pg_stat_activity
该视图收集后台信息,每一行对应一个后台服务进程
2)select * from pg_locks
该视图表示当前哪些事务/关系 持有锁
其他可参考联机文档

2. 参考以下GUC参数

17.7.1. 在哪里记录日志
log_destination (string)
PostgreSQL 支持多种记录服务器日志的方法,包括 stderr 和 syslog 。在 Windows 里,还支持 eventlog 作为日志系统。把这个选项设置为一个逗号分隔的日志目标的列表。缺省是只记录到 stderr 。这个选项只能在服务器启动的时候或者在 postgresql.conf 文件里设置。

redirect_stderr (boolean)
这个选项允许把那些发送到 stderr 的消息捕获下来,然后把它们重定向到日志文件里。这个选项通常比记录到 syslog 更有用,因为有些消息类型不出现在 syslog 输出中(一个常见的例子是动态连接失败的消息)。这个值只能在服务器启动的时候设置。

log_directory (string)
在打开了 redirect_stderr 的时候,这个选项判断日志文件在哪个目录里创建。它可以声明成绝对路径,或者是与集群的数据目录相对的路径。这个选项只能在服务器启动的时候或者在 postgresql.conf 文件里设置。

log_filename (string)
在打开了 redirect_stderr 的时候,这个选项设置所创建的日志文件的文件名。这个数值将被当作 strftime 模式看待。因此可以用 % 逃逸声明随时间而变的文件名。如果没有出现 % 逃逸,PostgreSQL 将自动附加日志文件打开的时间戳。比如,如果 log_filename 设置为 server_log ,那么开始于 Sun Aug 29 19:02:33 2004 MST 的日志文件的名称将是 server_log.1093827753 。这个选项只能在服务器启动的时候或者在 postgresql.conf 文件里设置。

log_rotation_age (integer)
在打开了 redirect_stderr 的时候,这个选项设置一个独立日志文件的最大生存期。在数值指定的分钟过去之后,将创建一个新的日志文件。设置为零可以关闭以时间为基础的新日志文件的创建。这个选项只能在服务器启动的时候或者在 postgresql.conf 文件里设置。

log_rotation_size (integer)
在打开了 redirect_stderr 的时候,这个选项设置一个独立的日志文件的最大尺寸。在数值指定的千字节写入日志文件之后,将会创建一个新的日志文件。设置为零可以关闭以尺寸为基础的新日志文件的创建。这个选项只能在服务器启动的时候或者在 postgresql.conf 文件里设置。

log_truncate_on_rotation (boolean)
在打开了 redirect_stderr 的时候,这个选项将导致 PostgreSQL 覆盖而不是附加到任何同名的现有日志文件上。不过,覆盖只是发生在基于时间滚动而创建的新文件上,而不是在服务器启动的时候或者以尺寸为基础的滚动上。如果为 off ,将始终向已存在的文件结尾追加。比如,使用这个选项和类似 postgresql-%H.log 这样的 log_filename 设置将导致生成 24 个按小时生成的日志文件然后在这些文件上循环。这个选项只能在服务器启动的时候或者在 postgresql.conf 文件里设置。

例子:保留 7 天的日志,每天一个日志文件,叫做 server_log.Mon, server_log.Tue 等等,并且上周的日志会自动被这周的日志覆盖。把 log_filename 设置为 server_log.%a 、把 log_truncate_on_rotation 设置为 on 、把 log_rotation_age 设置为 1440 。

例子:保留 24 小时的日志,每小时一个日志,但是如果日志文件尺寸大于 1GB 也旋转日志。把 log_filename 设置为 server_log.%H%M 、把 log_truncate_on_rotation 设置为 on 、把 log_rotation_age to 60 、把 log_rotation_size 设置为 1000000 。在 log_filename 里包含 %M 允许任何尺寸驱动的旋转选取一个和开始的文件名同小时数但是名字不同的文件。

syslog_facility (string)
如果向 syslog 进行记录,那么这个选项判断要使用的 syslog "设施"。你可以从 LOCAL0(默认), LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7 中选择。又见你的系统的 syslog 守护进程文档。这个选项只能在服务器启动的时候或者在 postgresql.conf 文件里设置。

syslog_ident (string)
如果向 syslog 进行记录,这个选项决定用于在 syslog 日志中标识 PostgreSQL 的程序名。缺省是 postgres 。这个选项只能在服务器启动的时候或者在 postgresql.conf 文件里设置。

论坛徽章:
0
3 [报告]
发表于 2012-01-30 10:55 |只看该作者
学习了啊。谢谢。

论坛徽章:
0
4 [报告]
发表于 2012-03-14 10:35 |只看该作者
菜鸟啊,楼主要是把上面的步骤写详细点多好啊!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP