一、環(huán)境
系統(tǒng):Ubuntu 14.04.5 LTS(為了貼近生產(chǎn)我裝了個(gè)Ubuntu14的服務(wù)器版本)
JDK:jdk-8u121-linux-x64.tar.gz
Oracle:linux.x64_11gR2_database_1of2.ziplinux.x64_11gR2_database_2of2.zip
工具:Xshell5、
注:以上軟件或者工具自行去相關(guān)官網(wǎng)下載
二、安裝JDK
解壓JDK
1 | tar -zxvf jdk-8u121-linux-x64. tar .gz
|

注:tools這個(gè)目錄是我新建的,當(dāng)然你也可以放在別的位置
移動(dòng)jdk1.8.0_121目錄到/usr/local/java,這個(gè)Java目錄是我新建的。
1 | mv jdk1.8.0_121 //usr/local/java/
|

接下來我們開始配置環(huán)境變量:
在文件.bashrc文件末尾處新增以下配置:
1 2 3 4 | export JAVA_HOME= /usr/local/java/jdk1 .8.0_121
export JRE_HOME=${JAVA_HOME} /jre
export CLASSPATH=.:${JAVA_HOME} /lib :${JRE_HOME} /lib
export PATH=${JAVA_HOME} /bin :$PATH
|
然后執(zhí)行wq!進(jìn)行保存并退出

同時(shí)記得重新刷新一下文件,輸入以下命令:
檢查一下Java是否配置成功:

說明我們按照成功了,這里解釋一下為什么要裝JDK,因?yàn)閛racle有一部分的代碼是通過Java編寫的。
三、安裝依賴包
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | sudo apt-get install automake // 成功
sudo apt-get install autotools-dev // 系統(tǒng)已經(jīng)安裝
sudo apt-get install binutils // 只更新了一個(gè)文件,成功
sudo apt-get install bzip2 // 系統(tǒng)已經(jīng)安裝
sudo apt-get install elfutils // 成功
sudo apt-get install expat // 成功
sudo apt-get install gawk // 系統(tǒng)已經(jīng)安裝
sudo apt-get install gcc // 系統(tǒng)已經(jīng)安裝
sudo apt-get install gcc-multilib // 成功
sudo apt-get install g++-multilib // 成功
sudo apt-get install ia32-libs //lib32ncurses5 和lib32z1代替
sudo apt-get install ksh
sudo apt-get install less
sudo apt-get install lesstif2
sudo apt-get install lesstif2-dev
|
注:但是這五個(gè)包是32位的,需要更新源(以下操作是root用戶)
終端輸入:
1 2 3 4 5 | sudo -i
cd /etc/apt/sources .list.d
apt-get update
apt-get install +包名
|

1 2 3 4 5 | sudo apt-get install ia32-libs // 成功
sudo apt-get install ksh // 成功
sudo apt-get install less // 成功
sudo apt-get install lesstif2 // 成功
sudo apt-get install lesstif2-dev // 成功
|
安裝成功之后再還原:
1 | rm /etc/apt/sources .list.d /ia32-libs-raring .list
|

退出當(dāng)前root用戶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | root@Ubuntu14: /etc/apt/sources .list.d # exit
sudo apt-get install lib32z1 // 系統(tǒng)已經(jīng)安裝
sudo apt-get install libaio1 // 成功
sudo apt-get install libaio-dev // 成功
sudo apt-get install libc6-dev // 系統(tǒng)已經(jīng)安裝
sudo apt-get install libc6-dev-i386 // 系統(tǒng)已經(jīng)安裝
sudo apt-get install libc6-i386 // 系統(tǒng)已經(jīng)安裝
sudo apt-get install libelf-dev // 成功
sudo apt-get install libltdl-dev // 成功
sudo apt-get install libmotif4 // 成功
sudo apt-get install libodbcinstq4-1 // 成功
sudo apt-get install libodbcinstq4-1:i386 // 成功
sudo apt-get install libpth-dev // 成功
sudo apt-get install libpthread-stubs0 // 成功
|

注:這個(gè)包是32位的需要更換源,我在上面已經(jīng)寫好步驟了(紫色字體部分)
1 | apt-get install libpthread-stubs0
|

