EAS账套备份恢复指导手册.docx

上传人:b****7 文档编号:9168300 上传时间:2023-02-03 格式:DOCX 页数:17 大小:1.85MB
下载 相关 举报
EAS账套备份恢复指导手册.docx_第1页
第1页 / 共17页
EAS账套备份恢复指导手册.docx_第2页
第2页 / 共17页
EAS账套备份恢复指导手册.docx_第3页
第3页 / 共17页
EAS账套备份恢复指导手册.docx_第4页
第4页 / 共17页
EAS账套备份恢复指导手册.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

EAS账套备份恢复指导手册.docx

《EAS账套备份恢复指导手册.docx》由会员分享,可在线阅读,更多相关《EAS账套备份恢复指导手册.docx(17页珍藏版)》请在冰豆网上搜索。

EAS账套备份恢复指导手册.docx

EAS账套备份恢复指导手册

 

一.从原库中备份出来数据集

使用数据泵把数据备份出来,下图的是创建成一个sh文件导出。

备份脚本:

#!

/bin/sh

#用于备份

#用于备份的用户用户名

BACKUP_USER="username"

#用于备份的用户名密码

BACKUP_PASSWORD="pwd"

#用于备份和恢复的目录

WORKDIR="exp2_dir"

expdp $BACKUP_USER/$BACKUP_PASSWORD dumpfile=$BACKUP_USER+`date +%m.%d.%y`.dmp directory=$WORKDIR logfile=$BACKUP_USER+`date +%m.%d.%y`.log parallel=8 

job_name='exp_'+$BACKUP_USER+`date +%h%m%s`

 

由于金蝶的VT临时表不需要导出,在导出的时候,可以使用下面的参数来排除VT临时表:

--EXCLUDE

该选项用于指定执行操作时释放要排除对象类型或相关对象,EXCLUDE=STATISTICS(排除统计信息)

EXCLUDE=table:

like“‘VT%’”(排除eas的VT临时表)

EXCLUDE=STATISTICS,table:

like“‘VT%’”(VT临时表和统计信息一起排除)

二.新建数据库进行同用户名恢复

1、DBCA新建数据库

DBCA之前,要看看系统有没有配置好了display,这样才能打开图形界面,可以使用xclock命令验证,如果出现下图的钟图,说明就可以打开了。

如果不能打开,需要设置display,如我下图红框一所示:

ExportDISPLAY=ip:

0(ip是你本机使用xmanager连上的ip)

然后执行DBCA建立数据库,打开如下界面,点next下一步:

选择创建数据库createdatabase

注意:

这里字符集选择UTF8,这里选择错误会很麻烦,后续修改麻烦,金蝶默认就是使用UTF8字符的数据库。

图片选择错误了。

开始创建数据库

详细参考:

jingyan.baidu./article/412cb0721b4ff.html

∙需要注意这里

存大小:

典型,是按照比例来分配的。

我现在的物理存是3G,40%就是1G多。

如果你只是用来练习,大概给500MB就足够了。

∙还有指定快速回复区

新手最好不要修改路径

------------------------------------------------------------------------------------

2、创建表空间(和原库一样)

1.创建表空间需要知道原库的表空间情况。

 

--------#获取表空间的使用率和剩余空间,可算数据库的大小;

Selectd.tablespace_name,Space"Sum_space(M)",Blockssum_blocks,Space-nvl(free_space,0)"Used_space(M)",

round((1-nvl(free_space,0)/Space)*100,2)"Used_rate(%)",free_space"Free_space(M)"

From(Selecttablespace_name,round(Sum(bytes)/(1024*1024),2)Space,Sum(blocks)BlocksFromdba_data_filesGroupBytablespace_name)d,

(Selecttablespace_name,round(Sum(bytes)/(1024*1024),2)free_spaceFromdba_free_spaceGroupBytablespace_name)f

Whered.tablespace_name=f.tablespace_name(+)

