Linux下Oracle数据库自动备份脚本

合集下载

BackupExecLinux平台下Oracle备份详细配置步骤

BackupExecLinux平台下Oracle备份详细配置步骤

Backup Exec Linux平台下Oracle备份详细配置步骤。

情形如何配置Backup Exec对Linux平台下的Oracle进行备份?解释请按照以下步骤一步一步对Oracle备份进行配置:1. 首先使用root身份登陆到Oracle服务器,使用以下命令将用户oracle添加到beoper 组:2. 继续使用root身份进行Oracle 数据库访问的配置,运行AgentConfig程序并选择菜单1:3. 再次选择菜单1添加Oracle数据库访问,在此输入的用户名应该为oracle,即安装Oracle 时所使用的账号:4. 选择y确定对于Oracle操作使用完整的计算机名或IP地址,然后输入计算机名;在此例子中Oracle计算机运行在SuSE10上,计算机名称为oracle11l:注意:请确保DNS解释正确,或者修改hosts文件添加正确条目以确保解释正确。

5. 在是否使用自定义端口连接到备份服务器提示中选择n,然后在提交配置更改到配置文件中选择y以保存配置,返回菜单后选择5,再选择3退出配置程序:6. su - oracle切换到oracle用户,再次执行AgentConfig配置程序,并选择菜单2进行数据库实例配置:如果您的oracle环境不是RAC,则请忽略以下提示:If this computer is a RAC node, you must perform additional steps for configuration before you continue. Refer to the readme for these additional steps.7. 在数据库实例添加中选择菜单1,系统自动列出该OS里所安装的Oracle实例,输入您需要添加的实例的编号,在此例子中只有orcl单实例,然后输入备份时用于连接实例的账号,建议使用sys账号连接oracle实例:8. 在提示输入介质服务器的名称或IP地址时输入备份服务器的机器名;在修复编目中选择n(如果您的oracle配置了修复编目则请选择y进行修复编目的配置);然后在提交配置更改到配置文件中选择y以保存配置,返回菜单后选择5,再选择3退出配置程序:注意:请确保DNS解释正确,或者修改hosts文件添加正确条目以确保解释正确。

oracle数据库全库备份语句

oracle数据库全库备份语句

oracle数据库全库备份语句Oracle数据库是一种关系型数据库管理系统,提供了全库备份的功能,可以用来备份整个数据库。

下面列举了10个不同的Oracle数据库全库备份语句。

1. 使用RMAN备份全库:使用RMAN工具备份整个Oracle数据库,可以使用以下命令:```RMAN> backup database;```2. 使用expdp备份全库:使用expdp工具备份整个Oracle数据库,可以使用以下命令:```expdp system/password@database_name full=Y directory=backup_dir dumpfile=full_backup.dmp logfile=full_backup.log;```3. 使用exp备份全库:使用exp工具备份整个Oracle数据库,可以使用以下命令:```exp system/password@database_name full=y file=full_backup.dmp log=full_backup.log;4. 使用Data Pump备份全库:使用Data Pump工具备份整个Oracle数据库,可以使用以下命令:```expdp system/password@database_name full=Y directory=backup_dir dumpfile=full_backup.dmp logfile=full_backup.log;```5. 使用RMAN增量备份全库:使用RMAN工具进行增量备份,可以使用以下命令:```RMAN> backup incremental level 1 cumulative database;```6. 使用expdp表空间备份:使用expdp工具备份指定表空间的数据,可以使用以下命令:```expdp system/password@database_name tablespaces=tablespace_name directory=backup_dir dumpfile=tablespace_backup.dmplogfile=tablespace_backup.log;7. 使用exp表空间备份:使用exp工具备份指定表空间的数据,可以使用以下命令:```exp system/password@database_name tablespaces=tablespace_name file=tablespace_backup.dmp log=tablespace_backup.log;```8. 使用RMAN备份控制文件和参数文件:使用RMAN工具备份控制文件和参数文件,可以使用以下命令:```RMAN> backup current controlfile;```9. 使用expdp备份指定用户的数据:使用expdp工具备份指定用户的数据,可以使用以下命令:```expdp system/password@database_name schemas=user_name directory=backup_dir dumpfile=user_backup.dmp logfile=user_backup.log;```10. 使用exp备份指定用户的数据:使用exp工具备份指定用户的数据,可以使用以下命令:```exp system/password@database_name owner=user_name file=user_backup.dmp log=user_backup.log;```以上是10个不同的Oracle数据库全库备份语句,可以根据实际需求选择合适的备份方式进行数据库备份。

