3. 运行安装所需脚本
vi /u01/app/Oracle/oraInventory/logs/silentInstall2008-05-12_08-26-55PM.log
查看日志,提示我们用root用户运行如下两个脚本
/u01/app/oracle/oraInventory/orainstRoot.sh
/u01/app/oracle/product/10.2.0/db_1/root.sh
至此Oracle的产品已经安装完成,可是目前为止我们还没有建立数据库。
由于没有X界面无法启动dbca ,所以不能用dbca来帮我们建立数据库。这时候你可能会想到用create database 语句来建立数据库,可是语法实在是繁琐,并且还要运行许多的
oracle脚本 。
下面我们来利用oracle提供的种子数据库还原一个数据库出来。
假设我们要建立的数据库的名称为orcl 。
4.建立我们所需的目录。
mkdir -p /u01/app/oracle/admin/orcl/{a,b,u}dump
mkdir -p /u01/app/oracle/oradata/orcl
找到oracle为种子数据库提供的控制文件并copy至/u01/app/oracle/oradata/orcl 。
cd /u01/app/oracle/product/10.2.0/db_1/assistants/dbca/templates/
cp Seed_Database.ctl /u01/app/oracle/oradata/orcl
5.建立pfile文件
cd /u01/app/oracle/product/10.2.0/db_1/dbs
vi initorcl.ora
*.db_name=SEEDDATA #注:因为Seed_Database.ctl控制文件中记录的db_name为SEEDDATA。
control_files='/u01/app/oracle/oradata/orcl/Seed_Database.ctl'
compatible=10.2.0.1.0
6.启动数据库到mount状态
sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production . Mon May 12 21:48:47 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup mount
ORACLE instance started.
Total System Global Area 117440512 bytes
Fixed Size 1218004 bytes
Variable Size 58722860 bytes
Database Buffers 50331648 bytes
Redo Buffers 7168000 bytes
Database mounted.
使用默认的参数建立spfile
SQL> create spfile from pfile;
重新启动数据库
SQL> shutdown immediate
SQL> startup mount
更改sga_max_size,sga_target参数的值 。
SQL> alter system set sga_max_size=200M scope=spfile;
SQL> alter system set sga_target=160M scope=spfile;
然后再次重新启动数据库
SQL> shutdown immediate
SQL> startup mount
7.用rman连接数据库
rman target /
Recovery Manager: Release 10.2.0.1.0 - Production . Mon May 12 21:52:01 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
connected to target database: SEEDDATA (DBID=3891038516, not open)
RMAN> list backup;
using target database control file instead of recovery catalog
List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
1 Full 89.23M DISK 00:00:36 30-JUN-05
BP Key: 1 Status: AVAILABLE Compressed: YES Tag:
Piece Name: /ade/aime_10.2_lnx_push/oracle/oradata/Seed_Database.dfb
List of Datafiles in backup set 1
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
1 Full 446074 30-JUN-05 /ade/aime_10.2_lnx_push/oracle/oradata/seeddata/system01.dbf
2 Full 446074 30-JUN-05 /ade/aime_10.2_lnx_push/oracle/oradata/seeddata/undotbs01.dbf
3 Full 446074 30-JUN-05 /ade/aime_10.2_lnx_push/oracle/oradata/seeddata/sysaux01.dbf
4 Full 446074 30-JUN-05 /ade/aime_10.2_lnx_push/oracle/oradata/seeddata/users01.dbf
可以看到,我们可以利用/ade/aime_10.2_lnx_push/oracle/oradata/Seed_Database.dfb这个备份集来还原数据库。
但是很明显我们系统中并没有这样一个文件/ade/aime_10.2_lnx_push/oracle/oradata/Seed_Database.dfb ,但是查找发现路径/u01/app/oracle/product/10.2.0/db_1/assistants/dbca/templates下有Seed_Database.dfb文件 。
有两种方法,一个是建立一个软链接/ade/aime_10.2_lnx_push/oracle/oradata/Seed_Database.dfb 指向/u01/app/oracle/product/10.2.0/db_1/assistants/dbca/templates/Seed_Database.dfb 。另一个是创建目录/ade/aime_10.2_lnx_push/oracle/oradata/
并将Seed_Database.dfb copy至其下 。