您当前的位置:首页 > 电脑百科 > 数据库 > Oracle

oracle数据库:数据的导入导出及备份

时间:2019-12-06 13:34:22  来源:  作者:

相信大家在客户现场维护的时候一定会适时地做一些备份操作,对关键业务建立完备的备份机制,本篇文章就是给大家一个linux环境下的参考。

一、 用imp/exp实现数据的导入导出

(一)环境配置

1.执行环境:

exp/imp可以在客户端执行也可以在服务器端执行,在客户端执行需要先安装有oracle的客户端,如果是linux系统,就是以oracle用户登录,在控制台下执行。

2.如果没有配置oracle的exp/imp命令的环境变量,则进入到oracle的bin目录:

# cd /opt/oracle_11/App/oracle/product/11.2.0/dbhome_1/bin

3.配置临时环境变量:

# export ORACLE_HOME="/opt/oracle_11/app/oracle/product/11.2.0/dbhome_1"

# export ORACLE_SID=glassfish

4.切换到oracle用户

# su oracle

(二)exp/imp方式的导入导出

注意:

红色标记部分为可按需求修改部分。

 

二、 数据泵实现数据导入导出的步骤

注意:

红色标记部分为可按需求修改部分,导出部分表时可在"Expdp [用户名A]/[密码]@[数据库名]"后跟"TABLES=需要导出的部分表的表名"。

三、 Linux环境下数据泵实现手动及自动备份

(一)创建脚本文件

命令格式: touch 路径/文件名.sh

例如:

输入命令:touch /home/backup.sh

(二)写备份脚本

首先进入脚本:vi命令

vi /home/backup.sh

在脚本内写入:

(三)执行脚本文件

oracle数据库:数据的导入导出及备份

 

文本框: #! /bin/shexport NLS_LANG="AMERICAN_AMERICA".UTF8export ORACLE_BASE=/home/oracle/appexport ORACLE_HOME=/home/oracle/app/product/11g/db_1export ORACLE_SID=orclexport PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin#设置备份文件格式#设置删除备份文件的格式,当前为删除1个月前的备份backuptime=`date +"%Y%m%d%H"`deletetime=`date -d "7 day ago" +"%Y%m%d%H"`#开始删除1个月前的备份rm -f /home/oracle/backup/orcl_$deletetime.dmprm -f /home/oracle/backup/orcl_$deletetime.log#开始备份expdp system/oracle@orcl file=/home/oracle/backup/system_$backuptime.dmp log=/home/oracle/backup/system_$backuptime.log schemas=systemexpdp system/oracle@orcl file=/home/oracle/backup/system_$backuptime.dmp log=/home/oracle/backup/system_$backuptime.log schemas=system

1、手动执行脚本文件

命令格式:sh 路径/文件名.sh

例如:sh /home/backup.sh

2、定时自动执行脚本

(1)安装crond

如果没有安装crond服务就先装上服务。

检查服务状态:service crond status

(2)修改crontab内容

输入命令:crontab –e

进入后继续输入命令:0 0 /7 * /home/backup.sh

设置为每7天执行一次脚本文件

然后,保存退出:wq

sh脚本前面五个字段分别表示分钟(0-59)、小时(0-23)、日(1-31)、月(0-12)、星期几(0-6)后面的为脚本所在目录

oracle数据库:数据的导入导出及备份

 

3. 重新启动crond服务

输入命令:service crond restart

注意:

红色标记部分为可按需求修改部分。

 

四、 Linux环境下exp实现手动及自动备份

(一)创建脚本文件

命令格式: touch 路径/文件名.sh

例如:

输入命令:touch /home/backup.sh

(二)写备份脚本

1、首先进入脚本:vi命令

vi /home/backup.sh

oracle数据库:数据的导入导出及备份

 