Oracle数据库自动备份脚本分享(超实用)

Oracle数据库自动备份脚本分享(超实用)

Oracle数据库⾃动备份脚本分享(超实⽤)前⾔众所周知数据是应⽤的核⼼部分,程序坏了换台机器重新发布就可以,但数据⼀旦丢失,造成的损失将不可挽回,程序发布到⽣产后,数据的备份便显得尤为重要,由于不⼀定所有的服务均有资⾦完成⾼级的备份如RAC和DG,在我们只有⼀台数据库服务器的,暂时采取最简单的备份策略,export出dmp进⾏保存。

⼀、备份脚本1、初始化变量,记录开始⽇志#变量sysname=填写⾃⼰的系统名称syspath=/home/oracle/databak/$sysnamev_date=$(date '+%Y%m%d%H%M%S')#⽇志⽬录logfile=${syspath}/backup.${v_date}.log#打印开始时间echo backup_time>>${logfile}date '+%Y-%m-%d %H:%M:%S' >> ${logfile}echo "backup jcd">>${logfile}echo "start_time">>${logfile}date '+%Y-%m-%d %H:%M:%S' >> ${logfile}2、进⼊oracle⽬录,设置oracle的参数#进⼊oracle⽬录,设置oracle变量cd /home/11g/app/oracle/product/11.2.0export ORACLE_HOME=/home/11g/app/oracle/product/11.2.0/db_1export PATH=$PATH:/home/11g/app/oracle/product/11.2.0/db_1/binexport ORACLE_SID=SID名称3、导出数据echo $syspathv_date=$(date '+%Y%m%d%H%M%S')filename=$syspath/jcd${v_date}.dmp#导出命令exp username/password file=${filename} compress=n >> ${logfile}echo "end_time">>${logfile}date '+%Y-%m-%d %H:%M:%S'>>${logfile}4、压缩dump包gzip ${filename}5、使⽤scp,将压缩后的包传递到备份服务器,注意备份服务器上⽬录需要预先创建scp ${filename}.gz remot_name@remot_ip:/home/weblogic/databak/备份⽬录⼆、设定脚本执⾏时间我们设定规则为每天凌晨2点执⾏⼀次,采⽤crontab来进⾏处理执⾏crontab -e,设定如下规则:0 2 * * * sh /home/oracle/db.sh⼤家可以参照上⾯去写⼀个适合⾃⼰⽣产数据库的⼀个脚本,定期备份。

ORACLE数据库自动备份_详细步骤

ORACLE数据库自动备份_详细步骤

ORACLE数据库自动备份_详细步骤1.确定备份策略:首先,需要确定数据库备份的频率和保留备份的时间长度。

备份频率可以是每天、每周或每月,而保留备份的时间长度可以是几天、几周或几个月。

2.创建备份脚本:接下来,需要编写一个脚本来执行数据库备份操作。

在脚本中,需要包含备份的类型(如完全备份、增量备份或差异备份)、备份存储位置、备份的文件名等信息。

3. 创建备份存储目录:在执行备份操作之前,需要创建一个用于存储备份文件的目录。

可以使用ORACLE的命令行工具或图形界面管理工具(如Enterprise Manager)来创建目录。

4. 安排计划任务:为了自动执行备份脚本,需要在操作系统上设置一个计划任务。

可以使用操作系统提供的任务调度工具(如cron或Windows Task Scheduler)来设置计划任务。

5. 测试备份脚本:在设置计划任务之前,建议先手动运行备份脚本来测试备份过程是否正常工作。

