众所周知数据是应用的核心部分,程序坏了换台机器重新发布就可以,但数据一旦丢失,造成的损失将不可挽回,程序发布到生产后,数据的备份便显得尤为重要,由于不一定所有的服务均有资金完成高级的备份如RAC和DG,在我们只有一台数据库服务器的,暂时采取最简单的备份策略,export出dmp进行保存。
一、备份脚本
1、初始化变量,记录开始日志
#变量 sysname=填写自己的系统名称 syspath=/home/oracle/databak/$sysname v_date=$(date '+%Y%m%d%H%M%S') #日志目录 logfile=${syspath}/backup.${v_date}.log #打印开始时间 echo backup_time>>${logfile} date '+%Y-%m-%d %H:%M:%S' >> ${logfile} echo "backup jcd">>${logfile} echo "start_time">>${logfile} date '+%Y-%m-%d %H:%M:%S' >> ${logfile}
2、进入oracle目录,设置oracle的参数
#进入oracle目录,设置oracle变量 cd /home/11g/app/oracle/product/11.2.0 export ORACLE_HOME=/home/11g/app/oracle/product/11.2.0/db_1 export PATH=$PATH:/home/11g/app/oracle/product/11.2.0/db_1/bin export ORACLE_SID=SID名称
3、导出数据
echo $syspath v_date=$(date '+%Y%m%d%H%M%S') filename=$syspath/jcd${v_date}.dmp #导出命令 exp username/password file=${filename} compress=n >> ${logfile} echo "end_time">>${logfile} date '+%Y-%m-%d %H:%M:%S'>>${logfile}
4、压缩dump包
gzip ${filename}
5、使用scp,将压缩后的包传递到备份服务器,注意备份服务器上目录需要预先创建
scp ${filename}.gz remot_name@remot_ip:/home/weblogic/databak/备份目录
二、设定脚本执行时间
我们设定规则为每天凌晨2点执行一次,采用crontab来进行处理
执行crontab -e,设定如下规则:
0 2 * * * sh /home/oracle/db.sh
大家可以参照上面去写一个适合自己生产数据库的一个脚本,定期备份。
迷你世界越南服 安卓版v1.7.15
迷你世界越南服是一款精美的3D沙盒游戏,拥有极高的创作自由度
糖饼外传内置菜单 安卓版v1.0.87
糖饼外传内置菜单是一款非常好玩的模拟经营类手游,玩家在游戏中
我的世界化学交换空岛整合包 最新版v1.0
我的世界化学交换空岛整合包是一款像素风格的沙盒生存游戏,游戏
创造厨房免广告版 v1.0.10
创造厨房无广告版是一款像素风模拟经营类手游,玩家们将在这里化
SimCity BuildIt无限金币版 安卓修改版v1.60.1.133743
SimCity BuildIt无限金币版是经过破解的版本,在