CentOS服务器安装笔记(三)

原创
2013/03/25 15:58
阅读数 262

8 oracle安装

在数据库服务器上,进行完以上步骤后,安装oracle。安装较为复杂。

1、 修改系统版本名称

Oracle不识别CentOS,因此改为RH

vi /etc/redhat-release

将CentOS release 6.3 (Final)这行注释掉,加上下面的

Red Hat Enterprise Linux 6

2、 安装依赖项

执行以下语句或者使用附件/4-oracle/install.sh进行安装

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

3、 安装libXp

yum -y install libXp

4、 建立用户和组

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)

5、 建立安装目录(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)

6、 修改内核参数

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

7、 修改文件限制

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

8、 编辑/etc/pam.d/login

vi /etc/pam.d/login

将以下内容加到最后(注意64位系统为lib64)

session required /lib64/security/pam_limits.so

session required pam_limits.so

9、 修改/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

10、 修改oracle用户环境变量

vi ~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

11、 安装

下载的oracle文件(已下载至附件/4-oracle)到/u01/app/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

后面的安装过程基本简单,按照向导即可,检测失败全部忽略掉

12、 安装完成后,需要执行两个脚本(安装完后有提示)

/u01/app/Oracle/oraInventory/orainstRoot.sh

/u01/app/oracle/product/10.2.0/db_1/root.sh

注意需要以root身份执行

13、 以上步骤后,以下命令启动数据库:

lsnrctl start

sqlplus /nolog

conn / as sysdba

startup

14、 以上步骤启动通常会失败,大意是找不到initORCL.ora ,可以将默认的备份文件拷贝到提示目录即可。

备份文件位置:

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

15、 本次在服务器上,还遇到了一个错误,提示:

ORA-00845: MEMORY_TARGET not supported on this system

解决办法:修改/etc/fstab文件,修改成下列形式(添加size=4G)

tmpfs /dev/shm tmpfs defaults,size=4G 0 0

重启系统,或者,重新挂载:

umount /dev/shm

mount /dev/shm

df -k /dev/shm

16、 至此,oracle已经顺利启动。

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部