1 . 安裝數據庫之前的准備工作。
首先必須確認你的機器配置,操作系統,以及你需要安裝的Oracle數據庫的版本。針對不同的機器、操作系統和Oracle版本你可以參考以下網站。
www.oracle.com (Oracle數據庫的官方網站,英文要加強哦^-^)
在這個網站裡面包含了你所需要的信息,不過在你Download的時候需要注冊哦^-^
2 . 針對通過Windows下登陸Linux OR Unix下安裝的用戶來說。(如果你是在Windows下安裝Oracle數據庫,有圖形界面提供給你,真是一個不錯的消息^-^)
我想大多數的人都在用putty 吧!我有是如此。用它就可以輕松的完成Windows與Linux OR Unix 互訪。那麼我們就可以通過它來完成我們的數據庫搭建。
可能有人會問:“Linux下或Uinx下就沒有圖形界面安裝嗎?”回答是有的。但是需要你的系統支持,或需要Down XWindow 應用程序。但是這樣也不行哦,因為可愛的putty可沒有支持圖形界面的工具提供給你哦^-^。所以你還要學習另外一個軟件就是VNC。
什麼?你不知道VNC?那就自己去www.baidu.com或www.google.com上面去搜索吧。我個人喜歡這兩個。也許大家會有自己的搜索器呢!至於VNC的使用就不用我教了吧!嘿嘿。。。。。。。。。。
由於上述原因,所以我決定在Linux或Unix下用字符界面安裝oracle。(之前我沒有安裝過Oracle,算是一個挑戰吧 ^-^)
3 . 實際行動(以AIX機器為例)
Me 的機器是這樣的:IBM AIX 5.3 1600s ,2G內存 ,給我使用的Oracle空間5G 。(公司對我太好了)
So下載的版本就是Oracle Database 10g Release 2 (10.2.0.1.0) for AIX5L(最好是release版本)
注:由於給我的這台Server需要telnet登陸,所以Down下來的Oracle 安裝包沒辦法用putty傳過去,所以只有想其他的辦法。(原本以為字符界面的快,不用那麼多步驟。可是。。。。。。。)
上網搜索一下,知道在Windows 下有一個強大的命令---------FTP。(介紹一下?)
如何開啟ftp相信大家都會吧!(FTP 192.168.*.*) 所以只介紹如何傳輸哦。
FTP > bin
FTP > lcd $PATH (我的$PATH= D:\cyaln\study_source\Oracle)
FTP > put 10gr2_aix5l64_database.cpio.gz
(注:1 . 這樣傳輸過去的時候,文件將存放在/HOME/$ID目錄下。
2 . 一定要有足夠大的空間來存放該文件哦!我就因為目錄空間不夠的問題導致FTP 傳輸失敗。)
FTP > by (傳送成功以後一定要跟FTP說再見哦! ^-^)
這樣,我們的AIX機器上就有了我們的Oracle安裝壓縮包。(這也是工程一件哦^-^)
$gunzip 10gr2_aix5l64_database.cpio.gz
$cpio -idcmv <10gr2_aix5l64_database.cpio.gz
做完以上步驟就會生成一個Disk1的目錄。
真正的實戰開始了(注意注意。。。。。。。。。。。。。。。。。。。。。。。。。。。)
一、確認系統硬件環境
Oracle10g最低安裝要求:
512M物理內存、MIN(RAM*2,2G) SWAP空間、400M /TMP空間、4G Oracle目錄空間、64位體系結構
下面是確認過程:
1、確認內存大小(1G)
localhost> /usr/sbin/lsattr -E -l sys0 -a realmem
realmem 1048576 Amount of usable physical memory in Kbytes False
這裡Oracle10g安裝文檔寫錯了,將“sys0(數字0)”寫成了“sysO(字母O)”。
2、確認SWAP空間,512M太小了,加到2G。
localhost> /usr/sbin/lsps -a
Page Space Physical Volume Volume Group Size %Used Active Auto Type
hd6 hdisk0 rootvg 512MB 12 yes yes lv
3、確認/TMP和Oracle目錄空間(其中Oracle10g放在/data1下):
localhost> df -k
Filesystem 1024-blocks Free %Used Iused %Iused Mounted on
/dev/hd4 32768 14676 56% 2176 14% /
/dev/hd2 1933312 516400 74% 35398 8% /usr
/dev/hd9var 65536 43496 34% 623 4% /var
/dev/hd3 917504 691884 25% 1034 1% /tmp
/dev/hd1 10911744 4097144 63% 18636 1% /home
/proc - - - - - /proc
/dev/hd10opt 32768 23328 29% 362 5% /opt
/dev/lv00 2097152 937572 56% 708 1% /ptf
/dev/data1lv 13107200 10559980 20% 2735 1% /data1
4、確認系統結構
localhost> /usr/bin/getconf HARDWARE_BITMODE
64
5、我們可以通過下面的命令來確認系統CPU個數和主頻:
# lsdev -C |grep proc
proc0 Available 00-00 Processor
proc1 Available 00-01 Processor
# lsattr -E -l proc0
frequency 752010000 Processor Speed False
state enable Processor state False
type PowerPC_RS64-III Processor type False
# lsattr -E -l proc1
frequency 752010000 Processor Speed False
state enable Processor state False
type PowerPC_RS64-III Processor type False
二、確認系統軟件環境
1、要求AIX必須是5.2 LEVEL 1以上(含LEVEL 1):
localhost> oslevel -r
5200-01
2、要求安裝了這些FILESETS:
localhost> lslpp -l bos.adt.base bos.adt.lib bos.adt.libm
bos.perf.perfstat bos.perf.libperfstat bos.perf.proctools
Fileset Level State Description
----------------------------------------------------------------------------
Path: /usr/lib/objrepos
bos.adt.base 5.2.0.11 APPLIED Base Application Development
Toolkit
bos.adt.lib 5.2.0.10 APPLIED Base Application Development
LibrarIEs
bos.adt.libm 5.2.0.13 APPLIED Base Application Development
Math Library
bos.perf.libperfstat 5.2.0.12 APPLIED Performance Statistics Library
Interface
bos.perf.perfstat 5.2.0.12 APPLIED Performance Statistics
Interface
Path: /etc/objrepos
bos.perf.perfstat 5.2.0.0 COMMITTED Performance Statistics
Interface
lslpp: 0504-132 Fileset bos.perf.proctools not installed.
可以看到bos.perf.proctools沒有安裝,用smitty安裝上即可。現在查看確認:
localhost> lslpp -l bos.perf.proctools
Fileset Level State Description
----------------------------------------------------------------------------
Path: /usr/lib/objrepos
bos.perf.proctools 5.2.0.11 APPLIED Proc Filesystem Tools3、要求安裝了APARs(Authorized Problem Analysis Reports):
localhost> /usr/sbin/instfix -i -k "IY43980 IY44810 IY45462 IY45707
IY46214 IY46605 IY48525 IY51801"
All filesets for IY43980 were found.
All filesets for IY44810 were found.
All filesets for IY45462 were found.
All filesets for IY45707 were found.
All filesets for IY46214 were found.
All filesets for IY46605 were found.
There was no data for IY48525 in the fix database.
There was no data for IY51801 in the fix database.
可以看到IY48525和IY51801沒有安裝,我們可以從網上下載它們然後安裝上,這裡是下載地址:https://techsupport.services.ibm.com/server/aix.fdc
但實際上,這兩個補丁是針對SDK1.4的, 如果不用1.4完全可以不理。
4、創建Oracle10g用戶和組,並創建相關目錄(這一步是最關鍵的)
注意哦,認真操作每一個步驟哦 ^-^ ^-^ ^-^ ^-^ ^-^
useradd - g oinstall –G dba –d /home/oracle –s /usr/bin/bash –m Oracle
passwd Oracle
完成以後:用Oracle用戶進行登陸修改 .profile
su - Oracle
4.1.設置系統環境變量:(一般情況是在/HOME/Oracle)
ORACLE_HOME=/home/Oracle/product/10.2.0
ORACLE_BASE=/home/Oracle
4.2.系統規劃:(這裡用TEST)
實例名稱Oracle_SID=test
數據庫名稱:test
4.3.手工創建如下目錄:
/home/Oracle/admin/test/cdump
/home/Oracle/admin/test/bdump
/home/Oracle/admin/test/udump
/home/Oracle/admin/test/pfile
/home/Oracle/oradata/test
附:我的.profile文件
if [ -s "$MAIL" ] # This is at Shell startup. In normal
then echo "$MAILMSG" # Operation, the Shell checks
fi # periodically.
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
ORACLE_HOME=/home/Oracle/product/10.2.0;
export Oracle_HOME
export ORACLE_BASE=/home/Oracle
export Oracle_SID=test
unset USERNAME
umask 022
PATH=$PATH:$HOME/bin:$Oracle_HOME/bin;
export PATH
5 . 編輯Response 文件
這一步驟是字符界面裝Oracle的關鍵步驟
到Oracle 10g的安裝目錄下編輯response文件
$su – Oracle
$cd /$HOME/$ID/Disk1/response
可以看到oracle准備了6個response文件,實際上這些文件就是用來安裝和配置Oracle時的模板,分別是custom.rsp dbca.rsp emca.rsp enterprise.rsp netca.rsp standard.rsp在這裡挑了一個簡單的response文件 enterprise.rsp,也可以根據實際情況去選用編輯其他幾個response文件。
$cp custom.rsp myinst.rsp
$vi myinst.rsp
在myinst.rsp的最前面有一段說明,應該仔細看看,特別要注意它定義的幾個數據變量格式的寫法,如下:
Type Example
String "Sample Value"
Boolean True or False
Number 1000
StringList {"String value 1","String Value 2"}
其後都是安裝Oracle時所需要定義的變量,其值有三種情況,一是已經有默認值的,幾乎可以不用管它。二是值等於的,這種變量是非圖形界面安裝10g所必需要指定的變量,一定要修改成合適的值,第三種變量的值等於,說明它的值是和別的變量值關聯的,也可以不用管它。需要把第二類變量的值逐個修改。
更改情況如下,可根據實際情況修改其它變量的值:
ORACLE_HOME="/home/Oracle/product/10.2.0"
Oracle_HOME_NAME="TEST"
s_nameForDBAGrp="dba"
s_nameForOPERGrp="dba"
SHOW_DATABASE_CONFIGURATION_PAGE=false
b_createStarterDB=false (不創建數據庫)
SHOW_DATABASE_OPTIONS_PAGE=false
s_dbCharacterSet="ZHS16GBK"
s_globalDBName="test"
s_dbSid="test"
SHOW_DATABASE_MANAGEMENT_PAGE=false
SHOW_DATABASE_FILE_STORAGE_OPTION_PAGE=false
SHOW_BACKUP_RECOVERY_OPTION_PAGE=false
SHOW_SCHEMA_PASSWordS_PAGE=false
改完後存盤退出三、運行安裝Oracle
1、以root執行# ./rootpre.sh
2、轉到oracle 10g安裝介質目錄下,用Oracle用戶運行runInstaller
$cd @/Disk1/
$./runInstaller –silent –responseFile @/Disk1/response/myinst.rsp
“@”表示:Disk的父目錄路徑
這樣Oracle 10g就開始安裝了
安裝進程的步驟如下:
a.檢測temp 和swap分區的大小
b.查系統補丁是否滿足需要
c.到response文件中讀取信息
d.copy 相關文件
e.link and setup
f.提示運行root.sh,根據提示,用root用戶去運行root.sh就行了
一般出錯的地方容易在b、c步驟,如果是系統補丁沒打全,則根據提示把系統補丁打好,如果是在c的地方出錯,說明你的response文件信息有誤,需要重新修改response文件。
至此,不起圖形界面安裝Oracle 10g就完成了
四、後續工作
建數據庫。
此次安裝中並未建庫,關於用腳本建庫的方法,和以前版本的Oracle類似,這裡不再具體說明了。
我來補充一些內容吧~~~
我建立數據庫的腳本:(create_db.sql)
create database '$DBName'
logfile
group 1 ('/home/Oracle/oradata/'$DBName'/redo01.log') size 100M,
group 2 ('/home/Oracle/oradata/'$DBName'/redo02.log') size 100M,
group 3 ('/home/Oracle/oradata/'$DBName'/redo03.log') size 100M
maxlogfiles 5
maxlogmembers 5
maxloghistory 1
maxdatafiles 100
maxinstances 1
datafile '/home/Oracle/oradata/'$DBName'/system01.dbf' size 256M
undo tablespace undotbs
datafile '/home/Oracle/oradata/'$DBName'/undotbs01.dbf' size 200M autoextend on next 5M maxsize unlimited
sysaux datafile '/home/Oracle/oradata/'$DBName'/sysaux01.dbf' size 100M
default temporary tablespace temp
tempfile '/home/Oracle/oradata/'$DBName'/temp01.dbf' size 512M autoextend on next 5M maxsize unlimited
character set US7ASCII
national character set AL16UTF16;
有特別的標記是需要注意的哦!! ^_^
在我的實踐過程中發現了我有一個重要的步驟沒有執行,那就是在用腳本建立數據庫以後,需要執行兩個重要的系統文件。(以下是網上查找的資料)
QUOTE:
除了建立額外的資料表空間外,您還必須在數據庫建立之後執行兩個重要的指令文件:catelog.sql 與 cataproc.sql。這兩個指令文件將在 Oracle9i 數據庫內建立管理工作必備的視觀表、同義字(synonyms)、以及 PL/SQL 套件(packages)。
1 catalog.sql:
本指令文件內容為:在數據字典數據表上建立相關視觀表、動態效能視觀表、以及存取各種視觀表所用的同義字。此外,catalog.sql 也會將這些視觀表的使用權限授權給數據庫使用者。
2 catproc.sql:
本指令文件內包含執行 PL/SQL 程序所需的所有指令文件。