exit 退出當(dāng)前用戶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | libpthread-stubs0-dev // 系統(tǒng)已經(jīng)安裝
sudo apt-get install libstdc++5 // 成功
sudo apt-get install lsb-cxx // 成功
sudo apt-get install make // 系統(tǒng)已經(jīng)安裝
sudo apt-get install openssh-server // 成功
sudo apt-get install pdksh // 成功
sudo apt-get install rlwrap // 成功
sudo apt-get install rpm // 系統(tǒng)已經(jīng)安裝
sudo apt-get install sysstat // 成功
sudo apt-get install unixodbc // 成功
sudo apt-get install unixodbc-dev // 成功
sudo apt-get install unzip // 系統(tǒng)已經(jīng)安裝
sudo apt-get install x11-utils // 系統(tǒng)已經(jīng)安裝
sudo apt-get install zlibc // 成功
|
到此依賴包就算安裝完成了,以上的這些依賴包也是可以代替的http://packages./precise/i386/ia32-libs-multiarch/download這個(gè)網(wǎng)址就是Ubuntu的軟件包源地址,有興趣的自行去研究。
四、配置oracle環(huán)境
1、用以下命令檢查系統(tǒng)變量(注以下的這些操作請(qǐng)用記事本把這些參數(shù)記錄下來)

1 | /usr/local/java $ /sbin/sysctl -a | grep sem
|

1 2 | /usr/local/java $ /sbin/sysctl -a | grep shm
/sbin/sysctl -a | grep file -max
|

1 | /sbin/sysctl -a | grep aio-max
|


1 2 | /sbin/sysctl -a | grep ip_local_port_range
/sbin/sysctl -a | grep rmem_default
|

1 | /sbin/sysctl -a | grep rmem_max
|


1 | /sbin/sysctl -a | grep wmem_default
|
2、根據(jù)上面命令中得到的參數(shù)值在/etc/sysctl.conf中增加對(duì)應(yīng)數(shù)據(jù)
1 2 | cd /etc/
sudovi /etc/sysctl .conf
|

把以下參數(shù)添加進(jìn)去并保存文件:
1 2 3 4 5 6 7 8 9 10 11 | kernel.sem =32000102400000050032000
kernel.shmall =18446744073692774399
kernel.shmmax =18446744073692774399
kernel.shmmni =4096
fs. file -max =96898
fs.aio-max-nr =65536
net.ipv4.ip_local_port_range= 3276860999
net.core.rmem_max= 212992
net.core.rmem_default= 212992
net.core.wmem_default= 212992
net.core.wmem_max= 212992
|

保存文件并退出,然后運(yùn)行以下命令更新內(nèi)核參數(shù):
3、添加用戶的內(nèi)核限制在/etc/security/limits.conf文件中增加以下數(shù)據(jù),注:其中shiyajing
是我ubuntu系統(tǒng)的普通用戶
1 2 | cd /etc/security/
sudo vi limits.conf
|

打開文件之后在末尾加入以下幾行:
shiyajing soft nproc 2047
shiyajing hard nproc 16384
shiyajing soft nofile 1024
shiyajing hard nofile 65536
shiyajing soft stack 10240
保存之后關(guān)閉文件窗口。
注:shiyajing這個(gè)用戶是我當(dāng)前操作的用戶,網(wǎng)上有些需要建立用戶組之類的,當(dāng)然你也可以建立oracle用戶組??磦€(gè)人喜好,不過也可以建立oracle用戶,這樣容易區(qū)分。
同樣的方法打開文件/etc/pam.d/login,增加以下行(有了就不用增加了):
1 | session requiredpam_limits.so
|
同樣檢查/etc/pam.d/su,沒有以下行就自己加上:
1 | session requiredpam_limits.so
|
4、創(chuàng)建oracle需要的文件夾
1 | shiyajing@Ubuntu14:~$ mkdir oracle11g
|
注:當(dāng)然你也可以自己取喜好的名字,這里沒有限制。
還有oracle安裝的時(shí)候差不多要占系統(tǒng)空間8個(gè)G左右,所以盡量放在硬盤上。除非你的初始系統(tǒng)空間很大,那么不存在此問題。
5、為oracle配置環(huán)境變量
1 2 | export ORACLE_BASE= /home/shiyajing/oracle11g
//oracle 安裝目錄
|

1 | export ORACLE_HOME=$ORACLE_BASE /product/11 .2.0 /dbhome_1
|

