Oracle 10g靜默安裝(實戰平臺:RHEL5,內核版本:2.6.18-8.el5)

---- Step 1. 準備文件 


1). 拷貝文件 10201_database_linux32.zip 到 /oracle目錄下; 


2). 解壓(可用鼠標右擊解壓,或用口令, cd /oracle) 
[root@lym oracle]# uzip 10201_database_linux32.zip 


3). 在/etc目錄下建立一個名爲 oraInst.loc 的文件,文件中的內容(兩行代碼)以下: 
inventory_loc=ORACLE_BASE/oraInventory 
inst_group= oinstall 


4). 輸入下面的命令在oraInst.loc文件上設置合適的擁有者,組和權限: 
[root@lym oracle]# chown oracle:oinstall oraInst.loc 
[root@lym oracle]# chmod 664 oraInst.loc 
////////////////////////////////////////////////////////// 
---- Step 2 檢查硬件需求 
1). 查看系統物理內存,如下輸出能夠看出,有1G的內存,內存最低要求256M。 
[root@lym oracle]# grep MemTotal /proc/meminfo  
MemTotal:      1035400 kB 


2). 查看交換空間大小,如下輸出能夠看出,有2G的交換空間,交換空間的最優設置與你物理內存大小相關,詳細說明請參考安裝文檔 
[root@lym oracle]# grep SwapTotal /proc/meminfo 
SwapTotal:     2096440 kB 


3). 查看可用物理內存和交換空間 
[root@lym oracle]# free 
             total       used       free     shared    buffers     cached 
Mem:       1035400    1019716      15684          0      10152     815440 
-/+ buffers/cache:     194124     841276 
Swap:      2096440        108    2096332 


4). 查看掛載的臨時分區空間狀況 
Filesystem           1K-blocks      Used Available Use% Mounted on 
/dev/hda3              8823460   4068908   4299112  49% / 


--客戶端安裝有四種安裝模式供選擇,各類安裝模式的功能及其佔用磁盤空間請見安裝文檔, 
--我選擇「Administrator」,佔用空間爲:820 MB,以適應sb1機器的使用要求! 


5). 查看處理器類型,看是否適合安裝此軟件 
[root@lym oracle]# grep "model name" /proc/cpuinfo 
model name      : Intel(R) Celeron(R) CPU 1.70GHz 


///////////////////////////////////////////////////////////////////// 
---- Step 3 檢查軟件需求 


1). 查看Linux版本 
[root@lym oracle]# cat /etc/issue 
Red Hat Enterprise Linux Server release 5 (Tikanga) 
Kernel \r on an \m 


2). 查看內核版本 
[root@lym oracle]# uname -a 
Linux lym.oracle.com 2.6.18-8.el5 #1 SMP Fri Jan 26 14:15:21 EST 2007 i686 i686 i386 GNU/Linux 


3). 檢測及安裝須要安裝的系統軟件包 
[root@lym Server]# rpm -ivh glibc-headers-2.5-12.i386.rpm 
[root@lym Server]# rpm -ivh glibc-devel-2.5-12.i386.rpm 
[root@lym Server]# rpm -ivh libgomp-4.1.1-52.el5.i386.rpm 
[root@lym Server]# rpm -ivh gcc-4.1.1-52.el5.i386.rpm 
[root@lym Server]# rpm -ivh libstdc++-devel-4.1.1-52.el5.i386.rpm 
[root@lym Server]# rpm -ivh gcc-c++-4.1.1-52.el5.i386.rpm 
[root@lym Server]# rpm -ivh make-3.81-1.1.i386.rpm 
[root@lym Server]# rpm -ivh libXp-1.0.0-8.i386.rpm 
[root@lym Server]# rpm -ivh openmotif-2.3.0-0.3.el5.i386.rpm 
[root@lym Server]# rpm -ivh setarch-2.0-1.1.i386.rpm 
[root@lym Server]# rpm -ivh compat-db-4.2.52-5.1.i386.rpm 
[root@lym Server]# rpm -ivh compat-gcc-34-3.4.6-4.i386.rpm 
[root@lym Server]# rpm -ivh compat-gcc-34-c++-3.4.6-4.i386.rpm 
[root@lym Server]# rpm -ivh compat-libstdc++-33-3.2.3-61.i386.rpm