可以使用SQL*Plus工具来运行脚本并检查备份文件是否生成。

6.设置计划任务:在操作系统上设置一个计划任务来定期执行备份脚本。

可以指定备份的时间、日期和频率。

7. 监控备份过程:在执行备份操作期间,建议监控备份过程以确保一切正常。

可以查看备份日志或使用ORACLE的监控工具(如Grid Control)来监控备份活动。

8.保护备份文件:备份文件包含关键的数据库信息,因此需要采取措施保护备份文件免受损坏或恶意访问。

可以使用文件系统的权限设置或加密工具来保护备份文件。

9.恢复测试:定期测试备份恢复过程以确保备份文件可以成功恢复数据库。

可以使用数据库的恢复工具(如RMAN)来执行备份恢复操作,并验证恢复的数据库是否与原始数据库一致。

10.文件清理:根据备份策略,定期清理过期的备份文件,以释放存储空间并避免备份文件过多的问题。

总结:ORACLE数据库自动备份是保护数据库的重要步骤之一、通过创建备份脚本、设置计划任务和监控备份过程,可以确保数据库的数据不会丢失。

简单易懂的linux下oracle数据库备份方法

简单易懂的linux下oracle数据库备份方法

简单易懂的linux下oracle数据库备份方法在Linux环境下,对Oracle数据库进行备份是一项至关重要的工作,以确保数据的安全性和完整性。

下面将为您介绍一种简单易懂的Oracle数据库备份方法。

一、准备工作1.确保已安装Oracle数据库,并正确配置环境变量。

2.确保有足够的权限(如:dba权限)进行数据库备份操作。

3.了解数据库的名称、表空间等信息,以便进行正确的备份。

二、备份方法1.使用RMAN工具进行备份RMAN(Recovery Manager)是Oracle提供的一个强大的备份和恢复工具。

以下是一个简单的RMAN备份示例:a.连接到目标数据库:```rman target /```b.使用RMAN进行备份:```backup database;```这将备份整个数据库,包括控制文件和归档日志。

c.退出RMAN:```exit;```2.使用Oracle SQL命令进行备份a.使用SQL*Plus连接到目标数据库:```sqlplus / as sysdba```b.使用SQL命令备份整个数据库:```alter database backup controlfile to trace;```这将生成控制文件的备份脚本。

c.使用SQL命令备份表空间:```backup tablespace <表空间名称> to disk;```这将备份指定的表空间。

d.退出SQL*Plus:```exit;```三、备份文件的存储1.将备份文件存储在安全的磁带上或磁盘上。

2.建议将备份文件存储在不同的物理位置,以防止数据丢失。

四、定期检查备份1.定期检查备份文件是否完整、可用。

2.定期进行恢复测试,以确保备份的有效性。

通过以上步骤,您已经了解了一种简单易懂的Linux下Oracle数据库备份方法。

Oracle数据库在linux和windows下自动备份脚本

Oracle数据库在linux和windows下自动备份脚本

Oracle数据库在linux和windows下自动备份脚本总结本文我们主要对Oracle数据库在Linux和Windows下自动备份的脚本进行了总结,以便于我们对于Oracle数据库在不同平台上的备份的掌握。

