Linux下oracle数据库备份方案
1、root用户登录服务器
#新建Oracle数据库备份目录
mkdir -p /backup/oracledata #设置目录权限为oinstall用户组的oracle用户(用户oracle与用户组oinstall是在安装Oracle数据库时设置的)
chown -R oracle:oinstall /backup/oracledata -R
2、新建Oracle数据库备份脚本
vi /backup/oracledata/ordatabak.sh #新建文件,输入以下代码#!/bin/sh
export ORACLE_BASE=/data/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LANG=C
export NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
# oracle用户的系统环境变量路径:/home/oracle/.bash_profile
date=`date +%Y_%m_%d` #获取系统当前日期时间
days=7 #设置删除7天之前的备份文件
orsid=`192.168.0.198:1521/orcl` #Oracle数据库服务器IP、端口、SID
orowner=OSYUNWEI #备份此用户下面的数据
bakuser=OSYUNWEI #用此用户来执行备份,必须要有备份操作的权限
bakpass=OSYUNWEI #执行备注的用户密码
bakdir=/backup/oracledata #备份文件路径,需要提前创建好
bakdata=$orowner"_"$date.dmp #备份数据库名称
baklog=$orowner"_"$date.log #备份执行时候生成的日志文件名称
ordatabak=$orowner"_"$date.tar.gz #最后保存的Oracle数据库备份文件
cd $bakdir #进入备份目录
mkdir -p $orowner #按需要备份的Oracle用户创建目录
cd $orowner #进入目录
exp $bakuser/$bakpass@$orsid grants=y owner=$orowner file=$bakdir/$orowner/$bakdata log=$bakdir/$orowner/$baklog #执行备份
tar -zcvf $ordatabak $bakdata $baklog #压缩备份文件和日志文件
find $bakdir/$orowner -type f -name "*.log" -exec rm {} \; #删除备份文件
find $bakdir/$orowner -type f -name "*.dmp" -exec rm {} \; #删除日志文件
find $bakdir/$orowner -type f -name "*.tar.gz" -mtime +$days -exec rm -rf {} \; #删除7天前的备份(注意:{} \中间有空格)
:wq #保存退出chmod +x /backup/oracledata/ordatabak.sh #添加脚本执行权限
3、设置定时
vi /etc/crontab #编辑系统任务计划,添加以下代码到最后一行30 2 * * * oracle /backup/oracledata/ordatabak.sh #每天凌晨2点30分,以oracle用户执行ordatabak.sh备份文件:wq! #保存退出service crond restart #重启crond
每天凌晨2点30分,会自动备份数据库到/backup/oracledata/OSYUNWEI目录中,保存为.tar.gz压缩文件,并且删除7天前的备份,即只保留最近7天的数据。
备注:以上所有的代码都是在英文半角状态下输入。
Linux下oracle数据库备份方案相关推荐
- linux oracle 用户创建,LINUX下Oracle数据库用户创建方法详解
本文实例分析了LINUX下Oracle数据库用户创建方法.分享给大家供大家参考,具体如下: 1)登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切 ...
- 使用OCCI连接Linux下Oracle数据库
OCCI(Oracle C++ Call Interface):C++程序与Oracle数据库实现交互的应用程序接口,它以动态连接库的形式提供给用户.OCCI对OCI实行了对象级的封装,其底层仍是OC ...
- linux数据库实例开机启动不了,linux下Oracle数据库实例开机自启动设置
linux下数据库实例开机自启动设置 1.改动/oratab [root@org54 ~]# vi/etc/oratab --把N改为Y,例如以下提示 # This file is used ...
- Linux下Oracle数据库的搭建(新手)
最近由于需要安装了几台服务器 ,由于网上找不到一些过程中遇到的问题,所以把解决方法写出来吧 ! 首先安装数据库服务器 如题装的是Oracle 系统环境是Redhat 6.5 x86 64位虚 ...
- linux创建数据库Oracle用户,linux下ORACLE数据库中创建新用户
http://www.cnblogs.com/cloudwalf/archive/2008/09/04/1284033.html http://www.aiisen.com/oracle-lin ...
- Linux下Oracle数据库安装详解
安装环境 系统:Linux CentOS7 64位 Oracle版本:Oracle 11g R2 一.安装前准备 1.创建运行oracle数据库的系统用户和用户组 [yxc@localhost ~]$ ...
- Linux系统mongdb还原数据库,linux下mongodb数据库备份与还原
MongoDb数据库备份还原 数据库迁移,可视化工具NoSQLBooster for MongoDB 付费版才具有数据导入功能.代价过高,索性采起命令行web 数据备份 备份命令mongodb mon ...
- linux下oracle数据库升级,Linux下升级Oracle 10
环境:虚拟机 OS: Linux 5 Oracle 升级前版本: 10.2.0.0.1 先关闭数据库和监听 然后杀掉所有的oracle进程 ps -ef |grep oracle |grep -v g ...
- linux下oracle数据库升级,Oracle数据库在LinuxAS4升级
任务:Oracle10.2.0.2升级到Oracle10.2.0.3系统:LinuxAS4Oracle版本:10.2.0.2Oracle:一个INSTANCE,300G左右数据,单机 不才第一次做升级 ...
- Linux下Mysql数据库备份和恢复全攻略
[IT168 专稿]很多用户都有过丢失宝贵数据的经历,随着大量的数据被存入到MySQL数据库中,再加上错误地使用DROP DATABASE命令.系统崩溃或对表结构进行编辑等操作,都可能酿成灾难性的损失 ...
最新文章
- tf.squared_difference
- Linux——进程系列知识详述(操作系统、PCB进程控制块、查看进程状态等)
- elasticsearch 索引存储深入详解(Elasticsearch教程03)|MVP讲堂
- 使用从mysql中取数据
- ======第一章操作系统引论======
- C语言 — 编程规范
- leetcode 189. 旋转数组(Rotate Array)
- WordPress 实用SEO插件总结
- SPSS 项目分析(图文+数据集)【SPSS 032期】
- 计算机内加减法的溢出处理
- 你不知道的智联招聘网功能?
- 60秒学脑科学常识——《科学美国人》专栏文集
- 回顾– DRAMS 4.0域注册软件
- node中解压zip文件
- 数字麦克风灵敏度信噪比等指标解读
- mysql 存储过程 sqlyog_sqlyog写mysql存储过程
- mdx和mdd格式的词典解析Android JNI方式实现
- 思杰pvs服务器压力无法最大化,Windows Server 2008 Hyper-V上运行思杰XenDesktop之最优范例...
- 艾伟也谈项目管理,工作感言:任务分配及管理
- MODTRAN 辐射模拟