/////////////////////////////////////////////////////////////////////
---- Step 4 配置內核及其餘參數
1). vi /etc/sysctl.conf    --加入如下11行代碼(並將原來的# kernel.shmmax和kernel.shmall這兩行參數屏蔽)
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144


2). 執行如下命令使以上參數修改生效
[root@lym Server]# /sbin/sysctl -p


3). vi /etc/security/limits.conf --加入如下四行代碼
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536


4). vi /etc/pam.d/login  --加入下面一行代碼
session required /lib/security/pam_limits.so


5). vi /etc/selinux/config --(禁用SELINUX,安裝完後可再還原成原值) 將SELINUX設置爲
  SELINUX=disabled


////////////////////////////////////////////////////////////
---- Step 5. 添加用戶組和用戶,併爲oracle用戶設置密碼


[root@lym Server]# groupadd oinstall
[root@lym Server]# groupadd dba
[root@lym Server]# groupadd oper
[root@lym Server]# useradd -g oinstall -G dba oracle
[root@lym Server]# passwd oracle
Changing password for user oracle.
New UNIX password: 
Retype new UNIX password: 
passwd: all authentication tokens updated successfully.


/////////////////////////////////////////////////////////////
---- Step 6. 建立安裝Oracle的文件夾,並設置其相應權限給Oracle用戶。
[root@lym Server]# mkdir -p /u01/app/oracle/product/10.2.0/db_1
[root@lym Server]# chown -R oracle.oinstall /u01
[root@lym Server]# chmod 775 /u01


/////////////////////////////////////////////////////////////
---- Step 7. 假裝操做系統版本,使安裝Oracle時,經過操做系統驗證。
vi /etc/redhat-release  --(可保存此文件的副本在某位置,以便安裝完成後,復原此文件)
--將這文件中的內容( Red Hat Enterprise Linux Server release 5 (Tikanga) )
替換爲以下代碼:
redhat-4


/////////////////////////////////////////////////////////////
---- Step 8. Oracle 10g 默認不支持中文
安裝時將 /etc/sysconfig/i18n 中的 LANG改成 en 便可


/////////////////////////////////////////////////////////////
---- Step 9. 設置Oracle環境變量(可根據你的須要做適當更改)
[root@lym Server]# vi /home/oracle/.bash_profile   --加入內容以下
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR


ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME
ORACLE_SID=TSH1; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH


LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH


if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi


////////////////////////////////////////////////////////////
---- Step 10. 註銷root用戶,並登陸oracle用戶,在/home/oracle目錄下創建一個名爲enterprise01.rsp的文件,裏面的具體內容以下(參考/oracle/database/response目錄下面的enterprise.rsp文件,該目錄下有三個文件enterprise.rsp(企業版靜默安裝文件),standard.rsp(標準版靜默安裝文件)和custom.rsp(客戶版靜默安裝文件),另外還有其餘三個靜默安裝文件)。


