新聞中心
ubuntu下安裝oracle缺少很多包怎么解決
Ubuntu12.04 安裝Oracle10g 全過程(完美)及問題解決辦法
專注于為中小企業(yè)提供成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)嘉峪關(guān)免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了成百上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
PS:正常情況下,完美無錯(cuò)。。如果遇到問題,也有解決辦法1.安裝前準(zhǔn)備工作
1.1 到oracle官網(wǎng)下載適合自己電腦的oracle軟件包;我的是:Oracle Database 10gRelease 2 (10.2.0.1.0)Enterprise/Standard Edition for Linux x86下的:10201_database_linux32.zip地址: 更新ubuntu
# apt-get update
# apt-get upgrade
1.3 安裝額外的javaJDK
可在【Ubuntu軟件中心】搜OPENjdk,安裝OpenJDK 完成后path路徑自動(dòng)設(shè)置好了1.4 安裝缺少的包并降低GCC版本
apt-get install gcc make binutils lesstif2 libc6 libc6-dev rpm libmotif3 libaio1 alienapt-get install ksh libtool libstdc++5 build-essential compat-libstdc++卸載gcc-4.6,安裝gcc-4.4 版本
apt-get remove gcc-4.6
apt-get install gcc-4.4
1.5 創(chuàng)建oracle用戶
登錄到root用戶下操作:
1.5.1 修改shell
ls -l /bin/sh 如果是dash修改為bash
rm /bin/sh
ln -s /bin/bash /bin/sh
1.5.2 創(chuàng)建用戶和組及oracle安裝路徑
addgroup oinstall
addgroup dba
addgroup nobody
usermod -g nobody nobody
adduser oracle
usermod -g oinstall -G dba oracle
id oracle
id nobody
mkdir -p /opt/oracle
mkdir -p /opt/oradata
chown -R oracle:dba /opt/ora*
chmod -R 775 /opt/ora*
1.5.3 創(chuàng)建欺騙版本聲明
vi /etc/redhat-release
然后向其中加入 Red Hat Linux release 3.1
1.5.4 建立鏈接
ln -s /usr/bin/gcc-4.4 /usr/bin/gcc
ln -s /lib/i386-linux-gnu/libgcc_s.so.1 /lib/libgcc.s.so.1ln -s /usr/bin/awk /bin/awk
ln -s /usr/bin/rpm /bin/rpm
ln -s /usr/bin/basename /bin/basename
mkdir /etc/rc.d
ln -s /etc/rc0.d /etc/rc.d/rc0.d
ln -s /etc/rc1.d /etc/rc.d/rc1.d
ln -s /etc/rc2.d /etc/rc.d/rc2.d
ln -s /etc/rc3.d /etc/rc.d/rc3.d
ln -s /etc/rc4.d /etc/rc.d/rc4.d
ln -s /etc/rc5.d /etc/rc.d/rc5.d
ln -s /etc/rc6.d /etc/rc.d/rc6.d
ln -s /etc/init.d /etc/rc.d/init.d
1.5.5 添加用戶到sudoer列表中
vi /etc/sudoers
在“ root ALL=(ALL:ALL) ALL” 下一行 ,添加:
oracle ALL=(ALL:ALL) ALL
1.5.6 修改內(nèi)核參數(shù)和系統(tǒng)變量
A 修改/etc/sysctl.conf文件(可以不用修改)
gedit /etc/sysctl.conf
添加如下內(nèi)容:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 25 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000B 修改/etc/security/limits.conf(可以不用修改)gedit /etc/security/limits.conf
添加如下內(nèi)容:
* soft nproc 2407
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
說明:不要忘了“*”號,可以換成oracle
C 修改ubuntu的oracle用戶的環(huán)境變量
修改/home/oracle/.profile和/etc/profile兩個(gè)文件vi /home/oracle/.profile
vi /etc/profile
添加如下內(nèi)容:
#oracle_path start
export ORACLE_HOME=/opt/oracle
export ORACLE_SID=orcl
export ORACLE_OWNER=oracle
export PATH=$PATH:$ORACLE_HOME/bin
#oracle_path end
1.5.7 使參數(shù)生效
重啟系統(tǒng) 或 終端執(zhí)行命令 sysctl -p
1.5.8 將下載好的oracle安裝文件mv到/home/oracle下,并解壓。注銷root用戶,登錄oracle用戶2.開始安裝oracle
2.1 打開終端,cd到/home/oracle/database的oracle解壓文件下,執(zhí)行下面這條命令./runInstaller -jreLoc /usr/lib/jvm/java-6-openjdk-i386/jrejava-version是java的安裝版本,這一句是為了在圖像化裝oracle是不會(huì)出現(xiàn)亂碼或者方框然后就向windows下安裝一樣的圖像化安裝界面。
不行的話,使用英文安裝界面
export LANG=ENGLISTH
./runInstaller
2.2 按照下面的圖像步驟操作
執(zhí)行到配置配置腳本時(shí)
切換到root下,在終端中執(zhí)行腳本
/home/oracle/oralnventory/orainstRoot.sh
/opt/ora10/root.sh
2.4 出現(xiàn)oracle database 10g 安裝完成時(shí),記下兩個(gè)URL。
2.5 安裝數(shù)據(jù)庫
在終端中執(zhí)行如下命令:
$dbca //如果出現(xiàn)中文亂碼,執(zhí)行下面命令$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 按照下面步驟執(zhí)行
但是:要將數(shù)據(jù)庫名字及SID都要寫上orcl
一直到安裝完成。
3. 啟動(dòng)oracle
在“終端”以oracle身份運(yùn)行
啟動(dòng)TNS監(jiān)聽器:$ORACLE_HOME/bin/lsnrctl start($ORACLE_HOME,就是oracle的安裝目錄:/opt/ora10 .直接cd,進(jìn)入oracle的安裝目錄,到bin文件夾下,$lsnrctl start ,也行)。
關(guān)閉TNS:$ORACLE_HOME/bin/lsnrctl stop
啟動(dòng)sqlplus:$ORACLE_HOME/bin/sqlplus /nolog關(guān)閉sqlplus:SQL exit
4. 為了能夠像windows下一樣能夠使用上下鍵翻動(dòng)命令,還需要安裝rlwrap包:
sudo apt-get install rlwrap
然后修改oracle用戶的~/.bashrc文件和/etc/profile文件,在其最后添加兩行:
這樣上下左右鍵就可以使用了。
最后來解決oracle中文字符集的問題。不出意外的話,啟動(dòng)oracle會(huì)發(fā)現(xiàn)所有的中文都是“?”,要么就是亂碼,這其實(shí)是服務(wù)器端字符集和客戶端字符集不一致造成的。
解決方法為:DBA身份進(jìn)入sqlplus,做查詢
SQLselect userenv(‘language’) from dual;將查詢結(jié)果復(fù)制,在/etc/bash.bashrc文件中再加一行:export NLS_LANG=”查詢結(jié)果”,重新登錄問題解決。例如:我的查詢結(jié)果為SIMPLIFIED CHINESE_CHINA.AL32UTF8,則新加一行為export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"。
但是有時(shí)候這個(gè)方法不一定奏效,你可以將
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"分別寫到兩個(gè)文件中嘗試一下,但是兩個(gè)文件寫的一定要一致。
5. 如果有問題可按下列過程處理:
5.1
問題:調(diào)用makefile '../sqlplus/lib/ins_sqlplus.mk' 的目標(biāo)'install' 時(shí)出錯(cuò)。請參閱'/home/oracle/oraInventory/logs/installActions2011-12-06_11-03-18AM.log' 以了解詳細(xì)信息。
解決辦法:$ORACLE_HOME/sqlplus/lib/env_sqlplus.mk添加一行:EXPDLIBS=-lclntsh ,然后點(diǎn)擊“重試”按鈕, ok.
其實(shí)安裝 gcc-4.4 以后沒有這個(gè)問題。
5.2
問題:調(diào)用makefile '../sysman/lib/ins_sysman.mk' 的目標(biāo)'agent nmo nmb' 時(shí)出錯(cuò)。請參閱'.. /oraInventory/logs/installActions2011-12-06_11-03-18AM.log' 以了解詳細(xì)信息。
分析:后面遇到的錯(cuò)誤其實(shí)本質(zhì)上是一個(gè)問題,主要是gcc的版本高了,oracle10g的gcc是3.4左右的版本,但是ubuntu的開發(fā)速度早就用了4.0以上版本,而且你還無法apt安裝低版本解決辦法:卸載gcc-4.6,安裝gcc-4.4 版本
apt-get remove gcc-4.6
apt-get install gcc-4.4
5.3
調(diào)用makefile '../network/lib/ins_net_server.mk' 的目標(biāo)'install' 時(shí)出錯(cuò)。請參閱'.. /oraInventory/logs/installActions2011-12-06_11-03-18AM.log' 以了解詳細(xì)信息。
分析:我在網(wǎng)上找到了一篇類似的文檔,參見(點(diǎn)擊打開鏈接),但是我手工編譯還是有問題,而且在oracle10g中并不是他所提到的-lons參數(shù)問題。
還是gcc版本問題,我曾嘗試過安裝低版本的gcc,但是一開始編譯就報(bào)錯(cuò),所以放棄了,如果有人能成功降低版本環(huán)境,相信一定能解決所有錯(cuò)誤問題,這也是為什么ubuntu 8能很自然成功安裝的一個(gè)解釋。
方法:目前我還沒有方法,按照其.mk文件的說明,這個(gè)東西好像是數(shù)據(jù)庫鏈接斷裂時(shí)候重新鏈接用的解決辦法:卸載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
調(diào)用makefile '../rdbms/lib/ins_rdbms.mk' 的目標(biāo)'all_no_orcl ihsodbc' 時(shí)出錯(cuò)。請參閱'../oraInventory/logs/installActions2011-12-06_11-07-36-AM.log' 以了解詳細(xì)信息。
分析:我們看一下log文件
信息: Generating BASE ORASDK library...
信息: Creating /opt/ora10/lib/liborasdkbase.so.10.2信息: gcc: 錯(cuò)誤:/lib/libgcc_s.so.1:沒有那個(gè)文件或目錄gcc: 錯(cuò)誤:/usr/lib/libstdc++.so.5:沒有那個(gè)文件或目錄我們看到終于是那個(gè)非常多的錯(cuò)誤了,其實(shí)還是gcc的問題,重新下載了libgcc_s.so.1,并且重新做了stdc++5的鏈接,但是問題還是更多,因?yàn)橹蛔鲕涙溄雍拖螺d一個(gè)動(dòng)態(tài)庫是沒法解決所有問題的。
解決辦法:安裝compat-libstdc++-33_3.2.3-48.3_i386.deb,重試。。
在一個(gè)libgcc_s.so.1軟鏈接
cd /lib
ln -s /lib/i386-linux-gnu/libgcc_s.so.1 libgcc.s.so.16. 開機(jī)啟動(dòng)
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
測試運(yùn)行 dbshut, dbstart 看能否啟動(dòng)oracle 服務(wù)及l(fā)istener服務(wù)ps -efw | grep ora_
lsnrctl status
ps -efw | grep LISTEN | grep -v grep
6.3 root 下創(chuàng)建文件:
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 #啟動(dòng)服務(wù)su oracle -c $ORACLE_HOME/bin/lsnrctl start #啟動(dòng)監(jiān)聽touch /var/lock/oracle
echo "OK"
;;
stop)
echo -n "Shutdown Oracle: "
su oracle -c $ORACLE_HOME/bin/dbshut #啟關(guān)閉服務(wù)su oracle -c $ORACLE_HOME/bin/lsnrctl stop #關(guān)閉監(jiān)聽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
Linux下安裝Oracle10g到檢查時(shí)提示缺少libiao包怎么辦?
Linux下安裝Oracle數(shù)據(jù)庫缺少依賴包libiao,直接yum安裝該包即可,方法如下:
yum?install?libaio-devel?-y
cmake?.?-DCMAKE_INSTALL_PREFIX=/usr/local/mariamysql?
-DWITH_INNOBASE_STORAGE_ENGINE=1?-DWITH_FEDERATED_STORAGE_ENGINE=1?
-DENABLED_LOCAL_INFILE=1?-DEXTRA_CHARSETS=all?-DDEFAULT_CHARSET=utf8?
-DDEFAULT_COLLATION=utf8_general_ci?-DWITH_DEBUG=0?
-DBUILD_CONFIG=mysql_release?-DFEATURE_SET=community?
-DWITH_EMBEDDED_SERVER=OFF
cp?support-files/my-innodb-heavy-4G.cnf?/etc/my.cnf
/usr/local/mariamysql/scripts/mysql_install_db?
--basedir=/usr/local/mariamysql/?--datadir=/usr/local/mariamysql/data/?
--user=mysql
/usr/local/mariamysql/bin/mysqld_safe?--user=mysql?
OEL安裝oracle11g時(shí),提示缺少依賴包,怎么解決???
出現(xiàn)這個(gè)報(bào)錯(cuò),原因是因?yàn)槟愕膬蓚€(gè)壓縮包沒有正確解壓,或者解壓路徑不對,首先,我們從官網(wǎng)上下載的安裝包室友兩個(gè)的其次,解壓的時(shí)候兩個(gè)壓縮包要解壓到同一個(gè)database目錄下你把第二個(gè)壓縮包解壓后的內(nèi)容復(fù)制到第一個(gè)壓縮包解壓后的database目錄下,再重新安裝,問題應(yīng)該就可以解決的。
oracle缺少的包.怎么裝不上
把缺的包裝上才能裝oracle。
linux下發(fā)行版本眾多,不同版本,依賴包名稱不同,安裝方法各異。
紅帽,CEntOS等rpm包的可以考慮用yum install版本高一些的可以考慮dnf install
Debian,Ubuntu等deb包的用apt-get install
還有的版本有它們自己的安裝方式。
只有弄清楚自己的系統(tǒng)究竟是那種Linux才能知道到底該裝哪些包以及怎么安裝。否則,別人無法給出明確答案。
當(dāng)前標(biāo)題:oracle缺少包怎么辦,oracle中的包
分享地址:http://fisionsoft.com.cn/article/dsspcod.html