標籤:提示資訊 軟體 dir sof 限制 mirror tor nofile 貼吧
1.虛擬機器上centos鏡像的擷取。這裡推薦網易鏡像站中的CentOS7版本(其他開源鏡像站亦可)。這裡給出連結:
http://mirrors.163.com/centos/7.3.1611/isos/x86_64/CentOS-7-x86_64-DVD-1611.iso
ps:這是64位的,現在也很少人使用32位系統了吧。安裝CentOS系統(網上教程很多,這裡不再贅述)
ps:最好留著10G左右的空留空間(安裝包就有2G,再加上最後安裝的體積,多留點,筆者安裝時就不夠用了,到時候虛擬機器中擴空間也是十分麻煩的事情)
ps:記憶體最好2G及2G以上
2.oracle安裝包擷取。百度貼吧中的Oracle安裝包大多是Windows系統版本的。我們需要的是Linux版本的,這裡推薦直接從官網擷取:
http://download.oracle.com/otn/linux/oracle11g/R2/linux.x64_11gR2_database_1of2.zip
http://download.oracle.com/otn/linux/oracle11g/R2/linux.x64_11gR2_database_2of2.zip
這裡有兩個包,但是直接單擊連結的話,會提示需要登入oracle賬戶才能下載。因此這裡筆者推薦使用下載軟體(筆者使用的迅雷9)直接添加下載連結,進行下載
3.下載完成後,解壓到當前檔案夾。會出現一個database的檔案夾。安裝包的準備工作就此完成。重頭戲和麻煩事來了。
在CentOS的終端中切換到root使用者,我們需要更新一些包。切換命令:
su
之後輸入root使用者密碼(r如果是初次使用root使用者,這裡會提示設定密碼)
之後我們需要更新下面這些包(版本比下述高即可,有些已有最新版的,系統不會更新,這時候直接下一個就可以):
binutils-2.17.50.0.6 compat-libstdc++-33-3.2.3 (33表示3.3版,296表示2.96版) elfutils-libelf-0.125 elfutils-libelf-devel-0.125 elfutils-libelf-devel-static-0.125 gcc-4.1.2 gcc-c++-4.1.2 glibc-2.5-24 glibc-common-2.5 glibc-devel-2.5 glibc-headers-2.5 kernel-headers-2.6.18 ksh-20060214 libaio-0.3.106 libaio-devel-0.3.106 libgcc-4.1.2 libgomp-4.1.2 libstdc++-4.1.2 libstdc++-devel-4.1.2 make-3.81 numactl-devel-0.9.8.i386 sysstat-7.0.2 unixODBC-2.2.11 (官方文檔裡面沒有寫)unixODBC-devel-2.2.11
安裝命令樣本:
yum install gcc
包後無需跟版本號碼,其他的包類似。
4.開始安裝前我們首先要配置核心參數,保證Oracle的正常運行(Oracle啟動需要較多的資源)。配置如下:
修改檔案/etc/sysctl.conf,這裡筆者使用
gedit /etc/sysctl.conf
開啟檔案修改一下內容,有責略過,沒有責添加
修改如下:
kernel.shmall=4294967296kernel.shmmax=68719476736fs.file-max=6815744fs.aio-max-nr=1048576kernel.shmmni=4096kernel.sem=800 113600 800 142net.ipv4.ip_local_port_range=1024 65500net.core.rmem_default=262144net.core.rmem_max=4194304net.core.wmem_default=262144net.core.wmem_max=1048576
各參數意義如下:
(1)shmmax:該參數定義了共用記憶體段的最大尺寸(以位元組為單位),通常將其設定為2G或更大。
(2)shmmni:用於設定系統範圍內共用記憶體段的最大數量。預設值是 4096 ,通常不需要更改。(3)shmall:該參數表示系統一次可以使用的共用記憶體總量(以頁為單位)。預設值就是2097152,如系統自動產生則不需要修改。 (4)sem:該參數表示設定的訊號量,當oracle DB初始化參數檔案中PROCESSES參數設定較大時,需要調整SEM設定如:kernel.sem = 250 32000 100 128各資料區段含義如下。 SEMMSL SEMMNSSEMOPM SEMMNI
SEMMSL應該設定為伺服器中各個執行個體中最大的PROCESSES參數+10,如當最大的PROCESSES參數為5000時,SEMMSL應設定為5010。
SEMMNS參數應設定為SEMMSL*SEMMNI,如例SEMMSL為5010,SEMMNS參數應為(5010*128)=641280。 SEMOPM參數應設定與SEMMSL參數相同,接上例此處應設定為5010
(5)file-max:該參數表示檔案控制代碼的最大數量。檔案控制代碼設定表示在linux系統中可以開啟的檔案數量。
(6)rmem_default — 預設的TCP/IP接收緩衝大小 (7)rmem_max — 最大的TCP/IP接收視窗的大小 (8)wmem_default — 預設的TCP/IP發送視窗大小 (9)wmem_max — 最大的TCP/IP發送視窗的大小如果要使 /etc/sysctl.conf 更改立即生效,執行以下命令:
sysctl -p
可能出現如下錯誤: error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
error: "net.bridge.bridge-nf-call-iptables" is an unknown key
error: "net.bridge.bridge-nf-call-arptables" is an unknown key 解決方案:
lsmod | grep bridgemodprobe bridgelsmod | grep bridge
5.修改使用者的使用者的SHELL的限制,修改/etc/security/limits.conf檔案 輸入命令:
gedit /etc/security/limits.conf
加入內容下面內容:並儲存退出
oracle soft nproc 4096 oracle hard nproc 16384 oracle soft nofile 4096 oracle hard nofile 65536oracle soft stack 10240
6.修改/etc/pam.d/login 檔案,輸入命令:gedit /etc/pam.d/login,將下列內容加入該檔案。
session required /lib64/security/pam_limits.so session required pam_limits.so
7.編輯 /etc/profile ,輸入命令:gedit /etc/profile,加入下列內容。
if[$USER="oracle"];then if[$SHELL="/bin/ksh"];then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fifi
8.建立oracle使用者和安裝目錄
ps:安裝目錄可以之後用oracle賬戶登入系統後通過圖形化介面建立
建立使用者和使用者組,輸入命令:
groupadd oinstall //建立Oracle Inventory 組groupadd dba //建立組群DBA 組useradd -g oinstall -G dba oracle //建立Oracle軟體擁有者(-g表示輔助組,-G表示主組)(還可以在後面接-d dir,表示使用者的家目錄的位置,預設普通使用者的家目錄在/home下)passwd oracle //修改oracle使用者的密碼
之後設定密碼(Linux中密碼不會顯示,也不會顯示“*“,這裡不要懷疑自己鍵盤壞了)
之後我們創健安裝目錄(可之後登入後用圖形化介面創健)
mkdir -p /home/oracle/app #基目錄mkdir /home/oracle/app/oraInventory #該目錄就像Windows下的註冊表檔案,每當有軟體安裝,就會向裡面寫一些註冊表mkdir /home/oracle/app/oracle #oracle資料庫目錄mkdir /home/oracle/app/oracle/product #oracle執行個體目錄
更改目錄屬主為Oracle使用者所有(防止安裝過程中發生許可權不夠的問題),輸入命令:
chown -R oracle:oinstall /home/oracle/appchmod -R 775 /home/oracle/app/
9.配置oracle使用者的環境變數,要在oracle使用者下進行操作,輸入:
su oracle
之後輸入上一步自己設定的密碼登入,輸入vim /home/oracle/.bash_profile,按I鍵進入插入模式,在裡面輸入斷行符號後,先按ESC鍵,再按:wq退出
之後我們再輸入gedit /home/oracle/.bash_profile進入編輯,添加:
export EDITOR=vi export ORACLE_SID=orcl #執行個體名 export ORACLE_BASE=/home/oracle/app export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1 export INVENTORY_LOCATION=/home/oracle/app/oraInventory export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib export NLS_LANG="American_america.zhs16gbk" export NLS_DATE_FORMAT=‘yyyy-mm-dd hh24:mi:ss‘ export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin umask 022 export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATHexport erase ^h #用於消除換車鍵產生的亂碼
10.安裝前準備
重啟CentOS系統,用Oracle賬戶登入
將第3步中的database檔案夾拷貝進入home檔案夾中。
(之前沒有建立檔案夾的此時可以建立)
11.開始安裝。
輸入命令切換到database中,再輸入安裝命令
cd /database
./runInstaller
12.安裝過程
這一步之後或者之前都可能出現一個問題(筆者出現很多次,折騰了幾天),問題如:
這時候安裝介面突然暗下來,然後正中間出現一條豎線。這時候就會卡死不動。其實這是一個視窗,但是Linux的圖形介面你懂得,沒有顯示出來。這時候按下Enter鍵可能會進入下一步。如果沒有,就將密碼改成8位以上包括大寫字母,小寫字母,數字,檢車下上面的安裝路徑是否正確。之後點next,按enter鍵。後面出現這個問題同樣卡死的時候,可以試試按下右移鍵,再按斷行符號。
安裝快完成時,系統會提示你需要用root許可權執行2個shell指令碼。 按照其提示的路徑 執 行/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh 和 /home/oracle/ oraInventory/orainstRoot.sh,安裝完成會有提示資訊。 執行命令:
cd /home/oracle/app/oracle/product/11.2.0/dbhome_1 sh root.sh #當中有個敲斷行符號的點cd /home/oracle/app/oraInventory sh orainstRoot.sh
至此安裝完成!
CentOS上oracle 11g R2資料庫安裝摺騰記