RESPONSEFILE_VERSION=2.2.1.0.0
FROM_LOCATION="../stage/products.xml"
ORACLE_HOME="/u01/app/oracle/product/10.2.0/db_1/"
ORACLE_HOME_NAME="OraDb10g_home1"
TOPLEVEL_COMPONENT={"oracle.server","10.2.0.1.0"}
DEINSTALL_LIST={"oracle.server","10.2.0.1.0"}
SHOW_SPLASH_SCREEN=false
SHOW_WELCOME_PAGE=false
SHOW_COMPONENT_LOCATIONS_PAGE=false
SHOW_CUSTOM_TREE_PAGE=false
SHOW_SUMMARY_PAGE=false
SHOW_INSTALL_PROGRESS_PAGE=false
SHOW_REQUIRED_CONFIG_TOOL_PAGE=false
SHOW_CONFIG_TOOL_PAGE=false
SHOW_RELEASE_NOTES=false
SHOW_ROOTSH_CONFIRMATION=false
SHOW_END_SESSION_PAGE=false
SHOW_EXIT_CONFIRMATION=false
NEXT_SESSION=false
NEXT_SESSION_ON_FAIL=false
SHOW_DEINSTALL_CONFIRMATION=false
SHOW_DEINSTALL_PROGRESS=false
ACCEPT_LICENSE_AGREEMENT=true
COMPONENT_LANGUAGES={"en"}
CLUSTER_NODES=
INSTALL_TYPE="EE"
s_nameForDBAGrp=dba
s_nameForOPERGrp=dba
b_oneClick=false
SHOW_DATABASE_CONFIGURATION_PAGE=false
b_createStarterDB=false


///////////////////////////////////////////////////////////////////
---- Step 11. 開始安裝
[oracle@lym ~]$ cd /oracle/database
[oracle@lym database]$ ./runInstaller -silent -responseFile /home/oracle/enterprise01.rsp


-------安裝時終端輸出相似如文件"安裝過程當中的終端顯示2.txt"中的內容--------
-------請您耐心等待,可先去喝杯荼!---------


//////////////////////////////////////////////////////////////////
---- Step 12. 以root用戶運行安裝後環境所需腳本(千萬主意:要以root用戶去執行這兩個腳本,執行後一個腳本時,回車一下就能夠了)
[root@lym ~]# sh /u01/app/oracle/oraInventory/orainstRoot.sh
[root@lym ~]# sh /u01/app/oracle/product/10.2.0/db_1/root.sh


---- Step 測試看可否進sqlplus----
[oracle@lym ~]$ sqlplus /nolog


SQL*Plus: Release 10.2.0.1.0 - Production on Thu May 22 00:25:56 2008


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


SQL> 


至此Oracle的產品已經安裝完成,但是目前爲止咱們尚未創建數據庫。
因爲沒有X界面沒法啓動dbca ,因此不能用dbca來幫咱們創建數據庫。這時候你可能會想到用create database 語句來創建數據庫,但是語法實在是繁瑣,而且還要運行許多的
oracle腳本 。










此時,咱們能夠利用oracle提供的種子數據庫還原一個數據庫出來(詳細見如下操做)
假設咱們要創建的數據庫的名稱爲TSH1(這個名稱跟你安裝前設置的環境變量中的ORACLE_SID相一致)。
-----------------------------------------------------------------------------
---------利用oracle提供的種子數據庫還原一個數據庫出來 的詳細步驟---------------
///////////////////////////////////////////////////////////////////////////
---- Step 1. 創建咱們所需的目錄,並刷新受權。
[root@lym Server]# mkdir -p /u01/app/oracle/admin/TSH1/{a,b,u}dump
[root@lym Server]# mkdir -p /u01/app/oracle/oradata/TSH1
[root@lym Server]# chown -R oracle.oinstall /u01
[root@lym Server]# chmod 775 /u01
--你能夠在oracle用戶下,看刷新受權先後,權限的變化(比較以下)。 
[oracle@lym oracle]$ ls -l     --刷新受權前/uo1/oracle/oracle下面各文件的權限
total 16
drwxr-xr-x 3 root   root     4096 May 22 06:24 admin
drwxr-xr-x 3 root   root     4096 May 22 06:25 oradata
drwxr-xr-x 6 oracle oinstall 4096 May 22 06:19 oraInventory
drwxr-xr-x 3 oracle oinstall 4096 May 22 06:08 product
[oracle@lym oracle]$ ls -l     ----刷新受權後/uo1/oracle/oracle下面各文件的權限
total 16
drwxr-xr-x 3 oracle oinstall 4096 May 22 06:24 admin
drwxr-xr-x 3 oracle oinstall 4096 May 22 06:25 oradata
drwxr-xr-x 6 oracle oinstall 4096 May 22 06:19 oraInventory
drwxr-xr-x 3 oracle oinstall 4096 May 22 06:08 product