文本框: #!/bin/bashexport ORACLE_BASE=/u01/app/oracle --Oracle安装目录,可自定义export ORACLE_SID=ORCL --Oracle实例名,可修改export ORACLE_HOME=$ORACLE_BASE/11.2.0/db_1export PATH=$PATH:$ORACLE_HOME/binexport NLS_LANG=American_America.ZHS16GBKexport BAKUPTIME=`date +%Y%m%d%H%M%S` --定义当前系统时间变量export DATA_DIR=/home/oracle/backup/datas/$BAKUPTIME --定义数据备份目录export TAR_DIR=/home/oracle/backup/tars/$BAKUPTIME --定义数据打包目录mkdir -p $DATA_DIR --创建数据备份目录mkdir -p $TAR_DIR --创建数据打包目录cd $DATA_DIR echo "Starting bakup..."echo "Bakup file path $DATA_DIR/SCOTT_$BAKUPTIME.dmp"#备份数据库SCOTT用户exp scott/scott file=$DATA_DIR/SCOTT_$BAKUPTIME.dmp log=$DATA_DIR/SCOTT_$BAKUPTIME.logecho "Starting tar..."echo "Tar file path $TAR_DIR/SCOTT_$BAKUPTIME.tar.gz"#压缩SCOTT备份数据文件和日志文件tar -zcvf $TAR_DIR/SCOTT_$BAKUPTIME.tar.gz SCOTT*echo "Bakup file path $DATA_DIR/HR_$BAKUPTIME.dmp"

2、在脚本内写入:

(三)执行脚本文件

1、手动执行脚本文件

命令格式:sh 路径/文件名.sh

例如:sh /home/backup.sh

2、定时自动执行脚本

(1)安装crond

如果没有安装crond服务就先装上服务。

检查服务状态:service crond status

(2)修改crontab内容

输入命令:crontab –e

进入后继续输入命令:每天23:30执行自动备份

30 23 * * * /home/oracle/backup/backup.sh

设置为每天23:30执行一次脚本文件

然后,保存退出:wq

3. 重新启动crond服务

输入命令:service crond restart

注意:

红色标记部分为可按需求修改部分。



