Oracle数据库备份和恢复操作手册.doc_第1页
Oracle数据库备份和恢复操作手册.doc_第2页
Oracle数据库备份和恢复操作手册.doc_第3页
Oracle数据库备份和恢复操作手册.doc_第4页
Oracle数据库备份和恢复操作手册.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1ORACLE 数数据据库库数数据据备备份份和和恢恢复复操操作作手手册册 1.1. ORACLE 参参数数设设置置 进入 CMD 操作界面,使用 sqlplus 连接数据库, 图例 1 数据库连接操作 连接语法:sqlplus system/Oracle2013orcl 参数说明 参数参数说明说明备注备注 sqlplus语法命令 system数据库管理员用户名 Oracle2013system 用户密码 orcl数据库连接标示符 数据库安装目录的 tnsnames.ora 文件中可以找 到 Oracle11G 目录: C:appAdministratorproduct11.2.0dbhome _1NETWORKADMIN 图例 2 成功连接数据库 环境变量设置(在 Sqlplus 中执行) create or replace directory as c:tmpdir; 参数说明 参数参数说明说明备注备注 dir_name路径名称 c:tmpdir文件路径也可以是另外的随意目录,用单引号括起来。 图例 3 环境变量设置 1.2. 数数据据备备份份 备份脚本:expdp system/Oracle2013orcl directory=file_path dumpfile=ARADMIN.dat logfile=ARADMIN.log schemas=ARADMIN 参数说明 参数参数说明说明备注备注 expdp语法命令 system数据库管理员用户名 Oracle2013system 用户密码 orcl数据库连接标示符 数据库安装目录的 tnsnames.ora 文件中可以找 到 Oracle11G 目录: C:appAdministratorproduct11.2.0dbhome _1NETWORKADMIN directory文件目录名称导出数据库文件的存放目录 dumpfile数据库文件名称导出数据库文件的文件名 logfile数据库日志文件名称导出数据库的日志文件名称 schemas数据库用户 操作: 图例 4 数据库备份操作 成功导出。 图例 5 成功导出 1.3. 数数据据恢恢复复 1.3.1. 删除删除 ARADMIN 用户用户 1.连接数据库 sqlplus system/Oracle2013orcl 图例 6 连接数据库 2.删除目标数据库中的 ARADMIN 用户 drop user ARADMIN cascade; 图例 7 成功删除目标数据库中的 ARADMIN 用户 1.3.2. 重新创建重新创建 ARADMIN 用户用户 1.连接数据库 sqlplus system/Oracle2013orcl 图例 8 连接数据库 2.创建 ARADMIN 用户 create user ARAdmin identified by AR#Admin# default tablespace ARSYSTEM temporary tablespace ARTMPSPC quota unlimited on arsystem; 图例 9 创建 ARADMIN 用户 3.赋予数据库权限 grant alter session,create cluster,create database link,create sequence,create session,create synonym,create table,create view,create procedure,create trigger,query rewrite to ARAdmin; 图例 10 赋予数据库权限 1.3.3. 数据库导入数据库导入 导入命令:impdp system/Oracle2013orcl directory=file_path dumpfile= ARADMIN20130606.DAT logfile= ARADMIN20130614.log schemas=ARADMIN 图例 11 数据库导入 导入完成 1.4. EXP/IMP 与与 EXPDP/IMPDP 对对比比 1.1.1运行位置不同运行位置不同 1.1.2EXP/IMP 不同模式原理不同模式原理: exp/imp 默认会是传统路径, 这种模式下,是用 SELECT 加数据查询出来,然后写 入 buffer cache,在将这些记录写入 evaluate buffer. 最后传到 Export 客户端,在写入 dump 文件。 直接路径模式下,数据直接从硬盘读取,然后写入 PGA, 格式就是 export 的格式, 不需要转换,数据再直接传到 export 客户端,写入 dump 文件.这种模式没有经过 evaluation buffer。 少了一个过程,导出速度提高也是很明显. 1.1.3EXPDP/IMPDP 不同模式原理不同模式原理: expdp/impdp 默认就是使用直接路径的,所以 expdp 要比 exp 快。 Network Link 这种模式很方便,但是速度是最慢的,因为它是通过 insert,select + dblink 来实现的。速度慢也由此可见了。 1.1.4网络和磁盘影响网络和磁盘影响 expdp/impdp 是服务端程序,影响它速度的只有磁盘 IO。 exp/imp 可以在服务端,也可以在客户端。所以,它受限于网络和磁盘。 1.1.5功能上的区别功能上的区别 更换表空间,用 exp/imp 的时候,要想更改表所在的表空间,需要手工去处理一 下,如 alter table xxx move tablespace_new 之类的操作。 用 impdp 只要用 remap_tablespace=tabspace_old:tablespace_new - 当指定一些表的时候,使用 exp/imp 时,tables 的用法是 tables=(table1,table2,table3)。expdp/impdp 用法是 tables=table1,table2,table3 - 是否要导出数据行 exp (ROWS=Y 导出数据行,ROWS=N 不导出数据行) expdp content(ALL:对象导出数据行,DATA_ONLY:只导出对象, METADATA_ONLY:只导出数据的记录) = 1.1.6使用中的优化事项使用中的优化事项 EXP 和 DIRECT=Y 配合使用的是 RECORDLENGTH 参数,它定义了 Export I/O 缓冲的 大小,作用类似于常规路径导出使用的 BUFFER 参数。建议设置 RECORDLENGTH 参数为 最大 I/O 缓冲,即 65535(64kb)。其用法如下: 如:exp userid=system/manager full=y direct=y recordlength=65535 file=exp_full.dmp log=exp_full.log -直接路径不能使用在 tablespace-mode -直接路径不支持 query 参数,query 只能在 conventional path 模式下使用。 - buffer 选项只对 conventional path exp 有效。 对于直接路径没有影响。 对 直接路径, 应该设置 RECORDLENGTH 参数。 - 对于直接路径下,RECORDLENGTH 参数建议设成 64k(65535)。这个值对 性能提高比较大 - IMP Oracle Import 进程需要花比 Export 进程数倍的时间将数据导入数据库。某些关键 时刻,导入是为了应对数据库的紧急故障恢复。为了减少宕机时间,加快导入速度显得至 关重要 (1)避免 I/O 竞争 Import 是一个 I/O 密集的操作,避免 I/O 竞争可以加快导入速度。如果可能,不 要在系统高峰的时间导入数据,不要在导入数据时运行 job 等可能竞争系统资源的操作。 (2)增加排序区 Oracle Import 进程先导入数据再创建索引,不论 INDEXES 值设为 YES 或者 NO, 主键的索引是一定会创建的。创建索引的时候需要用到排序区,在内存大小不足的时候, 使用临时表空间进行磁盘排序,由于磁盘排序效率和内存排序效率相差好几个数量级。增 加排序区可以大大提高创建索引的效率,从而加快导入速度。 (3)调整 BUFFER 选项 Imp 参数 BUFFER 定义了每一次读取导出文件的数据量,设的越大,就越减少 Import 进程读取数据的次数,从而提高导入效率。BUFFER 的大小取决于系统应用、数据 库规模,通常来说,设为百兆就足够了。其用法如下: imp user/pwd fromuser=user1 touser=user2 file=/tmp/imp_db_pipe1 commit=y feedback=10000 buffer=10240000 (4)使用 COMMIT=Y 选项 COMMIT=Y 表示每个数据缓冲满了之后提交一次,而不是导完一张表提交一次。 这样会大大减少对系统回滚段等资源的消耗,对顺利完成导入是有益的。 (5)使用 INDEXES=N 选项 前面谈到增加排序区时,说明 Imp 进程会先导入数据再创建索引。导入过程中建 立用户定义的索引,特别是表上有多个索引或者数据表特别庞大时,需要耗费大量时间。 某些情况下,需要以最快的时间导入数据,而索引允许后建,我们就可以使用 INDEXES=N 只导入数据不创建索引,从而加快导入速度。 我们可以用 INDEXFILE 选项生 成创建索引的 DLL 脚本,再手工创建索引。我们也可以用如下的方法导入两次, 第一次导入数据,第二次导入索引。其用法如下: imp user/pwd fromuser=user1 touser=user2 file=/tmp/imp_db_pipe1 commit=y feedback=10000 buffer=10240000 ignore=y rows=y indexes=n - imp user/pwd fromuser=user1 touser=user2 file=/tmp/imp_index_pipe1 commit=y feedback=10000 buffer=10240000 ignore=y rows=n indexes=y (6)增加 LARGE_POOL_SIZE 如果在 init.ora 中配置了 MTS_SERVICE,MTS_DISPATCHERS 等参数, tnsnames.ora 中又没有(SERVER=DEDICATED) 的配置,那么数据库就使用了共享服务器模式。在 MTS 模式下,Exp/Imp 操作会用到 LARGE_POOL,建议调整 LARGE_POOL_SIZE 到 150M。 检查数据库是否在 MTS 模式下: SQLselect distinct server from v$session; 如果返回值出现 none 或 shared,说明启用了 MTS - EXPDP 据泵与 exp/imp 来说性能有很大的提高, 其中影响最大的就是 paralle。 可以这么来看: expdp/impdp=exp/imp+direct moe + paralle. 所以, 使用数据泵,要想提高速度,就要设置并行参数 expdp full=y directory=dump dumpfile=orcl_%U.dmp parallel=4 那么 expdp 将为 parallel 创建 4 个文件: ORCL_01.DMP,RCL_02.DMP ,ORCL_03.DMP,RCL_04.DMP。 每个进程一个文件。 这样的话,每个文件的大小会因进程而不同。 可以某个文件很大, 某个文件 却很小。 要解决这个问题,就是设置 filesize 参数。 来指定每个文件的最大值。 这样当一 个文件 达到最大值的之后,就会创建一个新的文件 一般 parall 参数值等于 CPU 的个数。而且要小于 dump 文件的个数 sql show parameter cpu - IM

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论