初學安裝oracle全部過程圖文教程
一、配置基本環境
1.創建oracle數據庫需要的組和用戶
#groupadd oinstall
#groupadd dba
#useradd –g oinstall –G dba –d /home/oracle –m –r oracle
2.給oracle密碼
#passwd oracle
new unix password: oracle
3.編輯oracle用戶的環境變量.bash_profile
#vi .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
########## Add the following a few lines ##########
ORACLE_BASE=/u01/oracle
ORACLE_HOME=/u01/oracle/product/10.2.0/db_1
ORACLE_SID=shzq
LD_LIBRARY_PATH=$ORACLE_HOME/lib:.
PATH=$PATH:$ORACLE_HOME/bin:.
export NLS_LANG=American_america.ZHS16GBK
export PATH
export ORACLE_BASE ORACLE_SID ORACLE_HOME LD_LIBRARY_PATH
4.創建數據文件存儲目錄并給予相應權限
#mkdir /u0{1,2,3}
#chmod -R 775 /u0{1,2,3}
#chown -R oracle:oinstall /u0{1,2,3}
5.增加相應的系統參數配置
//以root用戶編輯/etc/sysctl.conf文件,增加
//如果在安裝的時候出現系統文件認證文件不過,
//修改以下數字的大小與之對應
================================
kernel.shmall = 2097152
sharemem limits to 8G
kernel.shmmax = 4294967296
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.wmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_max = 262144
================================
//執行,使設置立即生效
#/sbin/sysctl -p
6.文件數和安全設置
#vi /etc/security/limits.conf
//增加以下內容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
#vi /etc/pam.d/login
//增加以下內容
session required /lib/security/pam_limits.so
-----------------------------------------------------------------------------------------
7.建立文件安裝源目錄
//使用oracle賬戶登錄,執行
#cd /u03
#mkdir software
//將oracle 安裝包上傳到software中
//查看安裝包軟件權限是不是為 755,
//并屬于oracle:oinstall
8.修改hosts文件和主機名
#vi /etc/hosts
192.168.1.11 oracle10g
#hostname oracle10g
9.安裝包和編譯環境
#yum -yt groupinstall "Developement Tools" "Development Libraries"
# yum localinstall *.rpm 以下N個包,當然要區分64bit和32bit(不解釋)
compat-libstdc++-33-3.2.3-61.x86_64.rpm
gcc-4.1.2-46.el5.x86_64.rpm
gcc-c++-4.1.2-46.el5.x86_64.rpm
glibc-devel-2.5-42.i386.rpm
glibc-devel-2.5-42.x86_64.rpm
glibc-headers-2.5-42.x86_64.rpm
kernel-headers-2.6.18-164.el5.x86_64.rpm
libgomp-4.4.0-6.el5.x86_64.rpm
libstdc++-devel-4.1.2-46.el5.x86_64.rpm
libXau-devel-1.0.1-3.1.i386.rpm
libXau-devel-1.0.1-3.1.x86_64.rpm
libXp-1.0.0-8.1.el5.i386.rpm
libXp-1.0.0-8.1.el5.x86_64.rpm
libXp-devel-1.0.0-8.1.el5.i386.rpm
libXp-devel-1.0.0-8.1.el5.x86_64.rpm
----------------------------------------------------
//接下來就是安裝oracle數據庫了,在排除N個錯誤后
//恭喜你OK了!
10.給oracle創建監聽
$netca
11.創建數據庫
$dbca
如果你不能正常啟動oracle,那么向下看!
-----------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
二、oracle安裝排錯
1.錯誤提示
sga size can not be greater than maxmum shared memory segment size ,refer to oracle installation guide to configure your operating system kernel parameters
不能共享內存段尺寸,請參閱甲骨文安裝指南設置你的操作系統內核的參數
在調整sysctl.conf后導致,參數設置和物理內存不一致的情況!(參考新增的sysctl.conf參數)
2.什么是oracle的 SID號
是一個數據庫的唯一標識符!是建立一個數據庫時系統自動賦予的一個初始ID,
SID主要用于在一些DBA操作以及與操作系統交互,從操作系統的角度訪問實例名,必須通過ORACLE_SID
3.ORA-27102: out of memory
OS:CentOS5.4 1G內存
說明:一個參數的設置的不準確將會使oracle安裝前功盡棄!!!
所以,從www獲得文檔不要照抄照搬,否則就必死無疑
/etc/sysctl.conf的shmall
//shmall這個參數設置的值太小就會報ORA-27102: out of memory
//對于32位系統,一頁=4k,也就是4096字節。
kernel.shmall = 2097152 就是 2097152*4k/1024/1024 = 8G 就是說可用共享內存一共 8G
//設置參考
kernel.shmall = 2097152 ---內存8G
kernel.shmall = 4194304 ---內存16G
kernel.shmall = 8388608 ---內存32G
// 每個參數值做個簡要的解釋和說明。
(1)shmmax:該參數定義了共享內存段的最大尺寸(以字節為單位)。缺省為32M,oracle 通常將其設置為2G。
(2)shmmni:這個內核參數用于設置系統范圍內共享內存段的最大數量。該參數的默認值是 4096 ,通常不需要更改。
(3)shmall:該參數表示系統一次可以使用的共享內存總量(以頁為單位)。缺省值就是2097152.通常不需要修改。
(4)sem:該參數表示設置的信號量。
(5)file-max:該參數表示文件句柄的最大數量。文件句柄設置表示在linux系統中可以打開的文件數量。
# /sbin/sysctl -p
-----------------------------------------------------------------------------------------
4.oracle數據庫的network配置參考(見附件)
A:listener.ora
# listener.ora Network Configuration File: /u01/oracle/product/10.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.