一.Windows平台下Windows系统下Oracle数据库自动备份脚本:expData.bat的内容:exp system/system@orcl file=c:\oracle_bak\tne%date:~4,10%.dm p owner=tneexp system/system@orcl file=c:\oracle_bak\prt%date:~4,10%.dm p owner=prtexp system/system@orcl file=c:\oracle_bak\sec%date:~4,10%.dm p owner=secexp system/system@orcl file=c:\oracle_bak\tea%date:~4,10%.dm p owner=teaexp system/system@orcl file=c:\oracle_bak\pic%date:~4,10%.dm p owner=picexp system/system@orcl file=c:\oracle_bak\system%date:~4,10% .dmp owner=systempath=D:\WinRAR3.20rar a Data%date:~4,10%.rar*%date:~4,10%.dmp del*%date:~4,10%.dmp二.Linux平台下功能:1、每天数据库exp全备份2、自动删除7天前的备份,系统只保留当前7天的备份1.系统用户一览2.Oracle环境变量3.邮件设置4.创建备份目录使用oracle创建备份文件存储目录4.创建备份脚本使用oracle用户创建自动备份脚本脚本内容如下,其中的红色部分需要根据实际情况调整当前备份设置删除1个月之前的备份文件注意:date -d "1 month ago" 命令代表获取当前1个月之前的时间date -d "1 week ago"命令代表获取当前1周之前的时间date -d "1 day ago"命令代表获取当前1天之前的时间提升权限手动测试一下5.设置脚本定时执行要检查cron服务是否开启/sbin/service crond start // 启动服务/sbin/service crond stop // 关闭服务/sbin/service crond restart // 重启服务使用root执行命令用法* * * * * :代表执行时间间隔● oracle :执行脚本的用户●/home/oracle /backup.sh:执行脚本的路径Linux系统下Oracle数据库的备份:FIELNAME=/home/oracle/dmp/`date+%Y%m%d`.dmpecho$FIELNAME>/home/oracle/dmp/filename/home/oracle/product/9.2/bin/exp ccbip/'und\=2008CN(Y|N) full=y file=$FIELNAMEbzip2$FIELNAME注:创建的文件都是Oracle用户oinstall组的。

orcal数据备份语句

orcal数据备份语句

orcal数据备份语句
Oracle数据库备份语句是保障数据库数据安全的重要手段。

以下是符合标题要求的Oracle数据备份语句,希望对您有所帮助。

1.全备份语句
RMAN> BACKUP DATABASE PLUS ARCHIVELOG;
2.增量备份语句
RMAN> BACKUP INCREMENTAL LEVEL 1 DATABASE PLUS ARCHIVELOG;
3.备份指定表空间
RMAN> BACKUP TABLESPACE users;
4.备份指定数据文件
RMAN> BACKUP DATAFILE 1;
5.增量备份指定表空间
RMAN> BACKUP INCREMENTAL LEVEL 1 TABLESPACE users;
6.备份指定控制文件
RMAN> BACKUP CURRENT CONTROLFILE;
7.备份指定归档日志
RMAN> BACKUP ARCHIVELOG ALL;
8.备份指定时间段内的归档日志
RMAN> BACKUP ARCHIVELOG FROM TIME 'SYSDATE-7' UNTIL TIME 'SYSDATE';
9.备份指定备份集
RMAN> BACKUP BACKUPSET 1;
10.备份指定备份集副本
RMAN> BACKUP BACKUPSET COPY 1;
以上是Oracle数据库备份语句的一些常见用法,不同的备份需求需要使用不同的备份语句。

备份后一定要及时验证备份是否成功,并将备份文件保存在安全可靠的地方,以免发生数据丢失情况。

oracle数据库全库备份语句

oracle数据库全库备份语句

oracle数据库全库备份语句Oracle数据库是一种关系型数据库管理系统,它可以用于存储和管理大量的结构化数据。

在进行数据库管理时,备份是非常重要的一项工作,它可以保护数据库免受数据丢失和系统故障的影响。

下面列举了十个Oracle数据库全库备份的语句,以供参考。

