shell脚本案例:kettle资源库备份

近期客户有要求现在所使用的ETL模型必须做好备份。项目现场的ETL模型都是存储在kettle资源库中,所以也就是需要将资源库做好备份。

下面就是kettle资源库备份脚本代码。需要有几个先决条件,您才能够使用。

  • 服务器上已安装kettle客户端

pdi-ce-9.3.0.0-428,这是9.3版本,其他版本也可以,但最好不要低于8.2。

  • 确保repositories.xml中的资源库信息正确

路径:.kettle/repositories.xml(在你当前用户的家目录下);下面是个示例,大家可以拷贝拿去改下使用。

<?xml version="1.0" encoding="UTF-8"?>
<repositories>
    <repository>
        <id>PentahoEnterpriseRepository</id>
        <name>frdf</name>
        <description>qdzhang的资源库</description>
        <is_default>true</is_default>
        <repository_location_url>http://192.168.59.66:8080/pentaho</repository_location_url>
        <version_comment_mandatory>N</version_comment_mandatory>
    </repository>
</repositories>
  • 确保kettle资源库服务端没挂
#!/bin/bash

SOU_PATH="/etl/data-integration"
BAC_PATH="/shellscript/testdir/backdir"
RIQI=$(date +"%Y%m%d%H%M%S")

#切换到pan.sh文件所在目录下
cd $SOU_PATH

echo "                                       "
echo -e "\e[32m 开始导出资源库! \e[0m";

#导出kettle资源库文件,默认导出位置是pan.sh所在位置,每次导出会覆盖上次同名导出文件。
 ./pan.sh -rep frdf -user qdz -pass 1 -exprep=KettleBackup.xml &> /dev/null


echo -e "\e[32m 资源库导出完成! \e[0m";
echo "                                       "
echo -e "\e[32m 5秒后开始备份! \e[0m";

sleep 5

#将 “资源库导出文件” 复制到 “备份目录”下。
find -name "KettleBackup.xml" -exec cp {} /shellscript/testdir/backdir/KettleBackup_$RIQI \;

echo "                                       "
echo -e "\e[32m 备份已完成! \e[0m";

#切换到备份目录。
cd $BAC_PATH

#找出备份目录下7天前备份的kettle资源库文件,并删除。
find -name "*.xml" -ctime +7 -exec rm -rf {} \;

echo "                                       "
echo -e "\e[31m 已将7天前的备份删除! \e[0m";

最近时间紧,这篇没有很详细,有疑问的朋友可以留言或者私信;谢谢您的阅读。

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

姜豆豆耶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值