---如果采用了完全本地管理的临时表空间,就加入如下部分

UnionAll--ifhavetempfile

Selectd.tablespace_name,Space"Sum_space(M)",blockssum_blocks,used_space"Used_space(M)",

round(nvl(used_space,0)/Space*100,2)"Used_rate(%)",nvl(free_space,0)"Free_space(M)"

From(Selecttablespace_name,round(Sum(bytes)/(1024*1024),2)Space,Sum(blocks)blocksFromdba_temp_filesGroupBytablespace_name)d,

(Selecttablespace_name,round(Sum(bytes_used)/(1024*1024),2)used_space,round(Sum(bytes_free)/(1024*1024),2)free_space

Fromv$temp_space_headerGroupBytablespace_name)f

Whered.tablespace_name=f.tablespace_name(+)

orderby5desc;

 

和现有的表空间对比;发现缺少表空间缺少的表空间ROCKCHECK_T(temp表空间)和ROCKCHECK(207GB)

注意:

针对不同的客户环境名字不一样,请认真核对。

 

创建下面缺少的表空间ROCKCHECK_T(temp表空间)和ROCKCHECK(207GB)

createtemporarytablespaceROCKCHECK_Ttempfile'/backup/easdb/easdb/ROCKCHECK_T.dbf'SIZE11100M;

 

由于这个表空间有207GB才够存放,oracle数据库中,8KB的数据块的数据文件最大为8K*4194304=32G,最大的数据文件为32gb。

207*3约等于7

CREATETABLESPACEROCKCHECKDATAFILE

'/backup/easdb/easdb/ROCKCHECK1.dbf'SIZE30720M,

'/backup/easdb/easdb/ROCKCHECK2.dbf'SIZE30720M,

'/backup/easdb/easdb/ROCKCHECK3.dbf'SIZE30720M,

'/backup/easdb/easdb/ROCKCHECK4.dbf'SIZE30720M,

'/backup/easdb/easdb/ROCKCHECK5.dbf'SIZE30720M,

'/backup/easdb/easdb/ROCKCHECK6.dbf'SIZE30720M,

'/backup/easdb/easdb/ROCKCHECK7.dbf'SIZE30720M;

 

创建账套用户username

(1)需要知道原库的这个用户默认表空间和临时表空间

 

知道了原库的用户表空间情况,那么就安装下面的语句在新库上面创建用户rockcheck:

CREATEUSERusername--创建一个用户,

IDENTIFIEDBYpwd--密码为pwd

DEFAULTTABLESPACE"ROCKCHECK"--默认表空间是ROCKCHECK

TEMPORARYTABLESPACE"ROCKCHECK_T"--临时表空间是ROCKCHECK_T

ACCOUNTUNLOCK;正常未锁定

分配权限给这个用户:

Grantdbatousername;

3、准备导入数据。

(1)确认第一步备份出来的备份集存放的路径和备份集名字。

路径:

/backup/xxx

备份集名字:

xxxx.dmp

注意:

这里只需确认存放备份集的路径及其文件名

 

(2)在新库创建directory

createdirectoryexp2_diras'/backup/';

grantread,writeondirectoryexp2_dirtousername;

(3)导入语句

#!

/bin/sh

#用于恢复

#用于恢复的用户用户名

BACKUP_USER="username"

#用于恢复的用户名密码

BACKUP_PASSWORD="pwd"

#用于备份和恢复的目录

WORKDIR="exp2_dir"

#指定好恢复的数据库的sid

ExportORACLE_SID=EASDB---指定恢复的数据库sid

Impdp$BACKUP_USER/$BACKUP_PASSWORDeasdbdumpfile=xx.dmpdirectory=$WORKDIRlogfile=IMP20160223.logparallel=4schemas=username;

 

4、按照账套用户(schema)恢复

$chmod+ximpdp.sh

执行导入脚本

$shimpdp.sh

 

监控导入进度

