Java开发-实际工作经验和技巧-0001-PostgreSQL数据库存储磁盘满了重启以及应急措施

Java开发-实际工作经验和技巧-0001-PostgreSQL数据库存储磁盘满了重启以及应急措施

更多内容欢迎关注我(持续更新中,欢迎Star✨)

Github:CodeZeng1998/Java-Developer-Work-Note

技术公众号:CodeZeng1998(纯纯技术文)

生活公众号:好锅(Life is more than code)

CSDN: CodeZeng1998

其他平台:CodeZeng1998好锅

PostgreSQL数据库所在磁盘满了,要怎么重启?

  • 问题描述:PostgreSQL数据库所在磁盘满了,导致服务挂了,现需重启。
[root@0004 config]# df -hT
Filesystem                 Type      Size  Used Avail Use% Mounted on
/dev/vdb1                  xfs       2.0T  2.0T  20M  100% /data
  • 解决方案:删除掉一些数据库存储数据所在磁盘路径中无用的文件。(不腾出一点空间无法正常重启)

进行对应的重启操作

# 进入PostgreSQL数据库所在的路径
cd /xxx/postgresql/bin/

# 使用超级用户(输入密码)
su postgres

# 启动 PostgreSQL 数据库服务
# -D 选项指定 PostgreSQL 实例的数据目录位置。
# -l 选项指定服务器日志输出应写入的文件
./pg_ctl -D 数据存储目录 -l XXX.log start

# 关闭 PostgreSQL 数据库服务
./pg_ctl stop

应急方案:

重启之后就需要将数据库存储数据所在目录腾出空间,否则运行一下会又会出现上述问题。

  • 可直接删除无用的备份表或者数据(记得使用TRUNCATE或者DELETE+VACUUM的组合,条件允许建议使用TRUNCATE

  • 如果删除无用数据或者无用的备份表还是没法让服务运行起来的话,可以暂时先将不常用的数据备份到非数据库存储路径所在磁盘上,然后使用TRUNCATE或者DELETE+VACUUM的组合,将对应的备份好的的数据空间空出来,保证服务正常运行,后序进行对应的备份数据即可。

    # PostgreSQL 数据库可以使用 pg_dump 直接对数据进行快速备份
    pg_dump -h 主机名 -U 用户名 -d 数据库名 -t 待备份的数据库表名 -f /输出路径/XXX.sql
    
  • 后续肯定是需要进行对应的磁盘扩容的,从根本上解决问题。

在这里插入图片描述

上图由 Pic 生成

关键词:zoo

更多内容欢迎关注我(持续更新中,欢迎Star✨)

Github:CodeZeng1998/Java-Developer-Work-Note

技术公众号:CodeZeng1998(纯纯技术文)

生活公众号:好锅(Life is more than code)

CSDN: CodeZeng1998

其他平台:CodeZeng1998好锅

  • 12
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值