收藏 分销(赏)

Oracle数据库备份和恢复操作基础手册.doc

上传人:精**** 文档编号:3033940 上传时间:2024-06-13 格式:DOC 页数:16 大小:1.05MB 下载积分:8 金币
下载 相关 举报
Oracle数据库备份和恢复操作基础手册.doc_第1页
第1页 / 共16页
Oracle数据库备份和恢复操作基础手册.doc_第2页
第2页 / 共16页


点击查看更多>>
资源描述
1 ORACLE数据库数据备份和恢复操作手册 1.1. ORACLE参数设置 进入CMD操作界面,使用sqlplus连接数据库, 图例 1 数据库连接操作 连接语法:sqlplus system/Oracle@orcl 参数说明 参数 说明 备注 sqlplus 语法命令 system 数据库管理员用户名 Oracle system用户密码 orcl 数据库连接标示符 数据库安装目录tnsnames.ora文件中能够找到 Oracle11G目录:C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN 图例 2 成功连接数据库 环境变量设置(在Sqlplus中实施) create or replace directory <dir_name> as ‘c:\tmpdir’; 参数说明 参数 说明 备注 dir_name 路径名称 c:\tmpdir 文件路径 也能够是另外随意目录,用单引号括起来。 图例 3 环境变量设置 1.2. 数据备份 备份脚本:expdp system/Oracle@orcl directory=file_path dumpfile=ARADMIN.dat logfile=ARADMIN.log schemas=ARADMIN 参数说明 参数 说明 备注 expdp 语法命令 system 数据库管理员用户名 Oracle system用户密码 orcl 数据库连接标示符 数据库安装目录tnsnames.ora文件中能够找到 Oracle11G目录:C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN directory 文件目录名称 导出数据库文件存放目录 dumpfile 数据库文件名称 导出数据库文件文件名 logfile 数据库日志文件名称 导出数据库日志文件名称 schemas 数据库用户 操作: 图例 4 数据库备份操作 成功导出。 图例 5 成功导出 1.3. 数据恢复 1.3.1. 删除ARADMIN用户 1. 连接数据库 sqlplus system/Oracle@orcl 图例 6 连接数据库 2. 删除目标数据库中ARADMIN用户 drop user ARADMIN cascade; 图例 7 成功删除目标数据库中ARADMIN用户 1.3.2. 重新创建ARADMIN用户 1. 连接数据库 sqlplus system/Oracle@orcl 图例 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/Oracle@orcl directory=file_path dumpfile= ARADMIN0606.DAT logfile= ARADMIN0614.log schemas=ARADMIN 图例 11 数据库导入 导入完成 1.4. EXP/IMP和EXPDP/IMPDP 对比 1.0.1 运行位置不一样 1.0.2 EXP/IMP不一样模式原理: exp/imp 默认会是传统路径, 这种模式下,是用SELECT 加数据查询出来,然后写入buffer cache,在将这些统计写入evaluate buffer. 最终传到Export用户端,在写入dump文件。 直接路径模式下,数据直接从硬盘读取,然后写入PGA, 格式就是export格式,不需要转换,数据再直接传到export 用户端,写入dump 文件.这种模式没有经过evaluation buffer。 少了一个过程,导出速度提升也是很显著. 1.0.3 EXPDP/IMPDP不一样模式原理: expdp/impdp 默认就是使用直接路径,所以expdp要比exp快。 Network Link这种模式很方便,不过速度是最慢,因为它是经过insert,select + dblink来实现。速度慢也由此可见了。 1.0.4 网络和磁盘影响 expdp/impdp 是服务端程序,影响它速度只有磁盘IO。 exp/imp 能够在服务端,也能够在用户端。所以,它受限于网络和磁盘。 1.0.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.0.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模式下: SQL>select 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 ---------------------------------------------------------------------- IMPDP 注意事项: (1)导入时候可能会停在某个地方,比如在创建索引时候,可能在一个地方停了十几分钟。这个时候切记不要中止过程。 这个时候可能是需要导入数据比较多。 能够在不一样时段观察下表空间大小改变。 假如表空间一直在改变,说明还在导入,这个时候耐心等候就好。 (2)导出导入过程,尽可能避免用ssh连上服务器,在用户端ssh里实施备份恢复命令。 因为这么,假如连接中止,备份也就中止了。 能够将备份脚本添加到crontab 里。 让备份在服务器上实施。 这么即使ssh中止,备份和恢复也不受影响。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服