栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 数据库 > Oracle

Linux 自动备份oracle数据库详解

Oracle 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Linux 自动备份oracle数据库详解

Linux 自动备份oracle数据:

曾经有个同事,来回操作开发和生产的数据库,结果误删了生产的数据库,那种心情我想不是一般人能理解的,虽然说oracle可以有方法还原,但并不是彻底的。

所以,在工作中,不管是开发还是维护,备份数据库是非常有必要。

简单实用的晚间自动备份数据库小案例

步骤一、创建备份脚本,暂且命名为orabak.sh

#路径名,指定备份的路径
FILEPATH = /oracle/orabak

#根据指定日期格式,定义备份数据库文件名
FILENAME = `date + %Y%m%d_%H%M

#切换至指定路径,并创建文件夹
cd $FILEPATH 
mkdir $FILENAME 
chmod 775 $FILENAME

#oracle变量设置
export USER=oracle;
export ORACLE_SID=orcl;
export ORACLE_HOME=/oracle/app/oracle/product/11.2.0/dbhome_1;
export PATH=$ORACLE_HOME/bin:$PATH;

#导出数据库 这里使用了exp 可以根据需要使用expdp
exp scott/tiger@orcl file="$FILENAME ".dmp log="$FILENAME".log owner=scott rows=y

#打包+加压
cd ..
tar -cf $FILENAME.tar $FILENAME
rm -rf $FILENAME
gzip $FILENAME.tar
exit
EOF

步骤二、使用定时脚本crontab自动调用备份脚本

linux/aix 使用crontab -e命令,再最后一行加入改功能脚本,例如:

10 12 * * * sh  /oracle/orabak/orabak.sh

关于linux下crontab的使用

  minute hour day month dayofweek command 

    minute - 从0到59的整数
    hour - 从0到23的整数
    day - 从1到31的整数 (必须是指定月份的有效日期)
    month - 从1到12的整数 (或如Jan或Feb简写的月份)
    dayofweek - 从0到7的整数,0或7用来描述周日 (或用Sun或Mon简写来表示)
    command - 需要执行的命令(可用as ls /proc >> /tmp/proc或 执行自定义脚本的命令) 
 

    对于以上各语句,星号(*)表示所有可用的值。例如*在指代month时表示每月执行(需要符合其他限制条件)该命令。 

    整数间的连字号(-)表示整数列,例如1-4意思是整数1,2,3,4

    指定数值由逗号分开。如:3,4,6,8表示这四个指定整数。

    符号“/”指定步进设置。“/”表示步进值。如0-59/2定义每两分钟执行一次。步进值也可用星号表示。如*/3用来运行每三个月份运行指定任务。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/171538.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号