Tags:oracle   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
安装环境Linux服务器:Centos 6 64位Oracle服务器:Oracle11gR2 64位 系统要求说明:内存必须高于1G的物理内存;交换空间,一般为内存的2倍(1G的内存可以设置swap 分区为3G大小);硬...【详细内容】
2021-12-27  Tags: oracle  点击:(2)  评论:(0)  加入收藏
1、 登陆CentOS 2、 查看备份脚本,脚本放在\usr\local目录下 3、 编写数据库备份脚本,内容如下 前提是需要在Oracle创建directory文件,如果没有,可以create创建并授权给相应的用...【详细内容】
2021-12-10  Tags: oracle  点击:(14)  评论:(0)  加入收藏
之前写了个Oracle12c在Redhat6.8下的静默安装,操作系统版本太老了而且没配插图,今天重新写个centos 7 下静默安装。 准备环境:centos 7 虚拟机一台,Oracle12c安装包。1、检查防...【详细内容】
2021-10-12  Tags: oracle  点击:(29)  评论:(0)  加入收藏
JDK 17 正式发布+免费牛逼啊,JDK 16 刚发布半年(2021/03/16),JDK 17 又如期而至(2021/09/14),这个时间点牛逼啊,蹭苹果发布会的热度?记得当年 JDK 15 的发布也是同天,巧了。。虽然 iPho...【详细内容】
2021-09-16  Tags: oracle  点击:(88)  评论:(0)  加入收藏
2021年免费vps服务器申请,oracle永久免费使用。Oracle 云免费套餐只需注册 Oracle 云帐户即可获取,不仅包含丰富的 Always Free 云服务,还提供 300 美元的免费试用储值,让您可以...【详细内容】
2021-09-08  Tags: oracle  点击:(109)  评论:(0)  加入收藏
Oracle日志文件是Oracle数据库存储信息的重要文件,主要用来存储数据库变化的操作信息。Oracle日志文件可以分为两种:重做日志文件(redo log file)、归档日志文件,其中重做日志文...【详细内容】
2021-08-19  Tags: oracle  点击:(101)  评论:(0)  加入收藏
本例子在真实环境应用过,获得了很好的体验,特将其分享出来供各位朋友使用。后续我会持续把相关的知识一点一点的更新,请各位多多关注,多多支持。测试速度:导出速度大概800M/s,如...【详细内容】
2021-08-17  Tags: oracle  点击:(88)  评论:(0)  加入收藏
天冒险重启下Oracle rac,分三个步骤,停实例---停集群---重启服务器。 1、关闭实例检查状态su - gridcrsctl status res -t 注意:只在一个节点执行就行,或者为了保险期间,使用shut...【详细内容】
2021-07-16  Tags: oracle  点击:(128)  评论:(0)  加入收藏
两个字符串相似度的比较:SYS.UTL_MATCH.edit_distance_similarity用法:select SYS.UTL_MATCH.edit_distance_similarity('河北沧州东塑股份有限公司','河北沧州东...【详细内容】
2021-07-07  Tags: oracle  点击:(112)  评论:(0)  加入收藏
现在有一个用户A,想把这个用户A下面的所有的表查询权限都赋予用户X,该怎么做?同样的问题,如果有4个用户A、B、C、D,需要把这4个用户下面所有的表的只读权限赋予用户X、Y、Z三个用...【详细内容】
2021-06-23  Tags: oracle  点击:(103)  评论:(0)  加入收藏
▌简易百科推荐
安装环境Linux服务器:Centos 6 64位Oracle服务器:Oracle11gR2 64位 系统要求说明:内存必须高于1G的物理内存;交换空间,一般为内存的2倍(1G的内存可以设置swap 分区为3G大小);硬...【详细内容】
2021-12-27  守护梦想2022    Tags:Oracle   点击:(2)  评论:(0)  加入收藏
1、 登陆CentOS 2、 查看备份脚本,脚本放在\usr\local目录下 3、 编写数据库备份脚本,内容如下 前提是需要在Oracle创建directory文件,如果没有,可以create创建并授权给相应的用...【详细内容】
2021-12-10  JasonTang    Tags:Oracle   点击:(14)  评论:(0)  加入收藏
之前写了个Oracle12c在Redhat6.8下的静默安装,操作系统版本太老了而且没配插图,今天重新写个centos 7 下静默安装。 准备环境:centos 7 虚拟机一台,Oracle12c安装包。1、检查防...【详细内容】
2021-10-12  it运维小土豆  今日头条  Tags:Oracle   点击:(29)  评论:(0)  加入收藏
JDK 17 正式发布+免费牛逼啊,JDK 16 刚发布半年(2021/03/16),JDK 17 又如期而至(2021/09/14),这个时间点牛逼啊,蹭苹果发布会的热度?记得当年 JDK 15 的发布也是同天,巧了。。虽然 iPho...【详细内容】
2021-09-16  Java技术栈  掘金  Tags:Oracle   点击:(88)  评论:(0)  加入收藏
Oracle日志文件是Oracle数据库存储信息的重要文件,主要用来存储数据库变化的操作信息。Oracle日志文件可以分为两种:重做日志文件(redo log file)、归档日志文件,其中重做日志文...【详细内容】
2021-08-19  free教程    Tags:Oracle日志   点击:(101)  评论:(0)  加入收藏
本例子在真实环境应用过,获得了很好的体验,特将其分享出来供各位朋友使用。后续我会持续把相关的知识一点一点的更新,请各位多多关注,多多支持。测试速度:导出速度大概800M/s,如...【详细内容】
2021-08-17  大树唛包    Tags:oracle   点击:(88)  评论:(0)  加入收藏
天冒险重启下Oracle rac,分三个步骤,停实例---停集群---重启服务器。 1、关闭实例检查状态su - gridcrsctl status res -t 注意:只在一个节点执行就行,或者为了保险期间,使用shut...【详细内容】
2021-07-16  死磕IT    Tags:Oracle rac   点击:(128)  评论:(0)  加入收藏
两个字符串相似度的比较:SYS.UTL_MATCH.edit_distance_similarity用法:select SYS.UTL_MATCH.edit_distance_similarity('河北沧州东塑股份有限公司','河北沧州东...【详细内容】
2021-07-07  Onceagain75783189    Tags:比较函数   点击:(112)  评论:(0)  加入收藏
现在有一个用户A,想把这个用户A下面的所有的表查询权限都赋予用户X,该怎么做?同样的问题,如果有4个用户A、B、C、D,需要把这4个用户下面所有的表的只读权限赋予用户X、Y、Z三个用...【详细内容】
2021-06-23  程序猿集锦    Tags:Oracle   点击:(103)  评论:(0)  加入收藏
oarcle数据库真正存放数据的是数据文件(data files),Oarcle表空间(tablespaces)实际上是一个逻辑的概念,他在物理上是并不存在的,那么把一组data files 捻在一起就成为一个表空间。...【详细内容】
2021-04-27  SQL小帅哥  今日头条  Tags:Oracle   点击:(200)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条