每天自动备份Oracle数据库
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,本文以CentOS 7.6系统与Oracle 11g为例,教你如何在Linux下设置每天自动备份Oracle数据库。一.先找到数据库的环境变量如果是在root账户下,须先登录到数据库所在账户su or
千家信息网最后更新 2026年10月31日每天自动备份Oracle数据库
| 本文以CentOS 7.6系统与Oracle 11g为例,教你如何在Linux下设置每天自动备份Oracle数据库。 |
一.先找到数据库的环境变量
如果是在root账户下,须先登录到数据库所在账户
su oraclecat ~/.bash_profile
export PATHexport ORACLE_BASE=/home/nnc_db/appexport ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1export PATH=$PATH:$ORACLE_HOME/binexport ORACLE_SID=orcl
环境变量就已经找到了!
二.编辑备份的脚本文件
vi bak.sh
先把环境变量复制粘贴到bak.sh件,
然后定义一个变量date(它的作用是为每天备份的文件命名便于识别),使用expdp命令导出数据库,代码如下:
date=$(date +%Y%m%d)expdp 数据库账号/数据库密码@数据库实例名 dumpfile=${date}_db_auto_backup.dmp schemas=数据库账号名 compression=all退出保存。
三.使用Linux的crontab命令设置定时任务
crontab -e
crontab -e的作用是使用文本编辑器设置定时任务(crontab具体用法在此不赘述);
输入后在文本编辑器输入
0 0 * * * /home/nnc_db/bak.sh
以上代码意为每天的0点0分执行/home/nnc_db下的bak.sh件,也就是第二步所创建的文件,需根据自身的备份时间以及文件目录调整;
然后重启crond服务即可
service crond restart
四.测试任务是否成功运行
根据我在网上收集的资料来看,有朋友说crontab -e设置成功后三分钟不会生效!也就是说假如你在上午10:00设置好任务,想要测试能否成功,把下次的定时任务设到10:02分,有可能会出现问题!但是这里我用
* * * * * /home/nnc_db/bak.sh
设置为每一分钟运行一次,发现没有问题。 还有一个新手大坑就是你直接运行脚本文件会在命令行输出详细过程,而设置定时任务运行是没有反应的!所以想要看自己的脚本是否自动运行了需要到/var/spool/mail/下看日志文件,如图
数据
数据库
任务
文件
运行
备份
变量
成功
命令
环境
脚本
也就是
代码
作用
文本
编辑器
账号
账户
问题
测试
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
咖啡豆
互联网科技
新华互联网科技
江苏根荣互联网科技
科技互联网政务服务
碳银互联网科技
广西互联网科技公司
郑州华宇互联网科技
互联网金融科技委员会
左右互联网络科技
成都仁贤领冠互联网科技有限公司
来此购互联网科技有限公司
互联网科技与管理
花神(南京)互联网科技有限公司
世界互联网领先科技成果获奖
皮皮虾互联网科技有限公司
广东鹅鹅鹅互联网科技有限公司
全球科技与互联网公司市值变化
恒生科技指数 中概互联网
互联网科技对化妆品行业
云信互联网科技有限公司
中国互联网科技发展
成都互联网科技公司
菲比寻常互联网科技
济南华为互联网科技产业总部基地
宁夏众和广鑫互联网科技有限公司
互联网对科技的发展
广西互联网科技孵化中心
上海京穆互联网科技有限公司
银川新华互联网科技学校是国营吗