/////////////////////////////////////////////////////////////////////////////
---- Step 2. 找到oracle爲種子數據庫提供的控制文件並copy至/u01/app/oracle/oradata/TSH1目錄下(在Oracle用戶下操做)。
[oracle@lym oracle]$ cd /u01/app/oracle/product/10.2.0/db_1/assistants/dbca/templates/
[oracle@lym templates]$ cp Seed_Database.ctl /u01/app/oracle/oradata/TSH1


////////////////////////////////////////////////////////////////////////////
---- Step 3. 創建pfile文件(在Oracle用戶下操做)。
[oracle@lym templates]$ cd /u01/app/oracle/product/10.2.0/db_1/dbs
[oracle@lym templates]$ vi initTSH1.ora  --輸入如下三行並保存退出
*.db_name=SEEDDATA
control_files='/u01/app/oracle/oradata/TSH1/Seed_Database.ctl'
compatible=10.2.0.1.0


----注:由於Seed_Database.ctl控制文件中記錄的db_name爲SEEDDATA,因此第一行的設置如此。
/////////////////////////////////////////////////////////////////////////////
---- Step 4. 啓動數據庫到mount狀態,並使用默認的參數創建spfile文件;而後從新啓動數據庫並更改sga_max_size,sga_target參數的值;而後再次從新啓動數據庫(具體操做以下)。
[oracle@lym dbs]$ sqlplus / as sysdba


SQL*Plus: Release 10.2.0.1.0 - Production on Thu May 22 06:56:19 2008


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


Connected to an idle instance.


SQL> startup mount
ORACLE instance started.


Total System Global Area  113246208 bytes
Fixed Size                  1218004 bytes
Variable Size              58722860 bytes
Database Buffers           50331648 bytes
Redo Buffers                2973696 bytes
Database mounted.
SQL> create spfile from pfile;


File created.


SQL> shutdown immediate
ORA-01109: database not open




Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.


Total System Global Area  113246208 bytes
Fixed Size                  1218004 bytes
Variable Size              58722860 bytes
Database Buffers           50331648 bytes
Redo Buffers                2973696 bytes
Database mounted.
SQL> alter system set sga_max_size=200M scope=spfile;


System altered.


SQL> alter system set sga_target=160M scope=spfile;


System altered.


SQL> shutdown immediate
ORA-01109: database not open




Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.


Total System Global Area  209715200 bytes
Fixed Size                  1218580 bytes
Variable Size             100665324 bytes
Database Buffers          104857600 bytes
Redo Buffers                2973696 bytes
Database mounted.
SQL> 






---- Step 5. 用rman鏈接數據庫
[oracle@lym ~]$ rman target /


Recovery Manager: Release 10.2.0.1.0 - Production on Thu May 22 07:22:51 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


RMAN> 


----能夠看到,咱們能夠利用/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至其下 。


-- 這裏,咱們使用第二種方法(具體操做以下):
[root@lym ~]# mkdir -p /ade/aime_10.2_lnx_push/oracle/oradata/
[root@lym ~]# chown -R oracle.oinstall /ade
[root@lym ~]# chmod 775 /ade
[root@lym ~]# su - oracle
[oracle@lym ~]$ cd /u01/app/oracle/product/10.2.0/db_1/assistants/dbca/templates
[oracle@lym templates]$ cp Seed_Database.dfb /ade/aime_10.2_lnx_push/oracle/oradata/
[oracle@lym templates]$ 


////////////////////////////////////////////////////////////////////////////
---- Step 6. 還原數據庫(先在RMAN下執行以下命令)
run {
set newname for datafile '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/system01.dbf' to '/u01/app/oracle/oradata/TSH1/system01.dbf';
set newname for datafile '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/sysaux01.dbf' to '/u01/app/oracle/oradata/TSH1/sysaux01.dbf';
set newname for datafile '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/undotbs01.dbf' to '/u01/app/oracle/oradata/TSH1/undotbs01.dbf';
set newname for datafile '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/users01.dbf' to '/u01/app/oracle/oradata/TSH1/users01.dbf';
restore database;
switch datafile all;
}


