Linux上Oracle11g R2安裝及配置
一. 安裝環境准備
- 1. 環境說明
Linux服務器系統:Oracle Linux Release 6 Update 2 (64bit),先安裝好。
Oracle服務器:Oracle11gR2 (64bit)
- 2. 修改操作系統核心參數
在Root用戶下執行以下步驟:
1)修改用戶的SHELL的限制,修改/etc/security/limits.conf文件
輸入命令:vi /etc/security/limits.conf,按i鍵進入編輯模式,加入內容。
oracle soft nproc 4096 |
編輯完成后按Esc鍵,輸入“:wq”存盤退出
2)修改/etc/pam.d/login 文件,輸入命令:vi /etc/pam.d/login,按i鍵進入編輯模式,將下列內容加入該文件。
session required /lib/security/pam_limits.so |
編輯完成后按Esc鍵,輸入“:wq”存盤退出
3)修改linux內核文件,/etc/sysctl.conf,輸入命令: vi /etc/sysctl.conf ,按i鍵進入編輯模式,將下列內容加入該文件
kernel.shmall=4294967296 (已經存在) fs.file-max=6815744 |
編輯完成后按Esc鍵,輸入“:wq”存盤退出
各參數意義如下:
(1)shmmax:該參數定義了共享內存段的最大尺寸(以字節為單位),通常將其設置為2G或更大。
(2)shmmni:用於設置系統范圍內共享內存段的最大數量。默認值是 4096 ,通常不需要更改。
(3)shmall:該參數表示系統一次可以使用的共享內存總量(以頁為單位)。缺省值就是2097152,如系統自動生成則不需要修改。
(4)sem:該參數表示設置的信號量,當oracle DB初始化參數文件中PROCESSES參數設置較大時,需要調整SEM設置 如:kernel.sem = 250 32000 100 128各數據段含義如下。
SEMMSL SEMMNS SEMOPM 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發送窗口的大小
4)要使 /etc/sysctl.conf 更改立即生效,執行以下命令:
# sysctl -p |
5)編輯 /etc/profile ,輸入命令:vi /etc/profile,按i鍵進入編輯模式,加入下列內容。
if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi |
編輯完成后按Esc鍵,輸入“:wq”存盤退出
6)創建用戶和組。
創建組: groupadd oinstall 創建Oracle用戶和密碼: useradd -g oinstall -G dba oracle passwd oracle 然后會讓你輸入密碼,密碼任意輸入2次,但必須保持一致,回車確認 |
7)創建數據庫軟件工作目錄和數據文件存放目錄,根據自己的情況來定
輸入命令: mkdir /home/oracle/app mkdir /home/oracle/app/oraInventory mkdir /home/oracle/app/oracle mkdir /home/oracle/app/oracle/product |
8)更改目錄屬主為Oracle用戶所有,輸入命令:
chown -R oracle:oinstall /home/oracle/app chown -R oracle:oinstall /home |
9)配置oracle用戶的環境變量,要在oracle用戶下進行操作。
輸入:
# su oracle
$ vi /home/oracle/.bash_profile
按i進入編輯模式,增加以下內容:
export EDITOR=vi export ORACLE_SID=doea5dw 實例名 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/local/development/jdk1.7.0_21 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH |
編輯完成后按Esc鍵,輸入“:wq”存盤退出
10.root用戶下, 編輯/etc/hosts文件,輸入IP地址和主機名
[root@A5BI-1 //]# vi /etc/hosts
127.0.0.1 localhost.localdomain localhost
#::1 localhost6.localdomain6 localhost6
192.168.100.31 A5BI-1.a5test.com
127.0.0.1 A5BI-1
二.安裝oracle軟件
- 1. 安裝准備
1)退出系統以Oracle用戶登陸。
2)首先將Oracle軟件安裝包復制到linux系統中的一個目錄下,確保Oracle用戶對此目錄有足夠權限。
3)打開一個終端,運行unzip命令解壓oracle軟件安裝包。
輸入命令: unzip linux.x64_11gR2_database_1of2.zip unzip linux.x64_11gR2_database_2of2.zip |
解壓完成后生成新目錄database,進入解壓后的database目錄查看。
輸入命令: cd /database ls
|
- 2. 開始安裝:
由於本次存儲采用FILESYSTEM,沒有用ASM磁盤組,所以不配置GRID,直接安裝ORACLE軟件。執行安裝要在Oracle用戶下進行:
[root@A5BI-1 //]# su oracle
[oracle@A5BI-1 database]$ cd /database
[oracle@A5BI-1 database]$ ./runInstaller
安裝報錯,如下圖
解決:
Su ---切換為root用戶
Xhost +SI:localuser:oracle ---設置本地用戶可視化安裝
Su oracle ---切換到oracle用戶重新安裝
郵箱也可不填寫,去掉勾選
選擇只安裝軟件
選擇安裝單實例還是RAC環境,此處選擇單實例
選擇語言,English
選擇安裝版本,選擇Enterprise Edition,點擊select option,選擇要安裝的組件
輸入ORACLE_BASE和ORACLE_HOME路徑,確保oracle用戶對此目錄有訪問權限
OSDBA組用戶被授予sysdba權限,OSOPER組用戶被授予sysoper權限
檢測安裝環境
安裝缺失的軟件:
裝載iso系統文件到光驅,在虛擬機控制面板上操作。從linux安裝ISO中查找所缺的包,進行安裝,全部都安裝好,再次執行安裝過程,就通過了。
由於本次linux系統版本高於數據庫版本,我們忽略這些錯誤,選擇lgnore All
點擊save response file 保存安裝過程到response文件,用於以后靜默安裝
開始安裝
安裝快完成時,系統會提示你需要用root權限執行2個shell腳本。按照其提示的路徑執行/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh
和 /home/oracle/oraInventory/orainstRoot.sh,安裝完成會有提示信息。
執行命令:
$ su
# cd /home/oracle/app/oracle/product/11.2.0/dbhome_1
# sh root.sh
提示:
Running Oracle 11g root.sh script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /home/oracle/app/oracle/product/11.2.0/dbhome_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
執行命令:
cd /home/oracle/app/oraInventory
sh orainstRoot.sh
提示:
Changing permissions of /home/oracle/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /home/oracle/oraInventory to oinstall.
The execution of the script is complete.
安裝完成,Close結束
三.創建數據庫實例
在oracle用戶中,新開啟一個終端,輸入命令:
[orcle@A5BI-1 //] $ dbca
Next
創建一數據庫
選擇數據庫類型
輸入全局數據庫名和實例名
由於未安裝EM,此處選擇不使用EM管理數據庫,去掉勾選
設置管理員密碼11g默認密碼至少包含一個大寫字母、一個小寫字母和一個數字,且為8個字符。可以重新設置或者直接Next
由於未使用ASM,此處選擇file system,並選擇OMF管理數據庫文件
不指定Specify Flash Recovery Area(快速恢復和歸檔)
去掉不常用的模塊
可選用Automatic Memory Management,也可不選用
當選用Automatic Memory Management時只需要指定sga和pga總大小,oracle將自動管理內存。分配的內存大小與/dev/shm下空間大小相匹配,如果空間不足要擴大tmpfs文件系統大小。
查看/dev/shm空間大小:
命令:df –TH
設置為/dev/shm空間大小,如果夠用不用修改。
命令:mount -t tmpfs -o size=7300m tmpfs /dev/shm
選擇字符集點擊Next
保持默認值點擊Next
點擊Finish進行安裝
經過漫長的等待,當看到此界面,說明oracle建庫完成,點擊0k,點擊Exit
四.配置監聽及本地網絡服務
在oracle用戶的圖形界面中,新開啟一個終端,創建監聽服務(充當oracle服務器,讓別的客戶端連接本oracle服務器)輸入命令:
$ netca
輸入oracle服務器的ip地址
選中測試
點擊change Login 輸入所連接oracle服務器的其中某一個用戶名和密碼,點擊OK
此界面測試成功(如不成功,請查看網絡是否暢通,所連接oracle服務器,監聽是否啟動)
為你所設置的本地網絡服務名起個名字,Next
然后點擊Next
這樣oracle服務器安裝配置基本就完成了。
第一步:登陸
root登陸之后切換到oracle用戶上,輸入
su oracle
第二步:連接
在oracle用戶下,輸入
sqlplus /nolog
第三步:使用管理員權限 ,輸入
connect /as sysdba
第四步:啟動/關閉服務,輸入
startup
第五步:如果是啟動服務,要開啟監聽
退出sqlplus模式,輸入 :exit 或者ctrl+d 退出
開啟監聽
lsnrctl start