网站首页 > 技术文章 正文
好久没更新头条号内容了,突然想起来这个号了,决定还是要继续更新,哈哈哈,希望大家继续支持,看完后动动小手关注和点赞下哦~~~
oracle12c shell脚本自动备份 线上环境可用 Centos7.4环境
shell脚本内容如下:
#!/bin/sh
#环境变量生效
backNod=e172.16.2.101 #备份库地址 提前做好免密
rt ORACLE_HOSTNAME=oracle-primary
export ORACLE_UNQNAME=oracle-primary
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/u01/app/oracle/product/12.2.0/dbhome_1/bin
backPath=/home/oracledata/
date=`date +%Y_%m_%d` # 获取系统当前日期时间
days=60 #设置删除60天之前的备份文件
serverNode=172.16.2.124
orsid=orcl #Oracle数据库服务器IP、端口、SID
orowner=byyy #备份此用户下面的数据
bakuser=byyy #用此用户来执行备份,必须要有备份操作的权限
bakpass=123456 #执行备注的用户密码
bakdir=/data/backup/oracledata #备份文件路径,需要提前创建好
bakdata=$orowner_$date.dmp #备份数据库名称
baklog=$orowner_$date.log #备份执行时候生成的日志文件名称
ordatabak=$orowner_$date.tar.gz #最后保存的Oracle数据库备份文件
#cd $bakdir #进入备份目录
#mkdir -p $bakdir/$orowner #按需要备份的Oracle用户创建目录
exp $bakuser/$bakpass@$serverNode/$orsid grants=y owner=$orowner file=$bakdir/$orowner/$bakdata #执行备份
tar -zcvf $bakdir/$orowner/$ordatabak $bakdir/$orowner/$bakdata $bakdir/$orowner/$baklog #压缩备份文件和日志文件
#导入到备份库
scp $bakdir/$orowner/$ordatabak $backNode:$backPath
find $bakdir/$orowner -type f -name *.dmp -exec rm {} \; #删除备份文件
find $bakdir/$orowner -type f -name *.log -exec rm {} \; #删除日志文件
find $bakdir/$orowner -type f -name *.tar.gz -daystart -mtime +$days -exec rm -rf {} \; #删除60天前的备份(注意:{} \中间有空格)
#删除60天之前的数据库备份文件
ssh $backNode "find $backPath -type f -name '*.tar.gz' -daystart -mtime +$days -exec rm -rf {} \;"
echo "数据库备份成功:$date"
定时任务crontab 内容如下
添加可执行权限:
chmod +x /opt/module/oracle/ordatabak.sh
添加系统定时任务 每周日执行一次数据库全量备份
echo "0 0 * * 0 /opt/module/oracle/ordatabak.sh &> /dev/null" > /data/crontab
crontab /data/crontab
crontab -l 查看定时任务
备注:如果定时任务无法正常执行,在crontab文件中添加变量
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
*/3 * * * * /usr/sbin/ntpdate 172.16.2.102 &> /dev/null
0 0 * * * /opt/module/oracle/ordatabak.sh
猜你喜欢
- 2024-10-14 详解rman备份:全库备份+表空间备份+备份控制文件+备份归档文件
- 2024-10-14 Oracle 数据库导入导出方法 oracle数据库数据导入导出
- 2024-10-14 Mysql、Oracle安全项检查表及操作脚本
- 2024-10-14 脚本化修改Oracle用户的密码以及执行sql(增删改查等)
- 2024-10-14 非交互式SHELL脚本-实现从oracle获取数据并在制定目录生成文件
- 2024-10-14 Oracle数据库出现问题?这十个脚本帮你快速定位原因
- 2024-10-14 分享3个Sysbench性能压测脚本及多并发压测过程
- 2024-10-14 Oracle数据库出现问题时,这十个脚本帮你快速定位原因
- 2024-10-14 oracle安全:国内发生多起Oracle 勒索病毒|附脚本检查
- 2024-10-14 清理Oracle数据库归档日志脚本 oracle如何清理归档日志
你 发表评论:
欢迎- 06-24发现一款开源宝藏级工作流低代码快速开发平台
- 06-24程序员危险了,这是一个 无代码平台+AI+code做项目的案例
- 06-24一款全新的工作流,低代码快速开发平台
- 06-24如何用好AI,改造自己的设计工作流?
- 06-24濮阳网站开发(濮阳网站建设)
- 06-24AI 如何重塑前端开发,我们该如何适应
- 06-24应届生靠这个Java简历模板拿下了5个offer
- 06-24服务端性能测试实战3-性能测试脚本开发
- 567℃几个Oracle空值处理函数 oracle处理null值的函数
- 566℃Oracle分析函数之Lag和Lead()使用
- 550℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 546℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 545℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 536℃【数据统计分析】详解Oracle分组函数之CUBE
- 526℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 519℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端富文本编辑器 (47)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle的函数 (57)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)