导航

17.2.1 在同一主机上建立用户管理的复制数据库

Posted on 2009-02-04 12:03  毅无涯  阅读(249)  评论(0编辑  收藏  举报

(1) 建立存放复制数据库的各种相关文件的OS 目录。

(2) 建立例程服务。

(3) 建立参数文件。

  1. 连接到主数据库建立文本参数文件。
  2. 编辑文本参数文件。
  3. 建立服务器参数文件。

(4) 复制主数据库的数据文件备份到复制数据库所在的目录。

(5) 启动例程,并建立控制文件。

(6) 恢复复制数据库。

(7) 打开复制数据库。

 

C:\>sqlplus sys/orcl@demo as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 2月 4 11:35:50 2009

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------

D:\DEMO\SYSTEM01.DBF
D:\DEMO\UNDOTBS01.DBF
D:\DEMO\SYSAUX01.DBF
D:\DEMO\USERS01.DBF

SQL> alter database begin backup;

数据库已更改。

SQL> host copy D:\DEMO\SYSTEM01.DBF d:\backup
已复制         1 个文件。

SQL> host copy D:\DEMO\UNDOTBS01.DBF d:\backup
已复制         1 个文件。

SQL> host copy D:\DEMO\SYSAUX01.DBF d:\backup
已复制         1 个文件。

SQL> host copy D:\DEMO\USERS01.DBF d:\backup
已复制         1 个文件。

SQL> alter database end backup;

数据库已更改。

SQL> alter system archive log current;

系统已更改。

SQL> alter database backup controlfile to trace resetlogs;

数据库已更改。

SQL> archive log list
数据库日志模式            存档模式
自动存档             启用
存档终点            c:\demo\archive
最早的联机日志序列     56
下一个存档日志序列   58
当前日志序列           58

SQL> exit
从 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 断开

C:\>mkdir d:\dupdb

C:\>mkdir d:\dupdb\bdump

C:\>mkdir d:\dupdb\udump

C:\>mkdir d:\dupdb\archive

C:\>oradim -new -sid dupdb -syspwd oracle
实例已创建。

C:\>sqlplus sys/orcl@demo as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 2月 4 11:29:18 2009

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> create pfile='%oracle_home%\database\initdupdb.ora' from spfile;

文件已创建。

修改:

db_name='dupdb'
instance_name=dupdb
service_names=dupdb
background_dump_dest='D:\dupdb\bdump'
control_files='d:\dupdb\control01.ctl'
user_dump_dest='D:\dupdb\udump'
log_archive_dest_1='location=d:\dupdb\archive'

SQL> create spfile='%oracle_home%\database\spfiledupdb.ora' from pfile='%oracle_
home%\database\initdupdb.ora';

文件已创建。

SQL> host copy d:\backup\*.dbf d:\dupdb
d:\backup\SYSAUX01.DBF
d:\backup\SYSTEM01.DBF
d:\backup\UNDOTBS01.DBF
d:\backup\USERS01.DBF
已复制         4 个文件。

SQL> exit
从 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 断开

C:\>set oracle_sid=dupdb

C:\>sqlplus sys/oracle as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 2月 4 11:43:44 2009

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

已连接到空闲例程。

SQL> startup nomount
ORACLE 例程已经启动。

Total System Global Area  603979776 bytes
Fixed Size                  1250380 bytes
Variable Size             260049844 bytes
Database Buffers          335544320 bytes
Redo Buffers                7135232 bytes
SQL> CREATE CONTROLFILE REUSE SET DATABASE "DUPDB" RESETLOGS  ARCHIVELOG
  2      MAXLOGFILES 16
  3      MAXLOGMEMBERS 3
  4      MAXDATAFILES 100
  5      MAXINSTANCES 8
  6      MAXLOGHISTORY 292
  7  LOGFILE
  8    GROUP 1 (
  9      'D:\DUPDB\REDO01.LOG'
10    ) SIZE 50M,
11    GROUP 2 (
12      'D:\DUPDB\REDO02.LOG'
13    ) SIZE 50M,
14    GROUP 3 (
15      'D:\DUPDB\REDO03.LOG'
16    ) SIZE 50M
17  DATAFILE
18    'D:\DUPDB\SYSTEM01.DBF',
19    'D:\DUPDB\UNDOTBS01.DBF',
20    'D:\DUPDB\SYSAUX01.DBF',
21    'D:\DUPDB\USERS01.DBF'
22  CHARACTER SET ZHS16GBK;

控制文件已创建。

SQL> set logsource 'd:\demo\archive'
SQL> recover database using backup controlfile until cancel
ORA-00279: ?? 1694834 (? 02/04/2009 11:36:18 ??) ???? 1 ????
ORA-00289: ??: D:\DEMO\ARCHIVE\CB5C0541_674493001_00057_001_0.ARC
ORA-00280: ?? 1694834 (???? 1) ??? #57 ?

指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
d:\demo\archive\CB5C0541_674493001_00057_001_CBC29ECF.ARC
ORA-00279: ?? 1695038 (? 02/04/2009 11:39:40 ??) ???? 1 ????
ORA-00289: ??: D:\DEMO\ARCHIVE\CB5C0541_674493001_00058_001_CBC29ECF.ARC
ORA-00280: ?? 1695038 (???? 1) ??? #58 ?
ORA-00278: ???????????
'd:\demo\archive\CB5C0541_674493001_00057_001_CBC29ECF.ARC'

指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
cancel
介质恢复已取消。
SQL> alter database open resetlogs;

数据库已更改。