Selectd.tablespace_name,SpaceSum_space(M),Blockssum_blocks,Space-nvl(free_space,0)Used_space(M),

round((1-nvl(free_space,0)/Space)*100,2)Used_rate(%),free_spaceFree_space(M)

From(Selecttablespace_name,round(Sum(bytes)/(1024*1024),2)Space,Sum(blocks)BlocksFromdba_data_filesGroupBytablespace_name)d,

(Selecttablespace_name,round(Sum(bytes)/(1024*1024),2)free_spaceFromdba_free_spaceGroupBytablespace_name)f

Whered.tablespace_name=f.tablespace_name(+)

---如果采用了完全本地管理的临时表空间,就加入如下部分

UnionAll--ifhavetempfile

Selectd.tablespace_name,SpaceSum_space(M),blockssum_blocks,used_spaceUsed_space(M),

round(nvl(used_space,0)/Space*100,2)Used_rate(%),nvl(free_space,0)Free_space(M)

From(Selecttablespace_name,round(Sum(bytes)/(1024*1024),2)Space,Sum(blocks)blocksFromdba_temp_filesGroupBytablespace_name)d,

(Selecttablespace_name,round(Sum(bytes_used)/(1024*1024),2)used_space,round(Sum(bytes_free)/(1024*1024),2)free_space

Fromv$temp_space_headerGroupBytablespace_name)f

Whered.tablespace_name=f.tablespace_name(+)

orderby5desc;

错误一:

字符集选错,注册eas数据中心报错,需要修正字符集(尽量建库的时候选对UTF8,改起来很麻烦)尽量别犯这个错。

服务端修改字符集有点麻烦,要使客户端字符集与之一致,还有以前的dmp文件可能作废,

最好是修改client端的会话的字符集环境。

SQL>SHUTDOWNIMMEDIATE;

SQL>STARTUPMOUNTEXCLUSIVE;

SQL>ALTERSYSTEMENABLERESTRICTEDSESSION;

SQL>ALTERSYSTEMSETJOB_QUEUE_PROCESSES=0;

SQL>ALTERSYSTEMSETAQ_TM_PROCESSES=0;

SQL>ALTERDATABASEOPEN;

SQL>ALTERDATABASENATIONALCHARACTERSETINTERNAL_USEUTF8;

SQL>SHUTDOWNimmediate;

SQL>startup;

 

三、同一个数据库,不同用户名恢复

1、创建新表空间

注意:

表空间大小要和之前这个用户所占用的表空间大小一致,要能够存放新恢复的账套。

 

2、新建需要恢复的新用户名,并指定表空间

CREATEUSERnew_username--创建一个用户,

IDENTIFIEDBYpwd--密码为pwd

DEFAULTTABLESPACEnew_data_tbs--默认表空间是新建的

TEMPORARYTABLESPACE"new_data_tbs_T"--临时表空间是新建的_T

ACCOUNTUNLOCK;正常未锁定

分配权限给这个用户:

Grantdbatonew_username;

3、导入使用参数remap

需要另一个数据库的用户表导入到当前库中,但用户名不相同,以前exp/imp时,可以指定fromuser和touser来解决,在expdp中也提供了类似的解决方法

示例:

impdpsystem/zlsoftdumpfile=expdp:

EXPDP_ZLHIS.DMPnologfile=yremap_schema=zlhis:

scottremap_tablespace=ZL9BASEITEM:

users,

zl9indexhis:

users,zl9indexmtl:

userstable_exists_action=truncateexclude=object_grant

几个重要参数的说明一下:

1、remap_user重新映射用户,格式:

source_user1:

target_user1,source_user2:

target_user2

2、remap_tablespace重新映射表空间

remap_tablespace=old_tablespace:

new_tablespace,old_tablespace:

new_tablespace

3、table_exists_action表已经存在的动作有效关键字:

(SKIP),APPEND,REPLACE和TRUNCATE。

4、exclude=object_grant跳过对象授权

 

导入脚本:

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1