//現(xiàn)在還看不到這個(gè)文件夾,在Oracle安裝過程中系統(tǒng)會(huì)自動(dòng)創(chuàng)建,后面安裝時(shí)選擇路徑要和這里設(shè)置的一致。
//在安裝時(shí)會(huì)有一個(gè)設(shè)置的地方,默認(rèn)是orcl,也可以設(shè)置成其他
1 | export ORACLE_UNQNAME=orcl
|
//默認(rèn)字符集
1 | export NLS_LANG=.AL32UTF8
|
//環(huán)境變量
1 | export PATH=${PATH}:${ORACLE_HOME} /bin/ :$ORACLE_HOME /lib64 ;
|
6、欺騙oracle的安裝程序
Oracle本身并不支持ubuntu來安裝,所以要進(jìn)行欺騙oracle的安裝程序(sudo執(zhí)行):
1 2 3 4 5 6 7 8 9 10 | sudo mkdir /usr/lib64
sudoln -s /etc /etc/rc .d
sudo ln -s /lib/x86_64-linux-gnu/libgcc_s .so.1 /lib64/
sudoln -s /usr/bin/awk /bin/awk
sudoln -s /usr/bin/basename /bin/basename
sudoln -s /usr/bin/rpm /bin/rpm
sudoln -s /usr/lib/x86_64-linux-gnu/libc_nonshared .a /usr/lib64/
sudoln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared .a /usr/lib64/
sudoln -s /usr/lib/x86_64-linux-gnu/libstdc ++.so.6 /lib64/
sudoln -s /usr/lib/x86_64-linux-gnu/libstdc ++.so.6 /usr/lib64/
|
到此oracle的預(yù)備工作已經(jīng)做完了。接下來開始啦。
五、開始安裝oracle

1.從官網(wǎng)下載oracle安裝包,復(fù)制到/home/shiyajing/oracle11g
然后解壓:
解壓
1 2 3 | cd /home/shiyajing/oracle11g/
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
|
之后會(huì)出現(xiàn)一個(gè)database文件夾。
2.安裝遠(yuǎn)程可視化桌面
參考資料://www.jb51.net/os/Ubuntu/104948.html
http://blog.csdn.net/jlds123/article/details/9064437
http://blog.csdn.net/kylin_fire_zeng/article/details/42082415
安裝vncserver
1 | sudo apt-get install vnc4server
|
執(zhí)行vncserver
1 | sudoapt-get install xfce4
|
安裝完成xfce4后,修改xstartup文件,如下:
1 2 3 4 5 | sesion-manager& xfdesktop & xfce4-panel &
xfce4-menu-plugin&
xfsettingsd&
xfconfd &
xfwm4 &
|

執(zhí)行vncserver -kill :1,最好重啟vncserver就可以了,由于VNC不是本文重點(diǎn),有興趣的自行百度或者google。
3.開始在窗口中安裝oracle
進(jìn)入VNC界面

并切換到當(dāng)前安裝oracle的用戶
1 2 3 | cd /home/shiyajing/oracle11g
cd database
. /runInstaller
|
接著就跳出了oracle安裝界面了

把勾去掉點(diǎn)擊下一步

肯定選yes


繼續(xù)下一步,選擇第一個(gè),也可以選擇第二個(gè),可以自行嘗試
繼續(xù)下一步,把該填的填了


下一步,默認(rèn)就好,有些系統(tǒng)安裝可能沒有這一步。
下一步,把lgore all點(diǎn)上勾。

繼續(xù)下一步

點(diǎn)擊安裝,應(yīng)該在68%的時(shí)候會(huì)報(bào)3次錯(cuò),順序不定,看清錯(cuò)誤target
第一個(gè)報(bào)錯(cuò)

這個(gè)問題忽略現(xiàn)在跳過,選擇continue。
緊接著第二個(gè)報(bào)錯(cuò)出來了

Error in invoking target ‘a(chǎn)gent nmhs' ofmakefile
‘/home/shiyajing/oracle11g/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk'
解決方案:
打開新的終端窗口執(zhí)行以下命令(我這里用的是Xshell)
1 2 | cd /home/shiyajing/oracle11g/product/11 .2.0 /dbhome_1/sysman/lib/
sudo vi ins_emagent.mk
|
將文件中的$(MK_EMAGENT_NMECTL)修改成$(MK_EMAGENT_NMECTL -lnnz11)即可(應(yīng)該有兩處需要修,也有可能只有一處)。

然后點(diǎn)擊retry,接著往下執(zhí)行
第三個(gè)錯(cuò)誤:

解決辦法:
打開一個(gè)新的終端,輸入如下四個(gè)命令:
1 2 3 4 | sudo sed -i 's/^\(TNSLSNR_LINKLINE.*\$(TNSLSNR_OFILES)\) \(\$(LINKTTLIBS)\)/\1-Wl,--no-as-needed \2/g' /home/shiyajing/oracle11g/product/11.2.0/dbhome_1/network/lib/env_network.mk
sudo sed -i 's/^\(ORACLE_LINKLINE.*\$(ORACLE_LINKER)\) \(\$(PL_FLAGS)\)/\1-Wl,--no-as-needed \2/g' /home/shiyajing/oracle11g/product/11.2.0/dbhome_1/rdbms/lib/env_rdbms.mk
sudo sed -i 's/^\(\$LD \$LD_RUNTIME\)\(\$LD_OPT\)/\1 -Wl,--no-as-needed \2/g' /home/shiyajing/oracle11g/product/11.2.0/dbhome_1/bin/genorasdksh
sudo sed -i 's/^\(\s*\)\(\$(OCRLIBS_DEFAULT)\)/\1 -Wl,--no-as-needed \2/g' /home/shiyajing/oracle11g/product/11.2.0/dbhome_1/srvm/lib/ins_srvm.mk
|
//如果不行的話嘗試進(jìn)入文件路徑之后在執(zhí)行
然后在圖形界面點(diǎn)擊‘Retry'就能繼續(xù)安裝了。
百分之68我們過去了,基本上后面就不會(huì)報(bào)錯(cuò)了。

