Shell脚本定时清理Postgres数据库中历史数据
在系统日常运行中,会产生大量的日志,日志表会越来越加庞大。特别是对于云服务器使用者来说,每一块的空间都是很宝贵的。所以定时清理掉无用的历史日志,就显得很有意义了。其实实现数据库的日志清楚,有很多方法,最简单的就是配置一个数据库定时任务,定时删除旧数据就行。但是数据库定时器缺乏灵活性,如果需要修改时间节点。就需要重新修改编译定时器,对于维护人员来说,可操作性不强。本文主要介绍使用shell脚本读取配置文件,通过cronjob来实现。
配置postgres无密码登陆
编写配置文件
编写shell脚本
配置postgres无密码登陆
如果用psql命令直接登陆,会提示输入密码(psql并没有提供-password选项),就使得整个过程必须要人操作才能继续)。所以需要配置postgres无密码登陆
有多种方法可以实现postgres无密码登陆,这里采用应用比较广泛,官方推荐的使用密码文件.pgpass无密码登陆方式。
操作步骤:
1.cd ~
2.vi .pgpass,并加入需要登录的服务器的信息,格式:地址:端口:用户名:密码
3.保存退出,添加权限 chmod 0600 ~/.pgpass。可用命令ls -al |grep .pgpass查看配置的权限
4.使用【psql -h 地址 -p 端口 -U 用户名】登录
5.我的