1. 使用RMAN进行全库备份:RMAN是Oracle提供的备份和恢复工具,可以通过以下命令进行全库备份:```RMAN> BACKUP DATABASE;```2. 使用EXPDP进行全库逻辑备份:EXPDP是Oracle提供的逻辑备份工具,可以通过以下命令进行全库备份:```expdp system/password@database_name directory=backup_directory dumpfile=full_backup.dmp full=y; ```3. 使用IMPDP进行全库逻辑恢复:IMPDP是Oracle提供的逻辑恢复工具,可以通过以下命令进行全库恢复:```impdp system/password@database_name directory=backup_directory dumpfile=full_backup.dmp full=y; ```4. 使用ALTER DATABASE进行全库备份:ALTER DATABASE命令可以备份整个数据库,可以通过以下命令进行全库备份:```SQL> ALTER DATABASE BACKUP CONTROLFILE TO '/path/to/backup/controlfile.bkp';```5. 使用Data Pump进行全库备份:Data Pump是Oracle提供的数据导入导出工具,可以通过以下命令进行全库备份:```SQL> EXPDP system/password@database_nameDIRECTORY=data_pump_dir DUMPFILE=full_backup.dmp FULL=YES;```6. 使用RMAN进行全库增量备份:RMAN可以进行增量备份,只备份发生变化的数据,可以通过以下命令进行全库增量备份:```RMAN> BACKUP INCREMENTAL LEVEL 1 DATABASE;```7. 使用EXP进行全库逻辑备份:EXP是Oracle提供的逻辑备份工具,可以通过以下命令进行全库备份:```exp system/password@database_name file=full_backup.dmp full=y;```8. 使用ALTER TABLESPACE进行表空间备份:可以通过ALTER TABLESPACE命令备份指定的表空间,可以通过以下命令进行表空间备份:```SQL> ALTER TABLESPACE tablespace_name BEGIN BACKUP;```9. 使用RMAN进行全库镜像备份:RMAN可以进行镜像备份,备份数据库的所有镜像拷贝,可以通过以下命令进行全库镜像备份:```RMAN> BACKUP AS COPY DATABASE;```10. 使用EXPDP进行全库逻辑备份,并压缩备份文件:可以通过以下命令进行全库逻辑备份,并对备份文件进行压缩:```expdp system/password@database_name directory=backup_directory dumpfile=full_backup.dmp full=y compression=all;```以上是十个Oracle数据库全库备份的语句,可以根据实际需求选择其中一种或多种备份方式进行数据库的备份工作。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Linux下Oracle数据库自动备份脚本
1.用PL/SQL登录数据库
2.设置空表可导出
select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;
--然后执行查询出来的语句
3.查看数据库的字符集
查看database中的NLS_CHARACTERSET的值
a、select * from nls_database_parameters t where t.parameter='NLS_CHARACTERSET';
b、select * from v$nls_parameters where parameter='NLS_CHARACTERSET';
PARAMETER VALUE
----------------- ----------
NLS_CHARACTERSET ZHS16GBK
4.登录linuxOracle服务器
5.创建investDBbak目录(目录随意创建,在脚本中修改即可)
mkdirinvestDBbak
6.在investDBbak下创建DBBak目录、Shell目录
mkdirDBBak
mkdirshell
7.在shell目录下创建invest_test_dbbak.sh文件
vi invest_test_dbbak.sh
8.复制内容
#!/bin/sh
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export DATA_DIR=/home/oracle/investDatabak/dbbak/data
export LOGS_DIR=/home/oracle/investDatabak/dbbak/log
export DELTIME=`date -d "15 days ago" +%Y%m%d`
export BAKUPTIME=`date +%Y%m%d%H%M%S`
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
mkdir -p $DATA_DIR
mkdir -p $LOGS_DIR
echo "Starting bakup..."
echo "Bakup file path $DATA_DIR/$BAKUPTIME.dmp"
exp invest_test2/gkjr123@investtest file=$DATA_DIR/investtest$BAKUPTIME.dmp log=$LOGS_DIR/investtest$BAKUPTIME.log
echo "Delete the file bakup before 15 days..."
rm -rf $DATA_DIR/investtest$DELTIME*.dmp
rm -rf $LOGS_DIR/investtest$DELTIME*.log
echo "Delete the file bakup successfully. "
echo "Bakup completed."
注:红色文字根据具体情况修改修改
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK设置字符集,ZHS16GBK为刚才select 到的字符集
Esc : wq退出
9.修改sh文件执行权限
chmod 777 invest_test_dbbak.sh
10.测试是否可执行
./invest_test_dbbak.sh
Export terminated successfully without warnings.表示导出没有问题,如果有问题,解决
11.添加定时任务
cronttab–e
插入:5923 * * * /home/oracle/investDatabak/shell/invest_test_dbbak.sh
注:时间自行设置,设置规则网上自行搜索。

相关文档
最新文档