PS:正常情況下,完美無錯。。如果遇到問題,也有解決辦法1.安裝前準備工作
1.1 到oracle官網下載適合自己電腦的oracle軟件包;我的是:Oracle Database 10gRelease 2 (10.2.0.1.0)Enterprise/Standard Edition for Linux x86下的:10201_database_linux32.zip地址:blogs.com/luochengor/archive/2011/08/20/2147041.html2.3 執行到配置配置腳本時
切換到root下,在終端中執行腳本
/home/oracle/oralnventory/orainstRoot.sh
/opt/ora10/root.sh
2.4 出現oracle database 10g 安裝完成時,記下兩個URL。
2.5 安裝數據庫
在終端中執行如下命令:
$dbca //如果出現中文亂碼,執行下面命令$cd /opt/ora10/bin
$gedit dbca
在dbca中找到“JRE_DIR=/opt/ora10/jdk/jre”,替換為JRE_DIR=/usr/lib/jvm/java-1.6.0-openjdk/jre ,然後保存退出$dbca //正常顯示了
2.6 按照下面步驟執行
blogs.com/luochengor/archive/2011/08/20/2147041.html但是:要將數據庫名字及SID都要寫上orcl
壹直到安裝完成。
3. 啟動oracle
在“終端”以oracle身份運行
啟動TNS監聽器:$ORACLE_HOME/bin/lsnrctl start($ORACLE_HOME,就是oracle的安裝目錄:/opt/ora10 .直接cd,進入oracle的安裝目錄,到bin文件夾下,$lsnrctl start ,也行)。
關閉TNS:$ORACLE_HOME/bin/lsnrctl stop
啟動sqlplus:$ORACLE_HOME/bin/sqlplus /nolog關閉sqlplus:SQL> exit
4. 為了能夠像windows下壹樣能夠使用上下鍵翻動命令,還需要安裝rlwrap包:
sudo apt-get install rlwrap
然後修改oracle用戶的~/.bashrc文件和/etc/profile文件,在其最後添加兩行:
這樣上下左右鍵就可以使用了。
最後來解決oracle中文字符集的問題。不出意外的話,啟動oracle會發現所有的中文都是“?”,要麽就是亂碼,這其實是服務器端字符集和客戶端字符集不壹致造成的。
解決方法為:DBA身份進入sqlplus,做查詢
SQL>select userenv(‘language’) from dual;將查詢結果復制,在/etc/bash.bashrc文件中再加壹行:export NLS_LANG=”查詢結果”,重新登錄問題解決。例如:我的查詢結果為SIMPLIFIED CHINESE_CHINA.AL32UTF8,則新加壹行為export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"。
但是有時候這個方法不壹定奏效,妳可以將
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"分別寫到兩個文件中嘗試壹下,但是兩個文件寫的壹定要壹致。
5. 如果有問題可按下列過程處理:
5.1
問題:調用makefile '../sqlplus/lib/ins_sqlplus.mk' 的目標'install' 時出錯。請參閱'/home/oracle/oraInventory/logs/installActions2011-12-06_11-03-18AM.log' 以了解詳細信息。
解決辦法:$ORACLE_HOME/sqlplus/lib/env_sqlplus.mk添加壹行:EXPDLIBS=-lclntsh ,然後點擊“重試”按鈕, ok.
其實安裝 gcc-4.4 以後沒有這個問題。
5.2
問題:調用makefile '../sysman/lib/ins_sysman.mk' 的目標'agent nmo nmb' 時出錯。請參閱'.. /oraInventory/logs/installActions2011-12-06_11-03-18AM.log' 以了解詳細信息。
分析:後面遇到的錯誤其實本質上是壹個問題,主要是gcc的版本高了,oracle10g的gcc是3.4左右的版本,但是ubuntu的開發速度早就用了4.0以上版本,而且妳還無法apt安裝低版本解決辦法:卸載gcc-4.6,安裝gcc-4.4 版本
apt-get remove gcc-4.6
apt-get install gcc-4.4
5.3
調用makefile '../network/lib/ins_net_server.mk' 的目標'install' 時出錯。請參閱'.. /oraInventory/logs/installActions2011-12-06_11-03-18AM.log' 以了解詳細信息。
分析:我在網上找到了壹篇類似的文檔,參見(點擊打開鏈接),但是我手工編譯還是有問題,而且在oracle10g中並不是他所提到的-lons參數問題。
還是gcc版本問題,我曾嘗試過安裝低版本的gcc,但是壹開始編譯就報錯,所以放棄了,如果有人能成功降低版本環境,相信壹定能解決所有錯誤問題,這也是為什麽ubuntu 8能很自然成功安裝的壹個解釋。
方法:目前我還沒有方法,按照其.mk文件的說明,這個東西好像是數據庫鏈接斷裂時候重新鏈接用的解決辦法:卸載gcc-4.6,安裝gcc-4.4 版本
在/usr/bin 下做了 /usr/bin/gcc-4.4 的軟鏈接cd /usr/bin
ln -s /usr/bin/gcc-4.4 /usr/bin/gcc
5.4
調用makefile '../rdbms/lib/ins_rdbms.mk' 的目標'all_no_orcl ihsodbc' 時出錯。請參閱'../oraInventory/logs/installActions2011-12-06_11-07-36-AM.log' 以了解詳細信息。
分析:我們看壹下log文件
信息: Generating BASE ORASDK library...
信息: Creating /opt/ora10/lib/liborasdkbase.so.10.2信息: gcc: 錯誤:/lib/libgcc_s.so.1:沒有那個文件或目錄gcc: 錯誤:/usr/lib/libstdc++.so.5:沒有那個文件或目錄我們看到終於是那個非常多的錯誤了,其實還是gcc的問題,重新下載了libgcc_s.so.1,並且重新做了stdc++5的鏈接,但是問題還是更多,因為只做軟鏈接和下載壹個動態庫是沒法解決所有問題的。
解決辦法:安裝compat-libstdc++-33_3.2.3-48.3_i386.deb,重試。。
在壹個libgcc_s.so.1軟鏈接
cd /lib
ln -s /lib/i386-linux-gnu/libgcc_s.so.1 libgcc.s.so.16. 開機啟動
6.1 root 下面修改:vi /etc/oratab
orc1:/opt/oracle/product/10.2.0/db_1:Y
將N該為Y
6.2 oracle 下面修改:
cd $ORACLE_HOME/bin
vi dbstart
找到 ORACLE_HOME_LISTNER 這行, 修改成:
ORACLE_HOME_LISTNER=/opt/oracle/product/10.2.0/db_1或者直接修改成:
ORACLE_HOME_LISTNER=$ORACLE_HOME
測試運行 dbshut, dbstart 看能否啟動oracle 服務及listener服務ps -efw | grep ora_
lsnrctl status
ps -efw | grep LISTEN | grep -v grep
6.3 root 下創建文件:
vi /etc/rc.d/init.d/oracle10
#!/bin/bash
# chkconfig: 345 99 10
# description: Startup Script for Oracle Databases# /etc/init.d/oracle10
export ORACLE_SID=ym
# export ORACLE_HOME_LISTNER=/data/files/oracle/10g/bin#oracle 安裝目錄
export ORACLE_HOME=/data/files/oracle/10gexport PATH=$PATH:$ORACLE_HOME/bin
case "$1" in
start)
su oracle -c $ORACLE_HOME/bin/dbstart #啟動服務su oracle -c $ORACLE_HOME/bin/lsnrctl start #啟動監聽touch /var/lock/oracle
echo "OK"
;;
stop)
echo -n "Shutdown Oracle: "
su oracle -c $ORACLE_HOME/bin/dbshut #啟關閉服務su oracle -c $ORACLE_HOME/bin/lsnrctl stop #關閉監聽rm -f /var/lock/oracle
echo "OK"
;;
*)
echo "Usage: 'basename $0' start|stop"
exit 1
esac
exit 0
然後
chmod 775 oracle10
chkconfig --add oracle10
chkconfig --list oracle10