一、環境
系統:Ubuntu 14.04.5 LTS(為了貼近生產我裝了個Ubuntu14的服務器版本)
JDK:jdk-8u121-linux-x64.tar.gz
Oracle:linux.x64_11gR2_database_1of2.ziplinux.x64_11gR2_database_2of2.zip
工具:Xshell5、
注:以上軟件或者工具自行去相關官網下載
二、安裝JDK
解壓JDK
tar -zxvf jdk-8u121-linux-x64.tar.gz
注:tools這個目錄是我新建的,當然你也可以放在別的位置
移動jdk1.8.0_121目錄到/usr/local/java,這個Java目錄是我新建的。
mv jdk1.8.0_121//usr/local/java/
接下來我們開始配置環境變量:
vi .bashrc
在文件.bashrc文件末尾處新增以下配置:
export JAVA_HOME=/usr/local/java/jdk1.8.0_121export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexport PATH=${JAVA_HOME}/bin:$PATH
然后執行wq!進行保存并退出
同時記得重新刷新一下文件,輸入以下命令:
source .bashrc
檢查一下Java是否配置成功:
java -version
說明我們按照成功了,這里解釋一下為什么要裝JDK,因為oracle有一部分的代碼是通過Java編寫的。
三、安裝依賴包
sudo apt-get install automake //成功sudo apt-get install autotools-dev//系統已經安裝sudo apt-get install binutils//只更新了一個文件,成功sudo apt-get install bzip2//系統已經安裝sudo apt-get install elfutils//成功sudo apt-get install expat//成功sudo apt-get install gawk//系統已經安裝sudo apt-get install gcc//系統已經安裝sudo apt-get install gcc-multilib//成功sudo apt-get install g++-multilib//成功sudo apt-get install ia32-libs //lib32ncurses5和lib32z1代替sudo apt-get install kshsudo apt-get install lesssudo apt-get install lesstif2sudo apt-get install lesstif2-dev
注:但是這五個包是32位的,需要更新源(以下操作是root用戶)
終端輸入:
sudo -icd /etc/apt/sources.list.decho "debhttp://cz.archive.ubuntu.com/ubuntu precise main universe">ia32-libs-raring.listapt-get updateapt-get install +包名
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 //成功
安裝成功之后再還原:
rm /etc/apt/sources.list.d/ia32-libs-raring.list
apt-get update
退出當前root用戶
root@Ubuntu14:/etc/apt/sources.list.d# exitsudo apt-get install lib32z1//系統已經安裝sudo apt-get install libaio1//成功sudo apt-get install libaio-dev//成功sudo apt-get install libc6-dev//系統已經安裝sudo apt-get install libc6-dev-i386//系統已經安裝sudo apt-get install libc6-i386 //系統已經安裝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//成功
注:這個包是32位的需要更換源,我在上面已經寫好步驟了(紫色字體部分)
apt-get install libpthread-stubs0
exit 退出當前用戶
libpthread-stubs0-dev//系統已經安裝sudo apt-get install libstdc++5//成功sudo apt-get install lsb-cxx//成功sudo apt-get install make//系統已經安裝sudo apt-get install openssh-server//成功sudo apt-get install pdksh//成功sudo apt-get install rlwrap//成功sudo apt-get install rpm//系統已經安裝sudo apt-get install sysstat//成功sudo apt-get install unixodbc//成功sudo apt-get install unixodbc-dev//成功sudo apt-get install unzip//系統已經安裝sudo apt-get install x11-utils//系統已經安裝sudo apt-get install zlibc//成功
到此依賴包就算安裝完成了,以上的這些依賴包也是可以代替的http://packages.ubuntu.com/precise/i386/ia32-libs-multiarch/download這個網址就是Ubuntu的軟件包源地址,有興趣的自行去研究。
四、配置oracle環境
1、用以下命令檢查系統變量(注以下的這些操作請用記事本把這些參數記錄下來)
/usr/local/java$ /sbin/sysctl -a | grep sem
/usr/local/java$ /sbin/sysctl -a | grep shm/sbin/sysctl -a | grep file-max
/sbin/sysctl -a | grep aio-max
/sbin/sysctl -a | grep ip_local_port_range/sbin/sysctl -a | grep rmem_default
/sbin/sysctl -a | grep rmem_max
/sbin/sysctl -a | grep wmem_default
2、根據上面命令中得到的參數值在/etc/sysctl.conf中增加對應數據
cd/etc/sudovi /etc/sysctl.conf
把以下參數添加進去并保存文件:
kernel.sem =32000102400000050032000kernel.shmall =18446744073692774399kernel.shmmax =18446744073692774399kernel.shmmni =4096fs.file-max =96898fs.aio-max-nr =65536net.ipv4.ip_local_port_range= 3276860999net.core.rmem_max= 212992net.core.rmem_default= 212992net.core.wmem_default= 212992net.core.wmem_max= 212992
保存文件并退出,然后運行以下命令更新內核參數:
sysctl -p
3、添加用戶的內核限制在/etc/security/limits.conf文件中增加以下數據,注:其中shiyajing
是我ubuntu系統的普通用戶
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
保存之后關閉文件窗口。
注:shiyajing這個用戶是我當前操作的用戶,網上有些需要建立用戶組之類的,當然你也可以建立oracle用戶組??磦€人喜好,不過也可以建立oracle用戶,這樣容易區分。
同樣的方法打開文件/etc/pam.d/login,增加以下行(有了就不用增加了):
session requiredpam_limits.so
同樣檢查/etc/pam.d/su,沒有以下行就自己加上:
session requiredpam_limits.so
4、創建oracle需要的文件夾
shiyajing@Ubuntu14:~$ mkdir oracle11g
注:當然你也可以自己取喜好的名字,這里沒有限制。
還有oracle安裝的時候差不多要占系統空間8個G左右,所以盡量放在硬盤上。除非你的初始系統空間很大,那么不存在此問題。
5、為oracle配置環境變量
export ORACLE_BASE=/home/shiyajing/oracle11g//oracle安裝目錄
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
//現在還看不到這個文件夾,在Oracle安裝過程中系統會自動創建,后面安裝時選擇路徑要和這里設置的一致。
export ORACLE_SID=orcl
//在安裝時會有一個設置的地方,默認是orcl,也可以設置成其他
export ORACLE_UNQNAME=orcl
//默認字符集
export NLS_LANG=.AL32UTF8
//環境變量
export PATH=${PATH}:${ORACLE_HOME}/bin/:$ORACLE_HOME/lib64;
6、欺騙oracle的安裝程序
Oracle本身并不支持ubuntu來安裝,所以要進行欺騙oracle的安裝程序(sudo執行):
sudo mkdir /usr/lib64sudoln -s /etc /etc/rc.dsudo ln -s /lib/x86_64-linux-gnu/libgcc_s.so.1 /lib64/sudoln -s /usr/bin/awk /bin/awksudoln -s /usr/bin/basename /bin/basenamesudoln -s /usr/bin/rpm /bin/rpmsudoln -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的預備工作已經做完了。接下來開始啦。
五、開始安裝oracle
1.從官網下載oracle安裝包,復制到/home/shiyajing/oracle11g
然后解壓:
解壓
cd /home/shiyajing/oracle11g/unzip linux.x64_11gR2_database_1of2.zipunzip linux.x64_11gR2_database_2of2.zip
之后會出現一個database文件夾。
2.安裝遠程可視化桌面
參考資料:http://www.49028c.com/os/Ubuntu/104948.html
http://blog.csdn.net/jlds123/article/details/9064437
http://blog.csdn.net/kylin_fire_zeng/article/details/42082415
安裝vncserver
sudo apt-get install vnc4server
執行vncserver
sudoapt-get install xfce4
cd ~/.vncvi xstartup
安裝完成xfce4后,修改xstartup文件,如下:
sesion-manager& xfdesktop & xfce4-panel &xfce4-menu-plugin&xfsettingsd&xfconfd &xfwm4 &
執行vncserver -kill :1,最好重啟vncserver就可以了,由于VNC不是本文重點,有興趣的自行百度或者google。
3.開始在窗口中安裝oracle
進入VNC界面
并切換到當前安裝oracle的用戶
cd /home/shiyajing/oracle11gcd database./runInstaller
接著就跳出了oracle安裝界面了
把勾去掉點擊下一步
肯定選yes
繼續下一步,選擇第一個,也可以選擇第二個,可以自行嘗試
繼續下一步,把該填的填了
下一步,默認就好,有些系統安裝可能沒有這一步。
下一步,把lgore all點上勾。
繼續下一步
點擊安裝,應該在68%的時候會報3次錯,順序不定,看清錯誤target
第一個報錯
這個問題忽略現在跳過,選擇continue。
緊接著第二個報錯出來了
Error in invoking target ‘agent nmhs' ofmakefile
‘/home/shiyajing/oracle11g/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk'
解決方案:
打開新的終端窗口執行以下命令(我這里用的是Xshell)
cd /home/shiyajing/oracle11g/product/11.2.0/dbhome_1/sysman/lib/sudo vi ins_emagent.mk
將文件中的$(MK_EMAGENT_NMECTL)修改成$(MK_EMAGENT_NMECTL -lnnz11)即可(應該有兩處需要修,也有可能只有一處)。
然后點擊retry,接著往下執行
第三個錯誤:
解決辦法:
打開一個新的終端,輸入如下四個命令:
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.mksudo 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.mksudo 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/genorasdkshsudo 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
//如果不行的話嘗試進入文件路徑之后在執行
然后在圖形界面點擊‘Retry'就能繼續安裝了。
百分之68我們過去了,基本上后面就不會報錯了。
還有就是在cd /home/shiyajing/oraInventory/logs
這里有三個文件,我們可以實時監控安裝的過程:
tail -finstallActions2017-05-09_09-13-05PM.log
然后按照安裝程序提示最后執行兩個腳本(這一步我只遇到一個腳本,但是并不影響):
sudo /home/shiyajing/oraInventory/orainstRoot.sh(次要)
sudo /home/shiyajing/oracle11g/product/11.2.0/dbhome_1/root.sh(主要)
一路回車就行,也可能只需要回車一次。
這個可能權限不夠,不過無傷大雅。友情提醒,oracle安裝的時候會占用8G的容量,所以盡量把oracle安裝目錄放入硬盤,一般服務器都有硬盤。當然你服務器初始化容量很大的話不存在此問題。
如果放入硬盤的話,記得把硬盤存放的目錄權限給當前用戶。否則后果你懂的,關于目錄權限命令。
例子:
chown -R oracle /mnt/vdc/oracle11gchown -R oracle /mnt/vdc/oracle11g/
六、測試oracle是否安裝成功
1、先測試一下oracle的環境變量,在終端輸入命令
echo $ORACLE_BASEecho $ORACLE_HOMEecho $PATH
看看是不是你配置的值,沒問題繼續向下。如果沒有則配置一下oracle的環境變量即可。
2、開啟監聽器,在終端輸入命令
lsnrctl start
TNS-01106:使用偵聽器名稱偵聽器的LISTENER已經啟動
命令lsnrctl status可以查看監聽信息
如果沒有可以自己配置監聽,配置文件在
cd /home/shiyajing/oracle11g/product/11.2.0/dbhome_1/network/admin/vi listener.ora
然后按照上面的命令在啟動一次監聽。
啟動oracle數據庫
sqlplus /nolog
這里我碰到一個問題,不過有解決辦法,輸入以下命令:
sudo ln -s/home/shiyajing/oracle11g/product/11.2.0/dbhome_1/bin/sqlplus /usr/bin/sqlplus
一般是不會出現的,只有當你oracle環境變量配置錯了才會出現的。
conn / as sysdba
以系統默認用戶sysdba登錄
因為創建實例的時候,已經啟動了,所以會提示下面這個錯誤。
創建用戶并設置密碼,并設置權限。
create user shiyajing identified bys123456;
grant create user,drop user,alteruser,create any view,drop anyview,exp_full_database,imp_full_database,dba,connect ,resource,create sessionto shiyajing;
exit退出.
當然監聽器也可以停止(lsnrctl stop),還有重啟,自行百度。
到此Oracle已經安裝配置成功啦。
關于外網訪問這個自行訪問百度,網上很多。(多么痛的領悟)此教程百分百成功,實戰實測。再次申明依賴包一定要安裝好。
以上所述是小編給大家介紹的ubuntu 14.04 oracle 11g 64位數據庫安裝圖文教程,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答
圖片精選