為Linux配備Oracle 8(轉)
為Linux配備Oracle 8[@more@]在Linux下使用Oracle 8以前,應當安裝Oracle 8,但Oracle公司提供的安裝文件較為簡單。筆者借鑑其在Unix作業系統下的安裝方法,得出了在Linux上安裝Oracle 8的方法,此方法並不一定是最好的,使各位讀者用上Oracle 8才是本文的目的。
前期準備
假定安裝環境是Red Hat Linux,請在安裝前確認Linux的核心版本為2.0.36及以上。
1.以Root使用者登入進入系統,建立使用者oracle和組dba,這是Oracle預設的安裝使用者。建立安裝使用者後,用tar -xvzf 將壓縮檔案解壓到一個指定的目錄,本文假定為/oracle,因為tar進行資料歸檔與使用者本機的使用者ID、組ID不同,所以要執行chown -R oracle:dba ?以更改檔案屬性。
2.由於Oracle本身對共享段的要求,使用者必須重新手工生成核心,以便共享段的設定滿足安裝要求。為生成核心,使用者應當安裝Linux作業系統的原始碼,編輯/usr/src/linux/include/shmparam.h,將#define SHMMAX 0x002000000一行的0x002000000(32MB)改為256MB以上,然後在/usr/src/linux下執行make dep、make clean、make bzImage生成核心,使用linuxconf命令將新核心設為啟動核心。這一步一定要做,如果生成的新核心有錯,可以用原來的核心啟動計算機。可用ipc -ml檢視共享段的設定是否滿足要求。當共享段大於2GB時,檢視到的值是負數。
3.安裝相應的egc包。假定安裝光碟mount在/mnt/cdrom上,用命令modprobe isofs使作業系統能處理光碟的檔案系統,然後執行mount -t iso9660 /dev/cdrom /mnt/cdrom,如在安裝後修改了/etc/fstab,可不進行這一步操作。進入相應的RPMS目錄,安裝以egc開始的包,採用的安裝命令為rpm -ivh 。
設定安裝的環境變數
安裝前,應該設定相應的環境變數。修改使用者Oracle的.bash—profile檔案,設定相應的環境變數。由於安裝系統時需要Root使用者,也要有這些環境變數,故將其放在/etc/profile內,加*號為Oracle專有的環境變數,示例如下:
# /etc/profile
# System wide environment and startup programs
# Functions and aliases go in /etc/bashrc
JAVA—HOME=/usr/local/jdk1.1.3
SYBASE=/opt/sybase-11.9.2
DSQUERY=SYBASERDBMS
*PATH=$PATH:$JAVA—HOME/bin:/usr/X11R6/bin:/home/oracle/product/8.0.5/bin
PS1=″u@h:w$″
ulimit -c 1000000
if [ ′id -gn′ = ′id -un′ -a ′id -u′ -gt 14 ]; then umask 002
else umask 022
fi
USER=′id -un′
LOGNAME=$USER
MAIL=″/var/spool/mail/$USER″
CLASSPATH=/usr/local/jdk1.1.3/lib:$HOME/bin
HOSTNAME=′/bin/hostname′
HISTSIZE=1000
HISTFILESIZE=1000
export JAVA—HOME CLASSPATH SYBASE DSQUERY
export PATH PS1 HOSTNAME HISTSIZE HISTFILESIZE USER LOGNAME MAIL
*ORACLE—HOME=/home/oracle/product/8.0.5
*ORACLE—BASE=/home/oracle
*ORACLE—OWNER=oracle
*ORACLE—SID=oracle8
*ORACLE—TERM=386
*LD—LIBRARY—PATH=/home/oracle/product/8.0.5/lib
*TMPDIR=/var/tmp
*export ORACLE—HOME ORACLE—BASE ORACLE—OWNER ORACLE—SID ORACLE—TERM
export LD—LIBRARY—PATH TMPDIR
for i in /etc/profile.d/?.sh ; do
if [ -x $i ]; then . $i
fi
done
unset i
安裝並啟動資料庫
1.以使用者Root登入系統,然後到相應目錄執行/oracle/orainst/oratab.sh可生成/etc/oratab檔案。用su - oracle切換到使用者Oracle,執行/oracle/orainst/orainst就可啟動安裝命令,安裝時注意在這一步不要安裝Oracle文件、JDK和智慧代理,並且不要建立資料庫物件。重新啟動/oracle/orainst/orainst安裝的RDBMS部份,一般情況下除了輸入幾個使用者定製的口令其餘按預設值就可以了。Oracle安裝程式開始複製檔案,複製檔案過程中,當安裝到資料庫管理系統(RDBMS)時,使用者可從另一終端登入,用ps -ef | grep oracle見到一些Oracle程式已啟動。
2.資料庫伺服器安裝完成後,就可以手工啟動了。以使用者Oracle登入,進入$ORACLE—HOME/bin,執行DBStart就可以啟動資料庫伺服器。執行DBShut就可停止資料庫伺服器。
如果使用者不太熟悉Oracle的網路部份,可將$ORACLE—HOME/network/admin/?ora複製到/etc目錄,在$ORACLE—HOME/bin下執行lsnrctl start就可以啟動網路監視程式。
3.為了每一次啟動系統時自動啟動Oracle或管理員手工指定是否每一次啟動時自動啟動Oracle,可採用如下方法。以Root登入,進入/etc/rc.d/init.d,手工生成檔案Oracle,至於檔案的書寫格式可參見其餘相應檔案,示例如下:
#!/bin/sh
# oracle This shell script takes care of starting and stopping
# oracle.
# chkconfig: 2345 80 30
# description: oracle is a RDBMS Server.
# processname: oracle
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[${NETWORKING}= ″no″ ] && exit 0
# See how we were called.
case ″$1″ in
start)
# Start daemons.
echo -n ″Starting oracle: ″
su - oracle /home/oracle/product/8.0.5/bin/dbstart > /dev/null 2>&1
sleep 60
su - oracle/home/oracle/product/8.0.5/bin/lsnrctl start > /dev/null 2>&1
echo
touch /var/lock/subsys/oracle
;;
stop)
# Stop daemons.
echo -n ″Shutting down oracle: ″
su - oracle/home/oracle/product/8.0.5/bin/lsnrctl stop > /dev/null 2>&1
su - oracle /home/oracle/product/8.0.5/bin/dbshut > /dev/null 2>&1
echo
rm -f /var/lock/subsys/oracle
;;
restart)
$0 stop
$0 start
;;
status)
status oracle
;;
?)
echo ″Usage: oracle {start|stop|restart|status}″
exit 1
esac
exit 0
客戶端配置
為了能使用Windows下的一些開發工具,可以按如下方法進行:
1.在Windows下安裝Oracle客戶端軟體(可以採用Oracle 7.xx的Windows客戶端軟體),安裝完成後,將Linux下的/etc/tnsnames.ora拷到Windows下的$ORACLE etworkadmin目錄下,在開始選單中執行net easy configure並指明ODBC連線的字串名和執行SQLPLUS需要的主機字串(Host String),就可以從客戶端連上伺服器,透過ODBC進行資料庫的開發。
2.如果使用者使用Delphi為開發工具,可在BDE設定中指明有遠端Oracle伺服器,設定時僅指明資料庫系統的網路協議為TNS(Transparent Network Substrate,請不要使用TCP),然後進入資料庫桌面,就可以訪問遠端Oracle資料庫上的資料了。
前期準備
假定安裝環境是Red Hat Linux,請在安裝前確認Linux的核心版本為2.0.36及以上。
1.以Root使用者登入進入系統,建立使用者oracle和組dba,這是Oracle預設的安裝使用者。建立安裝使用者後,用tar -xvzf 將壓縮檔案解壓到一個指定的目錄,本文假定為/oracle,因為tar進行資料歸檔與使用者本機的使用者ID、組ID不同,所以要執行chown -R oracle:dba ?以更改檔案屬性。
2.由於Oracle本身對共享段的要求,使用者必須重新手工生成核心,以便共享段的設定滿足安裝要求。為生成核心,使用者應當安裝Linux作業系統的原始碼,編輯/usr/src/linux/include/shmparam.h,將#define SHMMAX 0x002000000一行的0x002000000(32MB)改為256MB以上,然後在/usr/src/linux下執行make dep、make clean、make bzImage生成核心,使用linuxconf命令將新核心設為啟動核心。這一步一定要做,如果生成的新核心有錯,可以用原來的核心啟動計算機。可用ipc -ml檢視共享段的設定是否滿足要求。當共享段大於2GB時,檢視到的值是負數。
3.安裝相應的egc包。假定安裝光碟mount在/mnt/cdrom上,用命令modprobe isofs使作業系統能處理光碟的檔案系統,然後執行mount -t iso9660 /dev/cdrom /mnt/cdrom,如在安裝後修改了/etc/fstab,可不進行這一步操作。進入相應的RPMS目錄,安裝以egc開始的包,採用的安裝命令為rpm -ivh 。
設定安裝的環境變數
安裝前,應該設定相應的環境變數。修改使用者Oracle的.bash—profile檔案,設定相應的環境變數。由於安裝系統時需要Root使用者,也要有這些環境變數,故將其放在/etc/profile內,加*號為Oracle專有的環境變數,示例如下:
# /etc/profile
# System wide environment and startup programs
# Functions and aliases go in /etc/bashrc
JAVA—HOME=/usr/local/jdk1.1.3
SYBASE=/opt/sybase-11.9.2
DSQUERY=SYBASERDBMS
*PATH=$PATH:$JAVA—HOME/bin:/usr/X11R6/bin:/home/oracle/product/8.0.5/bin
PS1=″u@h:w$″
ulimit -c 1000000
if [ ′id -gn′ = ′id -un′ -a ′id -u′ -gt 14 ]; then umask 002
else umask 022
fi
USER=′id -un′
LOGNAME=$USER
MAIL=″/var/spool/mail/$USER″
CLASSPATH=/usr/local/jdk1.1.3/lib:$HOME/bin
HOSTNAME=′/bin/hostname′
HISTSIZE=1000
HISTFILESIZE=1000
export JAVA—HOME CLASSPATH SYBASE DSQUERY
export PATH PS1 HOSTNAME HISTSIZE HISTFILESIZE USER LOGNAME MAIL
*ORACLE—HOME=/home/oracle/product/8.0.5
*ORACLE—BASE=/home/oracle
*ORACLE—OWNER=oracle
*ORACLE—SID=oracle8
*ORACLE—TERM=386
*LD—LIBRARY—PATH=/home/oracle/product/8.0.5/lib
*TMPDIR=/var/tmp
*export ORACLE—HOME ORACLE—BASE ORACLE—OWNER ORACLE—SID ORACLE—TERM
export LD—LIBRARY—PATH TMPDIR
for i in /etc/profile.d/?.sh ; do
if [ -x $i ]; then . $i
fi
done
unset i
安裝並啟動資料庫
1.以使用者Root登入系統,然後到相應目錄執行/oracle/orainst/oratab.sh可生成/etc/oratab檔案。用su - oracle切換到使用者Oracle,執行/oracle/orainst/orainst就可啟動安裝命令,安裝時注意在這一步不要安裝Oracle文件、JDK和智慧代理,並且不要建立資料庫物件。重新啟動/oracle/orainst/orainst安裝的RDBMS部份,一般情況下除了輸入幾個使用者定製的口令其餘按預設值就可以了。Oracle安裝程式開始複製檔案,複製檔案過程中,當安裝到資料庫管理系統(RDBMS)時,使用者可從另一終端登入,用ps -ef | grep oracle見到一些Oracle程式已啟動。
2.資料庫伺服器安裝完成後,就可以手工啟動了。以使用者Oracle登入,進入$ORACLE—HOME/bin,執行DBStart就可以啟動資料庫伺服器。執行DBShut就可停止資料庫伺服器。
如果使用者不太熟悉Oracle的網路部份,可將$ORACLE—HOME/network/admin/?ora複製到/etc目錄,在$ORACLE—HOME/bin下執行lsnrctl start就可以啟動網路監視程式。
3.為了每一次啟動系統時自動啟動Oracle或管理員手工指定是否每一次啟動時自動啟動Oracle,可採用如下方法。以Root登入,進入/etc/rc.d/init.d,手工生成檔案Oracle,至於檔案的書寫格式可參見其餘相應檔案,示例如下:
#!/bin/sh
# oracle This shell script takes care of starting and stopping
# oracle.
# chkconfig: 2345 80 30
# description: oracle is a RDBMS Server.
# processname: oracle
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[${NETWORKING}= ″no″ ] && exit 0
# See how we were called.
case ″$1″ in
start)
# Start daemons.
echo -n ″Starting oracle: ″
su - oracle /home/oracle/product/8.0.5/bin/dbstart > /dev/null 2>&1
sleep 60
su - oracle/home/oracle/product/8.0.5/bin/lsnrctl start > /dev/null 2>&1
echo
touch /var/lock/subsys/oracle
;;
stop)
# Stop daemons.
echo -n ″Shutting down oracle: ″
su - oracle/home/oracle/product/8.0.5/bin/lsnrctl stop > /dev/null 2>&1
su - oracle /home/oracle/product/8.0.5/bin/dbshut > /dev/null 2>&1
echo
rm -f /var/lock/subsys/oracle
;;
restart)
$0 stop
$0 start
;;
status)
status oracle
;;
?)
echo ″Usage: oracle {start|stop|restart|status}″
exit 1
esac
exit 0
客戶端配置
為了能使用Windows下的一些開發工具,可以按如下方法進行:
1.在Windows下安裝Oracle客戶端軟體(可以採用Oracle 7.xx的Windows客戶端軟體),安裝完成後,將Linux下的/etc/tnsnames.ora拷到Windows下的$ORACLE etworkadmin目錄下,在開始選單中執行net easy configure並指明ODBC連線的字串名和執行SQLPLUS需要的主機字串(Host String),就可以從客戶端連上伺服器,透過ODBC進行資料庫的開發。
2.如果使用者使用Delphi為開發工具,可在BDE設定中指明有遠端Oracle伺服器,設定時僅指明資料庫系統的網路協議為TNS(Transparent Network Substrate,請不要使用TCP),然後進入資料庫桌面,就可以訪問遠端Oracle資料庫上的資料了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10796304/viewspace-952559/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Linux 管理員手冊(8)--備份(轉)Linux
- 蘋果或為iPhone8配備AR眼鏡和智慧聯結器蘋果iPhone
- Linux 主機的硬體配備Linux
- Linux磁碟配額(Quota)(轉)Linux
- 用Linux完成Oracle自動物理備份(轉)LinuxOracle
- ORACLE備份&恢復案例(8)Oracle
- 用Linux命令完成Oracle自動物理備份(轉)LinuxOracle
- ORACLE備份策略(轉)Oracle
- 【轉】Oracle rman備份Oracle
- 教你用Linux完成Oracle自動物理備份(轉)LinuxOracle
- 轉 Linux 備份策略Linux
- Linux動態:企業應該為Xen做好準備(轉)Linux
- ORACLE備份策略二(轉)Oracle
- oracle for linux 備份指令碼OracleLinux指令碼
- 為 Windows 使用者準備的簡明 Linux 詞彙表(轉)WindowsLinux
- 傳統IDC為什麼需要配備智慧管理系統?
- linux必備筆記(轉)Linux筆記
- Oracle備份及備份策略及基於Linux下 Oracle 備份策略(RMAN)OracleLinux
- ORACLE備份&恢復案例(轉)Oracle
- [轉載] Oracle備份策略(精華)Oracle
- Oracle備份與恢復(轉)Oracle
- Oracle 單機切換為主備Oracle
- Oracle初學者問題8(轉)Oracle
- Oracle常見提問8(轉)Oracle
- Linux下Oracle9i RMAN備份及恢復步驟(轉)LinuxOracle
- 為Linux和Windows安裝PHP和Oracle10g(轉)LinuxWindowsPHPOracle
- 玩轉linux命令(8):touch命令Linux
- Oracle for Linux vs. Oracle for NT(轉)OracleLinux
- ORACLE備份&恢復案例三(轉)Oracle
- ORACLE備份&恢復案例二(轉)Oracle
- Oracle自動備份資料(轉)Oracle
- Oracle資料庫的備份方法-冷備份(轉)Oracle資料庫
- UTF-8字串轉為AnsiString (轉)字串
- linux下oracle熱備份指令碼LinuxOracle指令碼
- Oracle 8 的函式介紹(轉)Oracle函式
- Oracle8 資料型別(轉)Oracle資料型別
- ORACLE8的分割槽管理(轉)Oracle
- Oracle8i系統概述(轉)Oracle