Redhat linux下安装oracle11r2手册+截图_toto_V1.0
在Linux下安裝配置Oracle 11g R2詳細過程(在整個過程中是在虛擬機下模擬的,虛擬機磁盤設置成了100GB)
1.Linux環境配置準備
環境:Linux:Redhat Enterprise 6,DB:Oracle 11gR2 X64,Oracle安裝到/home/oralce_11目錄下。
配置過程如下:(大部分是網上的內容,個人也是按照網上步驟來的)
1)?檢查基本需求(對于牛逼的服務器來說,這個肯定是滿足要求的,可以跳過)
內存大小
grep MemTotal /proc/meminfo
交換分區大小
grep SwapTotal /proc/meminfo
增加交換分區
創建/home/swap這么一個分區文件。文件的大小是5120000個block,一般情況下1個block為1K,所以這里空間是5G。
dd if=/dev/zero of=/home/swap bs=1024 count=5120000
接著再把這個分區變成swap分區。
mkswap /home/swap
然后把它加到fstab里面
echo "/home/swap swap swap defaults 0 0" >> /etc/fstab
2)?檢查軟件需求,沒有的yum install安裝
rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibcglibc-common glibc-devel gcc- gcc-c++ libaio-devel libaio libgcc libstdc++libstdc++-devel make sysstat unixODBC unixODBC-devel pdksh?
具體的未安裝的有:
binutils-2.20.51.0.2-5.36.el6.x86_64.rpm
compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm
elfutils-libelf-0.152-1.el6.x86_64.rpm
elfutils-libelf-devel-0.152-1.el6.x86_64.rpm
glibc-2.12-1.107.el6.x86_64.rpm
glibc-2.12-1.107.el6.i686.rpm
glibc-common-2.12-1.107.el6.x86_64.rpm
glibc-devel-2.12-1.107.el6.x86_64.rpm
gcc-4.4.7-3.el6.x86_64.rpm
gcc-c++-4.4.7-3.el6.x86_64.rpm
libaio-devel-0.3.107-10.el6.x86_64.rpm
libaio-0.3.107-10.el6.x86_64.rpm
libgcc-4.4.7-3.el6.x86_64.rpm
libgcc-4.4.7-3.el6.i686.rpm
libstdc++-4.4.7-3.el6.x86_64.rpm
libstdc++-devel-4.4.7-3.el6.x86_64.rpm
make-3.81-20.el6.x86_64.rpm
sysstat-9.0.4-20.el6.x86_64.rpm
unixODBC-2.2.14-12.el6_3.x86_64.rpm
unixODBC-devel-2.2.14-12.el6_3.x86_64.rpm
package pdksh is not installed
?
(這里如果出現沒有安裝的,那么就要把Linux光盤放入,進入Server文件夾,找到對應的RPM包,運行RPM命令來進行安裝,如果喜歡圖形界面的話,在圖像界面也可以通過雙擊對應的RPM包來安裝。需要注意的是在安裝libaio-devel unixODBC unixODBC-devel 這3個軟件包的時候,除了安裝X64的包以為,還要安裝i386的包,不能因為是X64的系統,就不裝i386的包了。)
?
注意:
A將磁盤插入,切換用戶再操作。如果是用虛擬機,進行以下設置:
B再右擊左側的Red Hat***à可以移動設備à連接,接著就可以看到如下:
C在進入/media目錄下進行查看
圖形化是的內容如下:
D package中有我們需要的安裝包,cd目錄中的內容如下:
E安裝各種上面沒有安裝好的rpm
(1):安裝binutils-2.20.51.0.2-5.36.el6.x86_64
(2):安裝compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm
(3):安裝elfutils-libelf-0.152-1.el6.x86_64.rpm
(4):安裝elfutils-libelf-devel-0.152-1.el6.x86_64.rpm
后面的繼續一個個安裝好:
F(這里如果出現沒有安裝的,那么就要把Linux光盤放入,進入Server文件夾,找到對應的RPM包,運行RPM命令來進行安裝,如果喜歡圖形界面的話,在圖像界面也可以通過雙擊對應的RPM包來安裝。需要注意的是在安裝libaio-devel unixODBC unixODBC-devel 這3個軟件包的時候,除了安裝X64的包以為,還要安裝i386的包,不能因為是X64的系統,就不裝i386的包了。
?
下面的也要安裝上
3)配置內核。
編輯 /etc/sysctl.conf。
將以下內容添加至文件
# Kernel paramaters required by Oracle 11gR1
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
4)???????? 要使/etc/sysctl.conf更改立即生效,執行以下命令。
sysctl -p
5)???????? 編輯/etc/security/limits.conf。
添加以下行:
oracle??????????soft???nproc?????????? 2047
oracle??????????hard???nproc?????????? 16384
oracle??????????soft???nofile????????? 1024
oracle??????????hard???nofile????????? 65536
6)???????? 編輯/etc/pam.d/login。
添加以下行:
session??? required????/lib/security/pam_limits.so
session??? required???? pam_limits.so
【注意:如果是X64的系統,那么這里就要用?/lib64/security/pam_limits.so,不然系統可能會在服務器上無法登錄!】
7)???????? 編輯/etc/profile。
添加以下行:
if [ $USER = "oracle" ]; then
?? if [ $SHELL = "/bin/ksh" ]; then
????? ulimit -p 16384
????? ulimit -n 65536
?? else
????? ulimit -u 16384 -n 65536
?? fi
fi
8)???????? 創建操作系統用戶,作為軟件安裝和支持組的擁有者。
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle ???密碼設置成為oracle
9)???????? 創建軟件安裝目錄。
mkdir -p /home/oracle_11/app/
chown -R oracle.oinstall /home/oracle_11/
chmod -R 755 /home/oracle_11/
10)???? 編輯/home/oracle/.bash_profile。要進入/home目錄下的oracle目錄。
添加以下行:
umask 022
ORACLE_BASE=/home/oracle_11/app
ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/db_1
ORACLE_SID=MYTEST --實例名,根據需要進行修改
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
LANG=C?????????????????????--設定此參數避免安裝過程出現亂碼
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH LANG
?
原來的配置:
配置改成如下:
如果有時候發現有亂碼,這里去掉LANG=C??和?export最后的LANG
11)??? 在圖形界面下(在本機操作或者通過VNC遠程操作)以root身份打開另一個終端窗口
--這步至關重要,不執行這步在以oracle用戶運行 # ./runInstaller時會啟動不了圖型安裝界面
#xhost +
#xhost + localhost
12)?? 將下載的Oracle安裝文件解壓到Linux中,然后安裝數據庫(/home/oralce目錄下:)
*********************************************************************************************************
注意在安裝前要把機器的ip地址改成固定的ip地址,即修改vi /etc/sysconfig/network-scripts/ifcfg-eth0中的BOOTPROTO=static,否則報如下錯誤:
DCHP獲取的IP,在安裝過程中會造成:
Oracle Net Configuration Assistant failed
必須設置固定IP,如果計算機名稱有改動需要需要在/etc/hosts文件中做解析配置。
*********************************************************************************************************
將上面的文件傳到Linux下
分別加壓這兩個包:
運行結果:
下面的是執行Oracle安裝。
#su - oracle
cd database/
./runInstaller
13)接下來會出現圖形化的安裝向導,按照向導一步一步的操作,和Windows下安裝Oracle的向導一樣,沒有太大區別,直到最后安裝完成。
A:配置是否更新
B創建并配置數據庫:
C選擇服務器:
D安裝實例
E選擇高級安裝
F選擇語言(中文平臺下)
G選擇企業級版
H選擇默認的安裝路徑
I選擇通用的服務器開發
J設置數據庫服務名(這個牢記,默認的服務名是orcl)
K選擇字符集
L選擇默認:
M配置是否進行默認的備份(不需要,可以使用默認配置)
N設置幾個用戶名和密碼,這里統一用sys/sys
校驗環境是否正確:
若中途出現如下錯誤:
通過搜索博文,發現是說需要裝gcc-4.4.7-3.el6.x86_64.rpm,但是裝的時候報如下錯誤:
libmpfr.so.1 is needed by cpp-4.4.4-13.el6.i686
libppl.so.7 is needed by cloog-ppl-0.15.7-1.2.el6.i686
libppl_c.so.2 is needed by cloog-ppl-0.15.7-1.2.el6.i686
是缺了這兩個包。
mpfr-2.4.1-6.el6.x86_64.rpm
ppl-0.10.2-11.el6.x86_64.rpm
若再安裝gcc-4.4.7-3.el6.x86_64.rpm再次包如下問題:
說明:
[root@localhost oracledepents]# rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm
warning: cloog-ppl-0.15.7-1.2.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ? ? ? ? ? ? ? ?########################################### [100%]
? ?1:cloog-ppl ? ? ? ? ? ? ?########################################### [100%]
[root@localhost oracledepents]#?
再次安裝cpp-4.4.7-4.el6.x86_64.rpm,發現安裝上了:
[root@localhost oracledepents]# rpm -ivh cpp-4.4.7-4.el6.x86_64.rpm?
warning: cpp-4.4.7-4.el6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ? ? ? ? ? ? ? ?########################################### [100%]
? ?1:cpp ? ? ? ? ? ? ? ? ? ?########################################### [100%]
如果安裝進展到95%,發現報類似如下錯誤:
進入Detail中的提示的log文件中看一下,可能是你已經裝的jdk版本導致的。log日志文件的內容如下:
將你在/etc/profie中配置的jdk參數注釋掉:
類似:
然后執行:source /etc/profie命令,接著可以執行到下面的界面中:
O對用戶進行管理(放開scott用戶,并將這兩個用戶的密碼設置成123456):
點擊OK
P執行配置腳本,以超級管理運行這兩個腳本(要重新打開一個終端,然后執行下面的腳本)
運行結果:
最后點擊安裝解界面上的OK,再到close
?
14 oracle11g-啟動和關閉
A確認安裝成功
Linux下的Oracle在安裝結束后是處于運行狀態的。運行top –u oracle可以看到以Oracle用戶運行的進程。
B查看oracle的啟動進程有哪些
ps –u oracle
C在圖形化界面下,運行$ORACLE_HOME/sqldeveloper/sqldeveloper.sh可以出現Oracle自帶的免費Oracle管理客戶端SQL Developer。
D試著連接剛安裝的Oracle,連接成功。
這時需要重啟服務器,看服務器重啟后,Oracle是否可以正常啟動。以Root用戶運行reboot命令可以重啟Linux,重啟完成后,默認情況下Oracle并不像Windows中的Oracle那樣注冊成服務,隨機器一起啟動的,所以需要手動敲入命令來啟動。
啟動方式:以oracle用戶登錄運行以下語句:
(1)進入sqlplus:
sqlplus /nolog
(2)以sysdba的身份連接到數據庫,并啟動Oracle數據庫引擎:
SQL> conn /as sysdba
SQL> startup
(3)退出sqlplus,運行Listener
SQL> exit
E啟動監聽服務
$ lsnrctl start
這樣數據庫的TNS也啟動了,可以通過網絡連接數據庫了。一般情況下就啟動這兩個就夠了,如果想用Oracle提供的EM來管理Oracle的話還需要啟動EM控制臺,運行如下命令:
$ emctl start dbconsole
這樣就可以通過https://servername:1158/em/console來訪問EM控制臺了。
?
這里我在實際操作中運行sqlplus出現了錯誤,大致如下:
sqlplus / as sysdba
sqlplus: error while loadingshared libraries: /u01/app/oracle/product/11.1.0/db_1/lib/libnnz11.so: cannotrestore segment prot after reloc: Permission denied
網上也有很多人遇到了這個問題,原來是SELinux在作怪,我采用的解決辦法是禁止掉SELinux:
更改/etc/sysconfig/selinux文件的內容為SELINUX=disabled,然后重啟服務器。
好像這個辦法不是很好,也有說的解決辦法是使用chcon命令
示例: chcon -t texrel_shlib_t /usr/local/rsi/idl_6.1/bin/bin.linux.x86/*.so
另外我在啟動Listener時也報錯TNS-12555: TNS:permission denied
后來網上搜了下,發現是oracle用戶就無法進入/var/tmp/.oracle文件夾,方法很簡單,執行:chmod 777 /var/tmp/.oracle 之后就ok了.
還有,我在啟動EM控制臺的時候又遇到了錯誤:Environment variable ORACLE_UNQNAME not defined. Please setORACLE_UNQNAME to database unique name.
設置了這個變量后(運行export ORACLE_UNQNAME=xxxx實例名)后,再啟動EM控制臺,又出現了新的錯誤:OC4JConfiguration issue./u01/app/oracle/product/11.2.0/db_1/oc4j/j2ee/OC4J_DBConsole_xxxx not found.沒有這個文件?去查了一下,確實是沒有這樣一個文件存在,怎么辦呢?其實很簡單,
運行:
emca -config dbcontrol db
根據向導重新配置一下就可以了。
?
F配置Oracle為開機自啟動
雖然說Oracle作為服務器不會經常關機,但是偶爾重啟一下,每次都要去手動啟動Oracle還是太麻煩了,希望的是能夠像在Windows中一樣,每次開機的時候自動啟動Oracle,只需要將Oracle配置為Linux的服務就可以了。操作如下:
1,以root用戶建立/etc/rc.d/init.d/oracle11g腳本文件,內容如下(環境變量設置根據實際情況進行修改):
#!/bin/bash
#
# chkconfig: 35 95 1
# description: init script to start/stop oracle database 11g, TNS listener, EM
#
#
#
# match these values to your environment:
ORACLE_BASE=/home/oracle_11/app
ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/db_1
ORACLE_SID=BRDWDEV
ORACLE_UNQNAME=BRDWDEV
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
LANG=C
export ORACLE_BASE ORACLE_HOME ORACLE_SIDORACLE_UNQNAME PATH LD_LIBRARY_PATH LANG
# see how we are called:
case $1 in
start)
su - oracle<<EOO
lsnrctl start
sqlplus /nolog<<EOS
connect / as sysdba
startup
EOS
emctl start dbconsole
EOO
;;
stop)
su - oracle<<EOO
lsnrctl stop
sqlplus /nolog<<EOS
connect / as sysdba
shutdown immediate
EOS
emctl stop dbconsole
EOO
;;
*)
echo "Usage: $0 {start|stop}"
;;
esac
2,以root用戶執行以下命令
chmod 755 /etc/rc.d/init.d/oracle11g
chkconfig --add oracle11g
3,重啟服務
service oracle11g stop
service oracle11g start
這樣在開關機的時候oracle自動啟動和停止。
另外,還有說,需要修改/etc/oratab這個文件,將最后的N改為Y,如下:
xxxxTEST:/home/oracle_11/app/oracle/product/11.2.0/db_1:Y
最后,我們要測試一下這個自啟動是否真的有效,重啟一下服務器吧,過幾分鐘后,可以看到客戶端可以正常連接到Oracle了。Oracle環境配置成功!
?
?
此外還有:
/home/oracle_11/app/oracle/product/11.2.0/db_1/network/admin/ tnsnames.ora
# tnsnames.ora Network ConfigurationFile: /home/oracle_11/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configurationtools.
?
ORCL=(
????DESCRIPTION =
???????(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.6.14)(PORT=1521))
???????(CONNECT_DATA =
?????????(SERVER = SHARED)
?????????(SERVICE_NAME = orcl)
???????)
????)?
?
總結
以上是生活随笔為你收集整理的Redhat linux下安装oracle11r2手册+截图_toto_V1.0的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1.VMwareTools的安装,vmw
- 下一篇: linux 其他常用命令