linux oracle 恢复到 windows,windows备份,到Linux恢复的问题

我以前做的,不过与你的想法,仔细看了一些,如果版本相同,估计不要startup upgrade..

升级10.2.0.3(linux WA)到10.2.0.4(windows 2008 WB).txt

0.机器表示

linux机器wa: oracle版本 10.2.0.3

windows 2008机器wb: oracle 10.2.0.4

1.拷贝文件,把dg设置为read only,这样数据文件保持一直.

mount.cifs  //192.168.101.229/c$ /mnt/229 -o user=administrator,ip=192.168.101.229,iocharset=cp936

mkdir -p /mnt/229/oracle/product/10.2.0/oradata/orcl

nohup cp -f /data/orcl/*.dbf /mnt/229/oracle/product/10.2.0/oradata/orcl &

2.在linux服务器上建立控制文件脚本:

alter session set tracefile_identifier=crcontrol ;

alter database backup controlfile to trace;

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS FORCE LOGGING ARCHIVELOG

MAXLOGFILES 192

MAXLOGMEMBERS 3

MAXDATAFILES 1024

MAXINSTANCES 32

MAXLOGHISTORY 6464

LOGFILE

GROUP 1 'c:\oracle\product\10.2.0\oradata\orcl\redo01.log'  SIZE 50M,

GROUP 2 'c:\oracle\product\10.2.0\oradata\orcl\redo02.log'  SIZE 50M,

GROUP 3 'c:\oracle\product\10.2.0\oradata\orcl\redo03.log'  SIZE 50M,

GROUP 4 'c:\oracle\product\10.2.0\oradata\orcl\redo04.log'  SIZE 50M,

GROUP 5 'c:\oracle\product\10.2.0\oradata\orcl\redo05.log'  SIZE 50M,

GROUP 6 'c:\oracle\product\10.2.0\oradata\orcl\redo06.log'  SIZE 50M,

GROUP 7 'c:\oracle\product\10.2.0\oradata\orcl\redo07.log'  SIZE 50M,

GROUP 8 'c:\oracle\product\10.2.0\oradata\orcl\redo08.log'  SIZE 50M

-- STANDBY LOGFILE

DATAFILE

'c:\oracle\product\10.2.0\oradata\orcl\system01.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\undotbs01.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\sysaux01.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\undotbs02.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\users01.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tools.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_acct.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_back.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_bldbank.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_comm.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_econstat.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_equipment.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_exam.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_gr.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_icare.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_inpadm.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_inpbill.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_insurance.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_lab.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_medadm.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_medhis.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_medrec.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_ordadm.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_outpadm.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_outpbill.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_pe.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_pharmacy.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_salary.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_sfxt.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_surgery.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\tsp_temp.dbf',

'c:\oracle\product\10.2.0\oradata\orcl\apcomplexstat.dbf'

CHARACTER SET US7ASCII;

修改文件路径符合windows的需求.

CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS FORCE LOGGING ARCHIVELOG

注意要使用RESETLOGS参数,不然redo文件也要拷贝.

3.建立oracle参数文件,可以从linux服务器取出,并且修改一些路径符合windows的需要.

*.__db_cache_size=452984832

*.__java_pool_size=16777216

*.__large_pool_size=16777216

*.__shared_pool_size=704643072

*.__streams_pool_size=0

*.audit_file_dest='c:\oracle\product\10.2.0\admin\orcl\adump'

*.background_dump_dest='c:\oracle\product\10.2.0\admin\orcl\bdump'

*.compatible='10.2.0.3.0'

*.control_file_record_keep_time=7

*.control_files='c:\oracle\product\10.2.0\oradata\orcl\control01.ctl','c:\oracle\product\10.2.0\oradata\orcl\control02.ctl','c:\oracle\product\10.2.0\oradata\orcl\control03.ctl',

*.core_dump_dest='c:\oracle\product\10.2.0\admin\orcl\cdump'

*.cursor_sharing='EXACT'

*.db_block_size=16384

*.db_domain=''

*.db_file_multiblock_read_count=16

*.db_name='orcl'

*.db_recovery_file_dest='c:\oracle\product\10.2.0\flash_recovery_area'

*.db_recovery_file_dest_size=21474836480

*.DB_UNIQUE_NAME='orcl'

*.job_queue_processes=10

*.log_archive_format='%T_%S_%r.dbf'

*.open_cursors=300

*.pga_aggregate_target=402653184

*.processes=600

#*.remote_listener='LISTENERS_ORCL'

*.remote_login_passwordfile='exclusive'

*.SERVICE_NAMES='orcl'

*.session_max_open_files=100

*.sessions=665

*.sga_target=1207959552

*.undo_management='AUTO'

*.undo_tablespace='UNDOTBS1'

*.user_dump_dest='c:\oracle\product\10.2.0\admin\orcl\udump'

*.thread=1

4.建立相关文件的路径:

grep c: initorcl.ora |cut -f2 -d"="

'c:\oracle\product\10.2.0\admin\orcl\adump'

'c:\oracle\product\10.2.0\admin\orcl\bdump'

'c:\oracle\product\10.2.0\oradata\orcl\control01.ctl','c:\oracle\product\10.2.0\oradata\orcl\control02.ctl','c:\oracle\product\10.2.0\oradata\orcl\control03.ctl',

'c:\oracle\product\10.2.0\admin\orcl\cdump'

'c:\oracle\product\10.2.0\flash_recovery_area'

'c:\oracle\product\10.2.0\admin\orcl\udump'

mkdir c:\oracle\product\10.2.0\admin\orcl\adump

mkdir c:\oracle\product\10.2.0\admin\orcl\bdump

mkdir c:\oracle\product\10.2.0\admin\orcl\cdump

mkdir c:\oracle\product\10.2.0\flash_recovery_area

mkdir c:\oracle\product\10.2.0\admin\orcl\udump

5.建立口令文件

orapwd file= password= entries= force= ignorecase= nosysdba=

oradim -NEW -SID orcl

6.建立控制文件,启动数据库到升级模式,不然会出现ora-00704错误.

sqlplus sys as sysdba

>@cr_control.sql

>shutdown immediate

7.建立临时表空间:

sqlplus sys as sysdba

startup upgrade

>@cr_temp

ALTER TABLESPACE TEMP ADD TEMPFILE  'c:\oracle\product\10.2.0\oradata\orcl\temp01.dbf'

SIZE 3630M REUSE AUTOEXTEND ON NEXT 655360  MAXSIZE 4096M;

ALTER TABLESPACE TEMP2 ADD TEMPFILE 'c:\oracle\product\10.2.0\oradata\orcl\temp2.dbf'

SIZE 12288M REUSE AUTOEXTEND ON NEXT 16777216  MAXSIZE 12288M;

8.注意要建立新的DIRECTORY目录,脚本如下cr_dir.sql:

>startup upgrade

CREATE OR REPLACE DIRECTORY

ADMIN_DIR AS

'c:\oracle\product\10.2.0\db_1\md\admin';

CREATE OR REPLACE DIRECTORY

DATA_PUMP_DIR AS

'c:\oracle\product\10.2.0\admin\orcl\dpdump\';

GRANT READ, WRITE ON DIRECTORY SYS.DATA_PUMP_DIR TO EXP_FULL_DATABASE;

GRANT READ, WRITE ON DIRECTORY SYS.DATA_PUMP_DIR TO IMP_FULL_DATABASE;

CREATE OR REPLACE DIRECTORY

WORK_DIR AS

'c:\oracle\product\10.2.0\db_1/work';

DROP DIRECTORY HISDATA;

DROP DIRECTORY HISDPDATA;

9.后面的步骤与升级数据库版本的一样:

@c:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\utlu102i.sql

@c:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\catupgrd.sql

10.打开数据库

@c:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\utlrp.sql

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值