CentOS:Oracle安装

准备工作

修改系统版本名称

vi /etc/redhat-release

#将CentOS release 6.3 (Final)这行注释掉,加上下面的
Red Hat Enterprise Linux 6

修改主机名

#查看主机名:
hostname

#修改主机名为需要的主机名称
vim /etc/hosts

#修改完成后重启或者直接修改主机名称生效
hostname lee-PC

安装依赖项:

yum install \
binutils \
compat-libcap1 \
compat-libstdc++-33 \
compat-libstdc++-33*.i686 \
elfutils-libelf-devel \
gcc \
gcc-c++ \
glibc*.i686 \
glibc \
glibc-devel \
glibc-devel*.i686 \
ksh \
libgcc*.i686 \
libgcc \
libstdc++ \
libstdc++*.i686 \
libstdc++-devel \
libstdc++-devel*.i686 \
libaio \
libaio*.i686 \
libaio-devel \
libaio-devel*.i686 \
make \
sysstat \
unixODBC \
unixODBC*.i686 \
unixODBC-devel \
unixODBC-devel*.i686 \
 libXp

建立用户和组:

groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba,oper oracle
echo "oracle" | passwd --stdin oracle

#查看一下
id oracle
#大致这样子:
uid=501(oracle) gid=501(oinstall) 组=501(oinstall),502(dba),503(oper)

安装oracle

建立安装目录(OFA结构):

mkdir -p /u01/app/oracle/product/11.2.0/db_1
cd /u01/app
mkdir oraInventory
chown -R oracle:oinstall /u01/app/oracle(oraInventory)
chmod -R 775 /u01/app/oracle(oraInventory)

修改内核参数

vi /etc/sysctl.conf

#改为以下值
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 8388608
kernel.shmmax = 17179869184
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576

#其中计算公式如下:
#Shmall(全部共享内存)=32*1024*1024/4=8388608(页)
#Shmmax(最大共享内存)=32/2*1024*1024*1024=17179869184
#最需要注意的是shmmax 这个参数,最小500M,最大比内存少一个字节就可以了,推荐比内存的一半大一点点
#还有特别注意sysctl.conf中shmmax ,shmall 已经有了,要注释掉

#改好后,使之生效
sysctl -p

修改文件限制

vim /etc/security/limits.conf

#增加以下内容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240

编辑/etc/pam.d/login

vi /etc/pam.d/login

#将以下内容加到最后(注意64位系统为lib64)
session required /lib64/security/pam_limits.so
session required pam_limits.so

修改/etc/profile

vi /etc/profile

#将以下代码新增到profile档案中。在 pathmunge() {…}之后即可。
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi

修改oracle用户环境变量

vim ~oracle/.bash_profile

#修改以下内容

ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
ORACLE_SID=ORCL
export ORACLE_BASE ORACLE_HOME ORACLE_SID
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin

export PATH

安装

下载的oracle文件, 到/u01/app/oracle。切换到oracle用户进行安装(使用图形界面)

xhost +

su - oracle
cd /u01/app/oracle
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip

#中文会乱码
unset LANG LANGUAGE

cd /u01/app/oracle/databse
./runInstaller

后面的安装过程基本简单,按照向导即可,检测失败全部忽略掉。安装完成后,需要以root身份执行两个脚本(安装完后有提示)

/u01/app/Oracle/oraInventory/orainstRoot.sh
/u01/app/oracle/product/10.2.0/db_1/root.sh

启动Oracle

以oracle用户启动数据库

lsnrctl start
sqlplus /nolog
conn / as sysdba
startup

若启动报“找不到initORCL.ora”之类的错误 ,可以将默认的备份文件拷贝到提示目录即可。

备份文件位置:

/u01/app/oracle/admin/orcl/pfile

若报“ORA-00845: MEMORY_TARGET not supported on this system”,则

vim /etc/fstab
#修改成下列形式(添加size=4G)
tmpfs /dev/shm tmpfs defaults,size=4G 0 0

#重启系统,或者,重新挂载:
umount /dev/shm
mount /dev/shm
df -k /dev/shm
posted @ 2013-03-25 23:21  红尘一人  阅读(175)  评论(0)    收藏  举报