Aix 5.3下自动备份Oracle多个实例,并上传至FTP服务器
一、新建databack.sh文件,存放目录/opt/databack/
#数据库用户资料
USERNAME=数据库用户名(信息隐藏)
PASSWORD=数据库密码(信息隐藏)
#FTP服务器信息
FTP_SERV=FTP服务器(信息隐藏)
FTP_USER=FTP用户名(信息隐藏)
FTP_PASS=FTP密码(信息隐藏)
FTP_DIR=FTP目录(信息隐藏)
#备份目录
BACKUP_DIR=/opt/databack
#格式化日期
DATE=`date +%Y%m%d`
#定义三个实例
EXP1=第一个ORACLE实例名称(信息隐藏)
EXP2=第二个ORACLE实例名称(信息隐藏)
EXP3=第三个ORACLE实例名称(信息隐藏)
#开始备份第一个实例
export ORACLE_SID=${EXP1}
if [ -f ${BACKUP_DIR}/${EXP1}/${EXP1}_${DATE}.dmp ]; then
echo exp ${EXP1} `date +%Y-%m-%d` backup file already exists.
else
exp ${USERNAME}/${PASSWORD} file=${BACKUP_DIR}/${EXP1}/${EXP1}_${DATE}.dmp
fi
#注释:如果备份目录下存在当日的备份文件,则输出“文件已存在”的提示信息,如果没有,则备份文件。
#开始备份第二个实例
export ORACLE_SID=${EXP2}
if [ -f ${BACKUP_DIR}/${EXP2}/${EXP2}_${DATE}.dmp ]; then
echo exp ${EXP2} `date +%Y-%m-%d` backup file already exists.
else
exp ${USERNAME}/${PASSWORD} file=${BACKUP_DIR}/${EXP2}/${EXP2}_${DATE}.dmp
fi
#开始备份第三个实例
export ORACLE_SID=${EXP3}
if [ -f ${BACKUP_DIR}/${EXP3}/${EXP3}_${DATE}.dmp ]; then
echo exp ${EXP3} `date +%Y-%m-%d` backup file already exists.
else
exp ${USERNAME}/${PASSWORD} file=${BACKUP_DIR}/${EXP3}/${EXP3}_${DATE}.dmp
fi
#开始上传备份文件
ftp -n $FTP_SERV <<AUTO_FTP
user $FTP_USER $FTP_PASS
passive
binary
cd $FTP_DIR
cd ${EXP1}
put ${BACKUP_DIR}/${EXP1}/${EXP1}_${DATE}.dmp ${EXP1}_${DATE}.dmp
cd ../${EXP2}
put ${BACKUP_DIR}/${EXP2}/${EXP2}_${DATE}.dmp ${EXP2}_${DATE}.dmp
cd ../${EXP3}
put ${BACKUP_DIR}/${EXP3}/${EXP3}_${DATE}.dmp ${EXP3}_${DATE}.dmp
AUTO_FTP
二、将databack.sh加入到计划任务中
$crontab -e [回车]
* 18 * * * /opt/databack/databack.sh
#注释:每天晚18点运行此备份程序。
PS:此自动备份脚本在AIX 5.3和CentOS
相关文档:
Oracle笔记
l 关于TRUNC函数
SELECT
RELATED_ID ,
DOC_ID ,
CAT_ID ,
CAT_CODE ,
RELEASE_DATE ,
&n ......
1 操作系统备份
操作系统备份和恢复实施起来比较简单,当然也比较费时,要求系统停止使用,此过程包括关闭数据库并从系统上注销所有用户。所有访问被解除之后,系统关闭并以单用户方式重新启动,控制权交给系统管理员,这一步确保没有用户应用程序软件运行,避免修改硬盘上的数据。如果这个备份用于恢复数据库系统,那么系 ......
select * from (select t.*,rownum rn from (select * from emp) t where rownum<=10) where rn>=6;
创建分页结果集的游标
create or replace package fenyepackage as
type testcursor is ref cursor;
end fenyepackage;
创建分页存储过程
create or replace procedure fenye3(
tableName varchar2, --表名
......
oracle 中,对于一个提交的sql语句,存在两种可选的解析过程, 一种叫做硬解析,一种叫做软解析.
一个硬解析需要经解析,制定执行路径,优化访问计划等许多的步骤.硬解释不仅仅耗费大量的cpu,更重要的是会占据重要的们闩(latch)资源,严重的影响系统的规模的扩大(即限制了系统的并发行), 而且引起的问题 ......