還有就是在cd /home/shiyajing/oraInventory/logs
這里有三個(gè)文件,我們可以實(shí)時(shí)監(jiān)控安裝的過程:




1 | tail -finstallActions2017-05-09_09-13-05PM.log
|
然后按照安裝程序提示最后執(zhí)行兩個(gè)腳本(這一步我只遇到一個(gè)腳本,但是并不影響):
1 | sudo /home/shiyajing/oraInventory/orainstRoot.sh(次要)
|

1 | sudo /home/shiyajing/oracle11g/product/11.2.0/dbhome_1/root.sh(主要)
|

一路回車就行,也可能只需要回車一次。
這個(gè)可能權(quán)限不夠,不過無傷大雅。友情提醒,oracle安裝的時(shí)候會(huì)占用8G的容量,所以盡量把oracle安裝目錄放入硬盤,一般服務(wù)器都有硬盤。當(dāng)然你服務(wù)器初始化容量很大的話不存在此問題。
如果放入硬盤的話,記得把硬盤存放的目錄權(quán)限給當(dāng)前用戶。否則后果你懂的,關(guān)于目錄權(quán)限命令。
例子:
1 2 | chown -R oracle /mnt/vdc/oracle11g
chown -R oracle /mnt/vdc/oracle11g/
|
六、測(cè)試oracle是否安裝成功
1、先測(cè)試一下oracle的環(huán)境變量,在終端輸入命令
1 2 3 | echo $ORACLE_BASE
echo $ORACLE_HOME
echo $PATH
|

看看是不是你配置的值,沒問題繼續(xù)向下。如果沒有則配置一下oracle的環(huán)境變量即可。
2、開啟監(jiān)聽器,在終端輸入命令

TNS-01106:使用偵聽器名稱偵聽器的LISTENER已經(jīng)啟動(dòng)

命令lsnrctl status可以查看監(jiān)聽信息
如果沒有可以自己配置監(jiān)聽,配置文件在
1 2 | cd /home/shiyajing/oracle11g/product/11.2.0/dbhome_1/network/admin/
vi listener.ora
|

然后按照上面的命令在啟動(dòng)一次監(jiān)聽。
啟動(dòng)oracle數(shù)據(jù)庫

這里我碰到一個(gè)問題,不過有解決辦法,輸入以下命令:
1 | sudo ln -s/home/shiyajing/oracle11g/product/11.2.0/dbhome_1/bin/sqlplus /usr/bin/sqlplus
|

一般是不會(huì)出現(xiàn)的,只有當(dāng)你oracle環(huán)境變量配置錯(cuò)了才會(huì)出現(xiàn)的。
以系統(tǒng)默認(rèn)用戶sysdba登錄

因?yàn)閯?chuàng)建實(shí)例的時(shí)候,已經(jīng)啟動(dòng)了,所以會(huì)提示下面這個(gè)錯(cuò)誤。
創(chuàng)建用戶并設(shè)置密碼,并設(shè)置權(quán)限。

1 | create user shiyajing identified bys123456;
|

1 | grant create user , drop user ,alteruser, create any view , drop anyview,exp_full_database,imp_full_database,dba, connect ,resource, create sessionto shiyajing;
|
exit退出.
當(dāng)然監(jiān)聽器也可以停止(lsnrctl stop),還有重啟,自行百度。
到此Oracle已經(jīng)安裝配置成功啦。
關(guān)于外網(wǎng)訪問這個(gè)自行訪問百度,網(wǎng)上很多。(多么痛的領(lǐng)悟)此教程百分百成功,實(shí)戰(zhàn)實(shí)測(cè)。再次申明依賴包一定要安裝好。
以上所述是小編給大家介紹的ubuntu 14.04 oracle 11g 64位數(shù)據(jù)庫安裝圖文教程,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
原文鏈接:https://my.oschina.net/345129564/blog/896668 微信公眾號(hào)搜索 “ 腳本之家 ” ,選擇關(guān)注 程序猿的那些事、送書等活動(dòng)等著你
|