oracle用expdp定时备份所有步骤详解[转]
用oracle命令备份数据库,生成dmp文件,保存了整一套的用户及表数据信息。还原简单。加上widnows的批处理bat命令,实现每天0点备份,现把经验送上给大家!
工具/原料
- oracle11g 11.2.0 64位
百度经验:jingyan.baidu.com
方法/步骤
- 1
在“运行”里打开cmd
- 2
输入命令:sqlplus system/123456@orcl
其中system是登录数据库的用户名
123456是用户名的密码
orcl是数据库实例名称
- 3
如果提示命令无效,那就是你没有配置好oracle的环境变量(想当年我也被这个问题困扰着),配置oracle环境变量的方法如下:
1、右击“我的电脑”->选择“属性”->选择“高级”->单击“环境变量”2、选择“Path”这一行,单击“编 辑”,在“Path”的变量值文本框的最后面先加入一个分号“:”,然后再分号后面加入sqlplus文件的目录路径,如“C:\Program Files\oracle\product\10.2.0\db_1\BIN”,然后点击“确定”按钮。3、如果在“系统变量”列表框下面的“变量”列中找不到“ORACLE_HOME”和“ORACLE_SID”这两个变量,则需要下面操作,否则无需一下操作。4、在“系统变量”中点击“新建”按钮,在“变量名”中输入“ORACLE_HOME”,变量值中输入Oracle的安装目录路径,如“C:\Program Files\oracle\product\10.2.0\db_1”,然后点击“确定”按钮。5、在“系统变量”中点击“新建”按钮,在“变量名”中输入“ORACLE_SID”,变量值中输入数据库的实例名,然后点击“确定”按钮。
ORACLE_HOME:Oracle数据库软件的安装目录ORACLE_SID:Oracle数据库的实例名Oracle 数据库实例名:用于和操作系统进行联系的标识,即数据库和操作系统之间的交换是通过数据库实例名来体现的。
END
百度经验:jingyan.baidu.com
第二步,EXPDP备份命令
- 1
创建oracle的备份目录:
sql>create directory dpdata1 as 'D:\temp\dmp';
这仅仅是在oracle里设定的目录,并没有真正创建
- 2
可以通过这句命令查看到这个目录
sql>select * from dba_directories;
- 3
赋于要导出数据表的所属用户权限
sql>grant read,write on directory dpdata1 to sshe;
- 4
好了,到了关键一步,之前走了不少弯路,但其它是小问题,在网上零零碎碎查了很多资料,终于找到原因。
首先,要切换回命令窗口,不要再在sql>下运行,然后输入命令:
expdp system/123456@orcl directory=dpdata1 dumpfile=sshe.dmp logfile=sshe.log schemas=sshe
- 5
上面报了一个错ORA-39002:操作无效
原因是D:\temp\dmp这个目录不存在,别以为create directory之后就会自动生成文件夹,也别以为执行expdp后会自动生成文件夹,要自己手动新建这个目录文件夹的。新建文件夹后再试一下,果然成功了!恭喜你,已成功备份!
- 6
如果你要问,导出来的dmp文件怎样还原回去。好吧,做人做到底,为了省去你再找方法的麻烦,这里我也做一个演示(一般备份的数据是等到数据库有问题时才用的上)。
首先,再一次登录数据库 sqlplus system/123456@orcl
然后,删除目标数据库用户 drop user sshe cascade;
- 7
现在来再一次创建用户,可以用命令创建,也可以在plsql里创建,这里在plsql创建。
用system登录数据库,然后右键users--新建
然后填写你的账号名称,必须和备份时的用户一致,并赋于相应的权限
最后点击应用,完成用户创建。
- 8
返回DOS命令窗口,不再是sql>
输入导入命令:impdp system/123456@orcl directory=dpdata1 dumpfile=SSHE.DMP logfile=sshe.log schemas=sshe
导入成功!
END
百度经验:jingyan.baidu.com
步骤3 定时执行备份任务
- 1
做一个按年月日命名的批处理。在D:\temp\目录下新建一个文件,随便命名为.bat,我的命名为sshe.bat,编辑为如下代码
-------------------------------------------------------------------------
@echo offrem set backupfile=f_database_%date:~0,4%-%date:~5,2%-%date:~8,2%.dmprem set logfile=f_database_%date:~0,4%-%date:~5,2%-%date:~8,2%.logrem delete 30days filesforfiles /p "D:\temp\dmp" /d -30 /c "cmd /c echo deleting @file ... && del /f @path"cd D:\temp\dmp
rem backup schemasset backupfile=sshe_%date:~0,4%-%date:~5,2%-%date:~8,2%.dmpset logfile=sshe_%date:~0,4%-%date:~5,2%-%date:~8,2%.logexpdp sshe/sshe directory=DIR_DP dumpfile=%backupfile% logfile=%logfile% schemas=sshe parallel=4
-------------------------------------------------------------------------------
可以试执行一下,会自动生成一个以年月日命名的备份文件
forfiles /p "D:\temp\dmp" /d -30 /c "cmd /c echo deleting @file ... && del /f @path"的作用是:删除本目录下30天以后的备份文件,这个挺有用的。
- 2
做一个windows每晚自动运行数据库备份的bat,我的命名为auto.bat编辑如下内容
------------------------------------------------------------------------------
@ECHO OFFschtasks /create /tn SSHE数据库定时备份 /tr "D:\temp\sshe_bak.bat" /sc daily /st 00:00:00 /ru "system" PAUSEEXIT
------------------------------------------------------------------------------
- 3
双击auto.bat,就会在windows添加一个定时任务,每晚0点0分就会自动执行一次sshe.bat,从而完成自动备份的目的。
- 4
右键我的电脑:管理——任务计划程序——任务计划程序库,可以看到刚才添加进去的定时任务
- 5
可以将电脑的时钟设为23点59分50秒,等待10秒钟,看看自动备份能否成功。如果成功那就大功告成了!!
原文:http://jingyan.baidu.com/article/9113f81b2040862b3314c757.html
oracle用expdp定时备份所有步骤详解[转]的更多相关文章
- oracle使用expdp定时备份数据库
目录 oracle使用expdp备份数据库 备份shell脚本 创建定时任务 oracle使用expdp备份数据库 备份shell脚本 #!/bin/sh #获取当前时间 BACKUPTIME=$(d ...
- expdp定时备份
1.创建用户所需的永久表空间和临时表空间 create tablespace tbs_hankey_dat datafile '/opt/oracle/oradata/tbs_hankey.dbf' ...
- ASP.NET连接Oracle数据库的步骤详解(转)
ASP.NET连接Oracle数据库的步骤详解 本文我们主要介绍了ASP.NET连接Oracle数据库的步骤及每个步骤需要进行的设置,希望能够对您有所帮助. 在用ASP.NET开发应用程序时, ...
- Oracle 11g客户端在Linux系统上的配置步骤详解
Oracle 11g客户端在Linux系统上的配置步骤详解 2011-07-26 10:47 newhappy2008 CSDN博客 字号:T | T 本文我们主要介绍了Oracle 11g客户端在L ...
- Oracle Statspack报告中各项指标含义详解~~学习性能必看!!!
Oracle Statspack报告中各项指标含义详解~~学习性能必看!!! Data Buffer Hit Ratio#<#90# 数据块在数据缓冲区中的命中率,通常应该在90%以上,否则考虑 ...
- gcc/g++等编译器 编译原理: 预处理,编译,汇编,链接各步骤详解
摘自http://blog.csdn.net/elfprincexu/article/details/45043971 gcc/g++等编译器 编译原理: 预处理,编译,汇编,链接各步骤详解 C和C+ ...
- Linux centos7环境下安装JDK的步骤详解
Linux centos7环境下安装JDK的步骤详解 测试root用户下JAVA版本 输入命令: java –version 1.先到Oracle官网里下载好jdk,网址如下: http://ww ...
- Oracle数据库中序列(SEQUENCE)的用法详解
Oracle数据库中序列(SEQUENCE)的用法详解 在Oracle数据库中,序列的用途是生成表的主键值,可以在插入语句中引用,也可以通过查询检查当前值,或使序列增至下一个值.本文我们主要介绍了 ...
- 安装MACOS操作步骤详解
安装MACOS操作步骤详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 关于安装MAC的操作系统其实大家都知道可以让客服帮忙提供软件上的支持,而且苹果客服都很有礼貌呢,而且非常的 ...
随机推荐
- 面试官问:JS的this指向
前言 面试官出很多考题,基本都会变着方式来考察this指向,看候选人对JS基础知识是否扎实.读者可以先拉到底部看总结,再谷歌(或各技术平台)搜索几篇类似文章,看笔者写的文章和别人有什么不同(欢迎在评论 ...
- 20155201 2016-2017-2《Java程序设计》课程总结
20155201 2016-2017-2<Java程序设计>课程总结 目录 一.每周作业链接汇总 二.实验报告链接汇总 三.代码托管链接 四.课堂项目实践 五.课程收获与不足 六.问卷调查 ...
- Python3基础 print 自带换行
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- 学习Zookeeper之第1章Zookeeper入门
第 1 章 Zookeeper入门 1.1 概述 1.2 特点 1.3 数据结构 1.4 应用场景 统一命名服务 统一配置管理 统一集群管理 服务器动态上下线 软负载均衡 1.5 下载地址 第 1 章 ...
- 分布式之zk的应用场景
分布式应用系统中,经常会用到zk,比如dubbo注册中心,kafka分布式集群等都用到zk这一工具.除了这些用来做分布式集群外,zk还有那西应用场景事我们可以使用到该工具的呢?所以接下来就是我们要了解 ...
- 51nod 1042 数字0-9的数量
给出一段区间a-b,统计这个区间内0-9出现的次数. 比如 10-19,1出现11次(10,11,12,13,14,15,16,17,18,19,其中11包括2个1),其余数字各出现1次. Inp ...
- 解决 "OperationalError: (sqlite3.OperationalError) no such table: ..."问题
参考:flask/sqlalchemy - OperationalError: (sqlite3.OperationalError) no such table 在用Flask写一个简单的py文件,做 ...
- python 堆栈
class Node: #堆栈链结节点的声明 def __init__(self): self.data= #堆栈数据的声明 self.next=None #堆栈中用来指向下一个节点 top=None ...
- Factory Method(工厂方法)
Factory Method(工厂方法) 意图: 定义一个用于创建对象的接口,让子类决定实例化哪一个类.Factory Method 使一个类的实例化延迟到其子类. 适用性: 当一个类不知道它所必须创 ...
- 将数据提取到CSV文件中保存
这个方法可以实现,登录获取的token放入CSV文件,供后续调用,这里没有用登录举例 FileWriter fstream = new FileWriter("E:\\apache-jmet ...