Oracle是殷墟(Yin Xu)出土的甲骨文(oracle bone inscriptions)的英文翻译的第一个单词,在英语里是“神谕”的意思。Oracle是世界领先的信息管理软件开发商,因其复杂的关系数据库产品而闻名。Oracle数据库产品为财富排行榜上的前1000家公司所采用,许多大型网站也选用了Oracle系统。
v1:http://blog.itman.cc/archives/centos-oracle11gr2-v1/
v2:http://blog.itman.cc/archives/centos-oracle11gr2-v2/
2011.3.9 更新说明:
* 服务与数据库分开安装,安装的时候可选数据库例子。
安装Oracle 11gR2数据库软件之前,要做相关的准备工作,下面操作基于CentOS5上的准备工作。
1、检查硬件条件:上面提到的相关配置,内存、交换空间、磁盘空间、临时目录空间等。
在很多运营环境下,为了提高性能与数据的安全性,系统盘与数据盘都是分开的,因此我们还要为新的磁盘进行一些准备工作。
1)创建分区
fdisk /dev/sdb
2)使新创建的分区在系统中立即生效
partprobe
3)格式化新创建的分区
mkfs -t ext3 /dev/sdb1
4)使新创建的分区挂载/oradata目录下
mkdir /oradata mount /dev/sdb1 /oradata
5)让挂载在系统重启后仍然有效
vi /etc/fstab
在最后一行添加:
/dev/sdb1 /oradata ext3 defaults 0 0
6)检查磁盘空间
df -m
检查内存和交换空间
free
2、检查相关的系统包:
检查下面的软件包是否安装,这些包是安装Oracle 11gR2 数据库软件所依赖的。以root帐号通过下面命令来检查
yum install -y binutils compat-db control-center gcc gcc-c++ glibc glibc-common yum install -y libstdc++ libstdc++-devel make sysstat xscreensaver libaio openmotif21 yum install -y unixODBC unixODBC-devel pdksh libaio-devel compat-libstdc++-33
3、规划磁盘空间和装载点 /u01
mkdir /u01
4、建立相关用户组和用户组
安装Oracle 11gR2 数据库软件,必须建立两个用户组oinstall、dba和一个安装用户,这个安装用户拥有安装后的Oracle
软件和数据库文件,以root帐号通过下面命令完成
groupadd oinstall groupadd dba useradd oracle -g oinstall -G dba -d /u01/oracle -m passwd oracle
5、设置环境变量:
$ORACLE_HOME是oracle的根目录,$ORACLE_BASE是数据库安装目录
以oracle用户修改/u01/oracle或/home/oracle下的.bash_profile文件,添加上述环境变量内容如下:
vi /u01/oracle/.bash_profile
1 2 3 4 5 6 7 |
ORACLE_BASE=/u01/app/oracle ORACLE_HOME=/u01/app/oracle/product/11.2 ORACLE_SID=itman export ORACLE_BASE ORACLE_HOME ORACLE_SID #export DISPLAY=127.0.0.1:0.0 export EMLOCALHOST=rhlinux export PATH=$ORACLE_HOME/bin:$PATH |
上面内容中EMLOCALHOST不是安装所需要的,是为了解决服务器修改IP后,db console不能启动的问题。
6、设置内核参数
内核参数主要是设置一些ORACLE使用的共享内存现在和其他限制, 以root用户修改/etc/sysctl.conf文件,加如下面内容
vi /etc/sysctl.conf
1 2 3 4 5 6 7 8 9 10 11 |
#kernel.shmall = 2097152 kernel.shmmax = 2147483648 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 6815744 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 1024 65000 net.core.wmem_max = 41934304 net.core.wmem_default = 1048576 net.core.rmem_max = 41934304 net.core.rmem_default = 262144 |
其中各参数的含义如下:
shmmax:该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低了,通
常将其设置为2G
shmmni:这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096 。通常不需要更改。
shmall:该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,通常不需要修改。
sem:该参数表示设置的信号量。
file-max:该参数表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量。
修改后运行
sysctl -p
使修改内容生效。
7、提高 Oracle 用户的 shell 限制
文本编辑器下面列出的行添加到 /etc/security/limits.conf、/etc/pam.d/login
vi /etc/security/limits.conf
1 2 3 4 |
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
8、创建安装目录
以root用户执行
mkdir -p /u01/app/oracle chown -R oracle:oinstall /u01 chown -R oracle.oinstall /oradata
9、安装Oracle服务
以oracle用户执行
xhost + ./runInstall
使用root权限,根据提示执行(遇到选项,直接回车默认即可):
/u01/app/oraInventory/orainstRoot.sh /u01/app/oracle/product/11.2/root.sh
至此,Oracle服务已安装成功。
10、配置网络监听(使用默认配置即可)
netca
11、创建数据库
dbca
12、以oracle用户执行软件的卸载工作
以oracle用户执行在图形界面上执行
/u01/app/oracle/product/11.2/oui/bin/runInstaller
转自:http://blog.itman.cc/archives/centos-oracle11gr2-v3/