-- 而後,執行以下命令能夠看到咱們所須要的數據文件都還原回來了,可是如今還缺乏log file 。
咱們如今打開數據庫。
[oracle@lym templates]$ cd /u01/app/oracle/oradata/TSH1
[oracle@lym TSH1]$ ls
Seed_Database.ctl  sysaux01.dbf  system01.dbf  undotbs01.dbf  users01.dbf
[oracle@lym TSH1]$ 


-- 由於控制文件中記錄的log file路徑爲 /ade/aime_10.2_lnx_push/oracle/oradata/seeddata 因此要先建立相應的目錄並再次刷新其權限(具體操做以下)。
[root@lym ~]# mkdir -p /ade/aime_10.2_lnx_push/oracle/oradata/seeddata
[root@lym ~]# chown -R oracle.oinstall /ade
[root@lym ~]# chmod 775 /ade


-- 而後在sqlplus中執行以下命令:
[oracle@lym TSH1]$ sqlplus / as sysdba
SQL> alter database open resetlogs;


Database altered.


SQL>


-- 此時,在目錄/ade/aime_10.2_lnx_push/oracle/oradata/seeddata 下建立了redo01.log,redo02.log,redo03.log,temp01.dbf文件。


-- 咱們要更改這幾個文件的路徑,因此先將數據庫關閉,而後cp /ade/aime_10.2_lnx_push/oracle/oradata/seeddata/× /u01/app/oracle/oradata/orcl/
啓動數據庫到mount狀態,並更改日誌和臨時文件的路徑(具體操做以下)
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> 


[oracle@lym ~]$ cd /ade/aime_10.2_lnx_push/oracle/oradata/seeddata
[oracle@lym seeddata]$ cp redo01.log redo02.log redo03.log temp01.dbf /u01/app/oracle/oradata/TSH1/


-- 而後啓動數據庫到mount狀態,並更改日誌和臨時文件的路徑
SQL> startup mount;
ORACLE instance started.


Total System Global Area  209715200 bytes
Fixed Size                  1218580 bytes
Variable Size             104859628 bytes
Database Buffers          100663296 bytes
Redo Buffers                2973696 bytes
Database mounted.
SQL> alter database rename file '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/redo01.log' to '/u01/app/oracle/oradata/TSH1/redo01.log';


Database altered.


SQL> alter database rename file '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/redo02.log' to '/u01/app/oracle/oradata/TSH1/redo02.log';


Database altered.


SQL> alter database rename file '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/redo03.log' to '/u01/app/oracle/oradata/TSH1/redo03.log'; 


Database altered.


SQL> alter database rename file '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/temp01.dbf' to '/u01/app/oracle/oradata/TSH1/temp01.dbf';


Database altered.


SQL> alter database open;


Database altered.


SQL> 


-- 到此數據庫已經創建,而且數據文件也放到了咱們期待的地方。可是還有一個問題,就是數據庫名稱不是咱們事先期待的。
SQL> show parameter name


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert                 string
db_name                              string      SEEDDATA
db_unique_name                       string      SEEDDATA
global_names                         boolean     FALSE
instance_name                        string      TSH1
lock_name_space                      string
log_file_name_convert                string
service_names                        string      SEEDDATA
SQL> 


////////////////////////////////////////////////////////////////////////
下面咱們將數據庫名稱SEEDDATA改爲咱們須要的TSH1 。注意此時僅僅更改參數文件的值是不行的,由於控制文件中一樣也記錄着數據庫的名稱。


-- Step 7. 更改數據庫名稱
-- 首先備份控制文件腳本(具體操做以下)
SQL> alter database backup controlfile to trace as '/tmp/ctl.txt';


Database altered.


SQL> create pfile from spfile;


