oracle数据库下载 备份数据库的步骤

oracle数据库的备份和恢复
ORACLE数据库有两类备份方法。第一类为物理备份,该方法实现数据库的完整恢复,但数据库必须运行在归挡模式下(业务数据库在非归挡模式下运行),且
需要极大的外部存储设备,例如磁带库;第二类备份方式为逻辑备份,业务数据库采用此种方式,此方法不需要数据库运行在归挡模式下,不但备份简单,而且可以
不需要外部存储设备。
// 数据库的备份(导出)和恢复(导入)& *.dmp
&&& 1.逻辑备份和物理备份
一个数据库实例可以有多个用户,每个用户对应着一种方案,
每个方案里面有每个用户自己的表视图索引等;
&&& 2.导出/备份:
导出表、导出方案(同时导出表视图触发器等)、导出数据库
导出命令为exp命令,常用选项有:
userid:用于指定执行导出操作的用户名、口令、连接字符串
tables:指定表
owner:指定方案
full=y:用于指定执行导出操作的数据库
inctype:指定导出操作的增量类型
rows:指定执行导出操作是否要导出表中的数据
file:用于指定导出文件名
b. 创建用户及赋予权限
&&& 在sql/plus或者PL/SQL developer中运行:
&&& 导出或备份当前用户下的表,用scott用户登陆,导出scott用户下的emp表
& & 1.用sys用户登陆数据库
sys/oracle@SIMLINK
&&& 2.创建一个新用户
&&& create user
&&& 3.给该用户赋予dba权限
(1、scott用户备份自己表时也需要赋予dba权限;
& 2、对sys用户赋予dba权限后对表备份和恢复仍然需要输入用户名和密码,输入用户名时为 sys
as sysdba才可以)
&&& grant dba to
C. 备份表和方案&& 在dos命令行中运行:
&&& 1.在oracle安装目录下BIN文件夹中有一个EXP.EXE程序,所以需要在BIN目录下运行导出命令,
如“E:\oracle\product\10.1.0\Db_1\BIN”
oracle\product\10.1.0\Db_1\BIN
&&& 2.//导出单张表
exp_imp_dba/exp_imp_dba@SIMLINK tables=(scott.kkk)
file=D:\kkk.dmp
&&& 3.//导出多张表
exp_imp_dba/exp_imp_dba@SIMLINK tables=(scott.kkk,scott.dept1)
file=D:\kkk_dept1.dmp
&&& 4.//将数据库中的表table1中的字段filed1以"76"打头的数据导出
exp_imp_dba/exp_imp_dba@SIMLINK tables=(scott.emp) file=d:\emp.dmp
query=\" where empno like '76%'\"
&&& 5.//只导出表结构
exp_imp_dba/exp_imp_dba@SIMLINK tables=(scott.emp)
file=d:\emp_jiegou.dmp rows=n;
6.//当表比较大的时候,为了加快导出速度,可直接导出
exp_imp_dba/exp_imp_dba@SIMLINK&
tables=(scott.emp) file=d:\emp.dmp direct=y
&&& 7.//导出方案(即一个用户下的所有表,视图,索引等)
exp_imp_dba/exp_imp_dba@SIMLINK owner=scott file=d:\scott.dmp
D. 恢复/还原表和方案
&&& 1.//还原单张表(ignore=y 表示忽略建表错误)
&&& <font COLOR="#FE注意这个还原表的时候会重复插入,所以应该在sql/plus中先删除表中所有原数据
&&& delete from
&&& delete from
scot.dept1;
&&& 1.2DOS中BIN目录下运行:
exp_imp_dba/exp_imp_dba@SIMLINK& file=d:\kkk.dmp
fromuser=scott tables=(kkk) ignore=y
或者首先在sql/plus环境下sys用户中对scott用户授权
scott/tiger@SIMLINK file=d:\kkk.dmp tables=(kkk) ignore=y
(没有表会自动创建)
&&& 1.3设置表主键后就不会添加重复数据,但这也是恢复成功的一种
&&& alter table
scott.dept1 add constraint dept1_pri primary key(deptno);
&&& 2.//还原多张表
exp_imp_dba/exp_imp_dba@SIMLINK file=d:\kkk_dept1.dmp
fromuser=scott tables=(kkk,dept1) ignore=y
&&& 3.//还原方案
exp_imp_dba/exp_imp_dba@SIMLINK file=D:\scott.dmp&
fromuser=scott touser=scott ignore=y
E. 导出整个数据库
exp_imp_dba/exp_imp_dba@SIMLINK full=y inctype=complete
file=d:\simlink.dmp
&&& 完全备份complete
:对整个数据库的备份
增量备份incremental:是备份上一次完全导出后改变的数据。
累积备份cumulative :是备份自上次完全导出后改变的数据。
F. 恢复整个数据库
exp_imp_dba/exp_imp_dba@SIMLINK full=y& file=
d:\simlink.dmp ignore=y
最后补充一下用PL/SQL
Developer备份和还原表
(1、E:\oracle\product\10.1.0\Db_1\NETWORK\ADMIN下的tnsnames.ora文件中有数据库连接配置
2、但是好像因为压缩方式不一样,经试验和命令不兼容
3、这中方式只能备份和还原本用户下的表)
登陆用户scott/tiger-&工具-&导出表-&选择pl/sql
developer方式,之后看界面操作,略;
登陆用户scott/tiger-&工具-&导入表,重点介绍四种导入方式:
&& 1、删掉表(Drop tables)
勾选之后,自动默认选择创建表(Create tables),并且截断表(Truncate tables)和删除记录(Delete
tables)变为灰色不可用;这个选项在恢复前首先删除表,然后创建表,再恢复表数据;
&& 2、创建表(Create tables)
在导入数据前,表还未创建时可勾选;
&& 3、截断表(Truncate tables)
在导入数据前首先清空表数据,然后再导入数据。此项和删除记录(Delete tables)互斥;
&& 4、删除记录(Delete tables)
和截断表的功能基本相同,单和截断表互斥,且速度较慢,一般不使用;
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。Oracle数据库的备份需要注意哪些?
我想问一下,在Oracle数据库备份方面,如何手动设置数据库的最大容量,以及如何通过访问量,数据量来设计Oracle数据库。而且当数据达到最大容量时如何设置来自动扩容。在整个设计的过程中需要注意哪些?谢谢各位……
10-03-12 &
表空间的设计  Oracle数据库的表和索引是透过表空间tablespace存储在数据库中的。在tablespace设计时一般作以下考虑:  1、一般较大的表或索引单独分配一个tablespace。  2、Read only对象或Read mostly对象分成一组,存在对应的tablespace中。  3、若tablespace中的对象皆是read only对象,可将tablespace设置成read only模式,在备份时,read only tablespace只需备份一次。  4、高频率insert的对象分成一组,存在对应的tablespace中。  5、增、删、改的对象分成一组,存在对应的tablespace中。  6、表和索引分别存于不同的tablespace。  7、存于同一个 tablespace中的表(或索引)的extent 大小最好成倍数关系,有利于空间的重利用和减少碎片。  DB BLOCK SIZE  超大型数据库DB BLOCK SIZE一般在4KB 至 64KB,而最常用的是8KB、 16KB或32KB。选用较大的DB BLOCK SIZE可使INDEX的高度降低,也会提高IO效率。  Redo Log Files  Oracle进程redo log writer (LGWR)将日志写入日志文件。一般日志文件最好建在专用的镜像盘上。日志文件组的个数及文件的大小的设定与系统交易量的大小有关。ORACLE并行服务器中每个INSTANCE使用各自的一组rego log files。一般的每组日志文件的个数为3-7个,每个的大小为200MB-500MB。  数据文件大小  建议用标准的文件大小,如200M、1GB、2GB、4GB、8GB等,可简化空间的维护工作。  回滚段  回滚段一般建在专用的表空间中。每一个INSTANCE实例拥有各自的回滚段。设置回滚段的一般原则是: initial 及 next 存储参数的值是相等的,同时还是DB BLOCK SIZE的倍数。每个回滚段的minextents设为20,optimal参数的值保证回滚段缩小时不低于20个extents。  临时表空间  临时表空间一般建在专用的表空间中。每一个INSTANCE实例拥有各自的临时表空间。这样使用临时表空间时不会有PING。设置临时表空间的initial=next。  四、系统硬盘的划分及分配  在多机集群环境下,Oracle并行服务器通过操作系统提供的DRD服务来共享同一个数据库。每一个INSTANCE对数据库的数据文件的访问都是通过该数据文件所在的DRD服务进行的。  考虑以下情况:主机1上有DRD服务1,该服务对应的数据文件有1、2、13、35、67等,这时如果主机2上的INSTANCE2需要读取数据文件13,通过DRD服务调度,主机1通过DRD服务访问磁盘阵列上的数据文件13,把INSTANCE2需要的数据读到内存,然后通过MEMORY IO把数据传到主机2的INSTANCE2。写操作是读操作的逆过程。  通过以上分析可知,系统硬盘的划分及分配的原则是尽量减少MEMORY IO。  五、备份及恢复策略的考虑  数据库的备份与恢复在系统设计中占很重要的地位。好的备份及恢复策略可以降低系统的运行风险,减少因硬件故障而造成的损失。  Oracle备份方法:  1、物理备份  将数据库的物理文件通过操作系统的命令或工具备份到备份介质上。物理备份往往用于存储介质故障时恢复数据库系统的数据。  根据数据库运行方式的不同,可进行不同的物理备份:  a)物理冷备份(offline backup)  物理冷备份要求数据库在关闭(所有INSTANCEs停止)的情况下进行。这种备份必须是完全备份,即需备份所有的数据文件、控制文件(control file)、日志文件(redo log file)、初始参数文件等等。  物理冷备份的步骤简单,但要求系统能够停止。  b)物理热备份(online backup)  物理热备份是在数据库系统正常运行的情况下进行的数据库备份。这种备份可以是数据库的部分备份,既备份数据库的某个表空间(tablespace)或某个数据文件(datafile),也可备份控制文件(control file)。  物理热备份要求数据库在ARCHIVELOG模式下运行。这种备份一般用于应用系统不能停机的情况。  c)归档日志文件备份(archived log file backup)  要使数据库系统能够恢复到故障点前一时刻状态,或恢复到某指定时刻状态,数据库必须采用ARCHIVELOG模式。在ARCHIVELOG模式下,数据库系统会产生归档日志文件(archive log files)。归档日志文件也需备份到备份介质上。在恢复时,这些文件可使数据库恢复到最近状态。  归档日志文件产生在指定目录下,这些文件一生成就可以备份到备份介质上,DBA可根据磁盘空间情况,定时将它们备份出去。  2、逻辑备份  逻辑备份是通过Oracle提供的Export工具,将数据库的结构定义及其数据卸出到特定格式的文件中,并备份该文件。  在实际应用中,逻辑备份与物理备份并用。一般来说,物理备份用于磁盘介质损坏或数据文件损坏;逻辑备份用于数据库中的某些对象被破坏或用户误操作。  备份策略的考虑主要在以下三个方面:  存储空间  对现行运行的系统的性能影响  恢复时间的影响  如果需要节省空间和恢复时间就需要增加备份的频率,但是备份操作会明显增加现行运行的系统的负载。、  Oracle的恢复方法  根据不同的备份方法采用不同的恢复方法。  使用物理备份恢复  Oracle提供了三种恢复手段:  1、数据库级的恢复  2、表空间(Tablespace)的恢复  3、数据文件的恢复  数据库级的恢复要求数据库在关闭但Mount的状态下进行。表空间及数据文件的恢复可在数据库运行的状态下进行。  使用逻辑备份恢复  当数据库中的某一对象被损坏,或用户的误操作使数据破坏(如误删表) 时可用逻辑备份恢复。用逻辑备份只能恢复到备份时刻的状态。超大型Oracle数据库应用系统的设计方法(下)
请登录后再发表评论!
oracle&备份&还原数据库方法a.查看是处于什么模式&select&&&log_mode&&&from&&&v$&如果是非归档模式则成:NOARCHIVELOG&如果不是归档模式(Archive)则可以通过以下方法改成归档模式&b.改变归档模式&1.SQL&&&&shutdown&&&&2.SQL&&&&startup&&&&3.SQL&&alter&&&database&&&&4.SQL&&alter&&&database&&&&现在已经改成归档模式了&恢复 1.使用命令“svrmgrl”调用行方式服务器管理;  2.输入命令“connect&internal”,然后输入命令“startup&mount’;  3.输入命令“recover&”  4.按下ENTER,接受默认值。  5.然后输入命令“alter&database&”完成数据库恢复。
请登录后再发表评论!Oracle数据库导出操作
导入导出都要进行目录创建与授权。
在里面编写也可以
select * from dba_directories(这个是查看创建的目录)
drop directory exp_dir(删除指定名称的目录)
create&or&replace&directory&expdp_dir&as&&E:/exp&
grant&read&,write&on&directory&expdp_dir&to&public
如图(图片网上找的):
查询创建了那些子目录:SELECT&*&FROM&dba_
1.如下是命令导出
echo&备份执行开始
set&filename=%date:~8,2%&&::设置获取当前系统日期
expdp&gdxaorcl/gdxadb2013@ECAMPUS&schemas=gdxaorcl&dumpfile=%filename%.dmp&DIRECTORY=expdp_dir
::使用导出,指定用户名,指定导出文件名称,即指导到指定目录下
echo&备份执行完成
2.Oracle数据库导入操作
数据库导入命令:
set&/a&tui&=&%date:~8,2%-1&::设置系统日期前一天的数据库备份文件
impdp&gdxaorcl/gdxadb2013@localhost/ecampus&file=%tui%.dmp&log=%tui%.log&full=y&TABLE_EXISTS_ACTION=replace&&::(指定要导入的备份文件注意:已经把%tui%.dmp复制到\admin\ecampus\dpdump&下面了),log即日志文件,全库导出导出除这些系统用户之外的所有用户的数据。replace参数先表,然后创建表,最后插入数据。
阅读(...) 评论()当前位置:
和力记易:论Oracle数据库的四大备份方式
和力记易:论Oracle数据库的四大备份方式 作者:
来源:CNET科技资讯网
时间: 10:02:28关键字:
   Oracle作为目前世界上市场份额占有率最高的大型通用数据库,在世界上各行各业的信息化建设中起着核心首脑的作用。它(软件自身以及它所依赖运行的硬件)一旦出现问题,轻则导致业务中断,重则丢失部分数据,严重则全部数据不可逆转性损毁!这种情况在信息化越来越占生产主导地位的今天意味着什么各大CIO都非常清楚,所以他们想尽一切办法坚决杜绝这种情况的发生!
   中国有句古话,凡事预则立不预则废。这句话在信息化建设高度发达的今天同样适用。针对数据库可能中断服务以及丢失数据的&预&就是&备&。针对Oracle数据库来说,主要有以下四种备份方式。
   一、导出/导入(Export/Import)
   导出导入是一种最初级的备份方式,它采用定时将全量、增量或者差异数据以表、用户或者全库为单位导出到某种格式的文件中达到备份的目的。它作为标准的命令被集成到了Oracle开发语言中。可以通过DBA手动执行备份命令,或者通过脚本和工具自动执行。RMAN就是此类工具中的佼佼者,曾经有很多DBA在使用。
   但它是一种定时备份的模式,具有明显的备份时间窗口。备份间隔内仍然存在数据丢失的可能,比如每一天做一个增量备份的话,那么最大会丢失一天的数据。如果是可以允许一段时间内数据丢失的业务,可以采用这种模式。反之只能采用下面的一种备份模式&&热备份。
   二、热备份
   对于热备份来说,故名思议就是刚出炉的数据还是热乎的就开始执行备份的操作。实现热备份的方式目前主要有两种方式,逻辑方式和物理方式。
   1、逻辑方式
   如果把Oracle数据库比作一个美女的话,那么实例库就是她的整个身体,表空间就是她的骨骼,表是她的筋络,数据是她的血肉。视图、事务、函数、pack包等是她身体上毛发和的饰品。
   对于逻辑方式备份来说就是用一种方式勾勒出了这位美女的模样,让人看上去能认出就是那位美女,但是仔细看的话可能又有所不同。
   这种勾勒的方式又分为两种:
   1)SQL语句模式
   SQL的全称是,它是一种语言,而不是专指一种数据库。很多人习惯把MSSQL简称为SQL,这是不对的。SQL之前必须加了MS(Microsoft)才能是一种数据库的名字。
   SQL这种语言,大多数数据库都支持。Oracle的老大埃里森当年也是因为首先致力于对SQL语言的支持,才在SQL成为标准后挫败了很多当时没有纳入到SQL语言标准范畴内的数据库。
   既然Oracle支持SQL语句,那么就可以用SQL语句进行逻辑勾勒。我们知道当我们提交数据的时候并不关心是提交到了哪种数据库里面去了,以什么样的方式存储。最终只要能提交成功并能查、改、删皆可。这些都是通过SQL语句来实现的,它同样不关心数据库的种类和存储方式。这就意味着我们就可以用SQL语句将数据从源端数据库抽取出来,然后将它装载在某个目标的数据库里面。源端数据库和目标端数据库可以是不一样的品牌,甚至可以不在同一平台上。就如同我们在勾勒美女的时候是用油画布还是国画宣纸都不影响最终对美女的展现。
   CDC(Change Data Capture)就是以这种模式对Oracle进行增量备份的,当然它更多情况下用以做数据整合。
   这种模式听起来似乎很美,可以不用管平台不用管数据库,直接抽取和装载数据库。但是要素描我们首先得雇佣一个画家,这一块的投资颇大,就如同CDC价值不菲一样。
   另外画家在素描的时候,美女需要配合。这就如同在执行SQL语句的时候占用了Oracle自身大量的资源,甚至影响到了它的正常运行。
   其次,在执行SQL语言时对于SQL语言细分的组成部分:DDL (数据定义语言)、DML (数据操作语言)、DCL (数据控制语言)和TCL(事务控制语言)以及特殊的字段比如blob和clob字段等的支持并不完美,效率低下甚至就不支持。
   2)日志重做模式
   我们用素描的方式来比喻逻辑备份里面的SQL语句模式,那么对于归档重做的模式我们称之为复印。归档日志是Oracle独有的一种模式,它会将自己做过的所有事情的过程都记录在里面。如果照着归档重新做一遍,则能得到同样的结果,这个结果是相对比较接近源生产库的。在这里之所以使用&相对比较接近&是因为还是有所差别的,就如彩色照片复印出来是黑白的,内容看上去差不多,但还是有差别,且存在很多限制。OGG(Oracle Goldengate)以及ODG(Oracle Dataguard)就是两款Orcle两款典型的日志重做工具。前者是Oracle收购的公司,后者是Oracle企业版包含的一个工具。
   使用日志重做模式首先采用这种方法数据库必须至于归档模式下,且要是Force Logging(强制记录日志)状态。这才能满足日志重做的基本条件。因为Oracle的日志分为OnlineLog(联机日志)和ArchiveLog Log(归档日志)。如果写入的数据量较小,那么可以直接对OnlineLog进行重做。但如果写入的数据量很大或者巨大,那么对OnlineLog进行重做是来不及的,就只有延后对ArchiveLog Log进行重做。而对于一下NoLogging(无日志)的数据操作就没有办法进行重做了,所以必须采用将数据库模式设置为Force Logging(强制记录日志)状态。这对数据库的使用具有很大的限制。
   另外OGG(Oracle Goldengate)以及ODG(Oracle Dataguard)的逻辑Standby模式虽然在源端获取数据是通过归档日志,但是在目标端(备份机)上进行数据还原的时候是转换成SQL语句来进行的。这就具有了1)中所述使用SQL语句的一些缺点。
   2、物理方式
   同于我们将SQL逻辑方式比如素描,把日志重做逻辑方式比作复印,则物理方式就是复制人。
   卷复制、分割镜像快照等技术就是一种常用的物理方式。乍看起来这种模式要优于逻辑方式,但是它的优势恰恰就是它的劣势。就如同我们打得复制人的比方,在复制人的时候必须每一个染色体每一个DNA都不能出差错。否则将会前功尽弃。对于Oracle这种结构化数据来说,它的精密性不亚于人体。一旦在物理复制的时候不完整或者出错,将会导致整个数据库不可用。所以物理复制不能是单纯的把数据库当作文件进行表面复制,必须是建立在对Oracle数据的逻辑存储结构深入分析的基础之上,才能保证复制出来的数据是100%可用的。
   三、冷备份
   从前文课件不管是逻辑方式的热备份还是物理方式的热备份,它都存在一些问题。举个例子来说:源端数据库的一个事务写完生产ArchiveLog Log后,ArchiveLog Log转换成SQL语句在备份机上执行,执行到一半的时候正好停机了。再开机时这个没有执行完的SQL就有可能导致整个Oracle数据库无法Open。
   为了尽可能的避免这种情况,用户往往在指定的时间(比如凌晨2-3点)将源端数据库合法Shutdown(关闭),以确保数据库在可用的状态时拷贝出一份完成的数据出来。
   很明显拷贝的前提是将数据库Shutdown,就是说业务需要停止。所以这种备份叫做冷备份。
   四、CDP
   SNIA(全球网络存储工业协会StorageNetworkingIndustryAssociation)对什么是CDP做了明确界定:1、有变化就备份2、至少备份到另外一个地方3、可以恢复到任意时间点。实现的模式主要有三种:基于块、基于文件、基于应用。
   按照这一点来卡的话ODG的物理Standby模式可以算是。
   ODG的物理Standby模式在创建时,使用主库进行一个全copy(可以理解为不用shutdown的冷备份)。在此基础之上以&基于块&的模式对数据进行物理的拷贝和恢复。此时目标段(备份机)就是完全是源端数据库的一个复制,因为它是Oracle自身的工具,所以它深入了解Oracle自身的逻辑结构,从而有效的避免了物理复制存在数据库不可用的问题。
   但是对于CDP里面的第3点:可以恢复到任意时间点。它必须借助Oracle的另外一个功能Oracle Undo(撤消日志)。
   我们知道Oracle的中文名是甲骨文,它一定意义上反映了Oracle数据库操作的难易程度。
   ODG的物理Standby模式虽然看起来很美,但是第一:它只属于Oracle,第二:需要专业DBA配置和维护。这就使得它的使用成本过高而成为&王谢堂前燕& ,难以飞入&寻常百姓家&。
   针对这种情况,国内老牌CDP容灾备份厂家&&北京和力记易科技有限公司在深入研究Oracle数据库存储结构十余家的基础之上,集ODG的逻辑Standby和Undo功能于一体。以最简单的图形化界面实现了CDP实时备份和任意时间点回退。不但支持Oracle,还是支持Windows、Linux、Unix下的MSSQLOracleDB2SybaseInformixInterbase人大金仓神舟通用等数据库,支持主流的双机集群环境:MSCS、Lifekeeper、NEC、PlusWell、Oracle RAC+ASM等模式。真正实现了&旧时王谢堂前燕,飞入寻常百姓家&。
最新更新文章
克丽感悟:

我要回帖

更多关于 oracle数据库导入 的文章

 

随机推荐