Postgre SQL   发布时间:2022-05-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了vcenter postgresql 空间满导致无法启动的处理大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

vcenter现在只支持POSTGResql 和 Oracle。用了embed的vPOSTGResql。

有一天忽然发现,vcenter服务连接不上。登录到服务器后,发现/storage/db空间使用100%。


临时恢复办法,我是这样处理的。

1、给vcenter 挂载一个更大的磁盘,分区,格式化。

2、然后将 /storage/db 下的所有内容复制到 新的分区 cp -P -r

3、修改/etc/fstab 将新分区代替原有分区 挂载到/storage/db

4、重新启动

这时候,可以正常启动,发现 /storage/db 增长依然非常迅猛。每天几个G,根本停不下来。。。。。。。

查阅相关文章 说要控制 数据库记录日志的事物级别 ,记录周期等等依然无法解决。。

登录到 vPOSTGResql

cd /opt/vmware/vPOSTGRes/9.0/bin

./psql -U vc -W VDBC

这个密码存放在/etc/vmware-VPX/embeddb. cfg 文件内 但我 没输入密码也进去了。。。。

使用


@H_450_39@
SELECT relname,relpages FROM pg_class ORDER BY relpages DESc;

能够查看那个表占用空间最大

我这里是 VPX_EVENT_ARG这个

没办法

truncate VPX_EVENT_ARG;

一下释放了50G空间。。。

http://www.vmware.com/cn/support/support-resources/pubs/vsphere-esxi-vcenter-server-pubs/vsphere-vcenter-server-55u2-release-notes.HTML#resolvedissues

中提到了这个问题,但vmware 也只是能提供警告。。。

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalID=2078305

http://kb.vmware.com/selfservice/search.do?cmd=displayKC&dOCTYPE=kc&dOCTYPEID=DT_KB_1_1&externalID=1025914

http://kb.vmware.com/selfservice/search.do?cmd=displayKC&dOCTYPE=kc&dOCTYPEID=DT_KB_1_1&externalID=1007453

http://pubs.vmware.com/vsphere-55/index.Jsp?topic=%2Fcom.vmware.vsphere.vcenterhost.doc%2FGUID-84DE30DD-E1C4-4E6D-899D-4756FE77CB15.HTML

以上是相关的一些文章

但是依然没有找到数据库增长的原因。

我怀疑和 vcenter 中集成的第三方 vshIEld vswitch 等管理软件有关。。。

目前能想到的办法就是

观察数据库增长的速率,保证足够的空间,写个脚本,定时执行 truncate 相关的表。。。。。。

清除数据的脚本如下

#!/bin/bash

cd /opt/vmware/vPOSTGRes/9.0/bin

service vmware-vpxd stop

./psql -U root -w -d VCDB --command "truncate vpx_event,vpx_event_arg,vpx_entity_last_event;"

service vmware-vpxd start

然后设成定时自动执行脚本就可以了。

大佬总结

以上是大佬教程为你收集整理的vcenter postgresql 空间满导致无法启动的处理全部内容,希望文章能够帮你解决vcenter postgresql 空间满导致无法启动的处理所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:分区