File created.


SQL> 


-- 而後將spfile文件(spfileTSH1.ora)刪除,編輯pfile文件(initTSH1.ora)將db_name="SEEDDATA" 改爲 db_name="TSH1"(具體操做以下)。
[oracle@lym dbs]$ cd /u01/app/oracle/product/10.2.0/db_1/dbs
[oracle@lym dbs]$ rm spfileTSH1.ora
[oracle@lym dbs]$ vi initTSH1.ora


-- 而後保存對initTSH1.ora的修改並退出。
-- 而後vi /home/oracle/ctl2.txt(參考/tmp/ctl.txt重建控制文件腳本),腳本的內容以下:


CREATE CONTROLFILE REUSE DATABASE "SEEDDATA" set database "TSH1"  RESETLOGS  NOARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
LOGFILE
  GROUP 1 '/u01/app/oracle/oradata/TSH1/redo01.log'  SIZE 50M,
  GROUP 2 '/u01/app/oracle/oradata/TSH1/redo02.log'  SIZE 50M,
  GROUP 3 '/u01/app/oracle/oradata/TSH1/redo03.log'  SIZE 50M
DATAFILE
  '/u01/app/oracle/oradata/TSH1/system01.dbf',
  '/u01/app/oracle/oradata/TSH1/undotbs01.dbf',
  '/u01/app/oracle/oradata/TSH1/sysaux01.dbf',
  '/u01/app/oracle/oradata/TSH1/users01.dbf',
  '/u01/app/oracle/oradata/TSH1/tt.dbf'
CHARACTER SET US7ASCII
;




-- 而後從新啓動數據庫到nomount狀態,運行上面創建控制文件的腳本,而後打開數據庫(具體操做以下) 。
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup nomount;
ORACLE instance started.


Total System Global Area  209715200 bytes
Fixed Size                  1218580 bytes
Variable Size             104859628 bytes
Database Buffers          100663296 bytes
Redo Buffers                2973696 bytes
SQL> @/home/oracle/ctl2.txt


Control file created.


SQL> alter database open resetlogs; 


Database altered.


SQL> 






//////////////////////////////////////////////////////////////////////////
---- Step 8. 控制文件改名並實現冗餘
[root@lym ~]# cd /u01/app/oracle/oradata/TSH1
[root@lym TSH1]# mv Seed_Database.ctl control01.ctl
[root@lym TSH1]# cp control01.ctl control02.ctl
[root@lym TSH1]# cp control01.ctl control03.ctl
[root@lym TSH1]# cd /u01/app/oracle/product/10.2.0/db_1/dbs
[root@lym dbs]# chown -R oracle.oinstall /u01
[root@lym dbs]# chmod 775 /u01 


-- 修改參數文件initTSH1.ora(修改*.control_files這一行,其內容以下)
[root@lym dbs]# vi initTSH1.ora
*.control_files='/u01/app/oracle/oradata/TSH1/control01.ctl','/u01/app/oracle/oradata/TSH1/control02.ctl','/u01/app/oracle/oradata/TSH1/control03.ctl'


-- 從新啓動數據庫,大功告成!
SQL> startup
ORACLE instance started.


Total System Global Area  209715200 bytes
Fixed Size                  1218580 bytes
Variable Size             104859628 bytes
Database Buffers          100663296 bytes
Redo Buffers                2973696 bytes
Database mounted.
Database opened.
SQL> show parameter name


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert                 string
db_name                              string      TSH1
db_unique_name                       string      TSH1
global_names                         boolean     FALSE
instance_name                        string      TSH1
lock_name_space                      string
log_file_name_convert                string
service_names                        string      TSH1
SQL> create user lym identified by lym;


User created.


SQL> grant resource to lym;


Grant succeeded.


SQL> grant create session to lym;


Grant succeeded.


SQL> conn lym/lym;
Connected.
SQL> select sysdate from dual;


SYSDATE
---------
22-MAY-08


SQL>  linux

相關文章
相關標籤/搜索