VMware 12
OS:OracleLinux5.4(Enterprise-R5-U4-Server-i386-dvd)
DB:Oracle 11.2.0.3
安装方式:固定IP后通过secureCRT远程访问,借助Xmanager-Passive实现在本机上图形化安装相关软件。
以上为相关环境以及所需软件。
本文为不完全铲掉Oracle后的Oracle11g+ASM安装。
之所以会有这么浮夸的实验是因为上的OCP课,老师突然兴起,打算额外教导我们安装ASM,于是经历了一次不完全铲除数据库经历,特此记录。
网络技术文档多坑,鬼知道本文会带你进入什么坑,如进行参考请谨慎执行相关命令,毕竟我也才刚刚入行。
1. 数据库和用户删除
#先关闭数据库和监听。 [root@oracle ~]# rm -rf /u01 [root@ oracle etc]# rm -rf /etc/ora* [root@oracle ~]# userdel -r oracle #第一步中的/u01为数据库安装目录 #第二步是删除oratab和oraInst.loc #第三步是删除oracle用户,顺便删除家目录
第二部中两个文件的介绍
2. /tmp文件下相关数据删除
oracle安装时会在tmp目录下写入安装日志等信息
不进行删除时,会出现以下报错
3. 关闭虚拟机,新增磁盘为ASM做准备
编辑虚拟机设置,添加硬盘,默认配置,新增八个硬盘,每个大小为2G,图中已新增完毕,新增完成后开机。
4. OS系统其它设置
由于系统已经安装过数据库了,此处不做其它系统参数设置的介绍,只需要新增以下内容
vi /etc/security/limits.conf grid soft nproc 16384 grid hard nproc 16384 grid soft nofile 65536 grid hard nofile 65536 grid soft stack 10240 grid hard stack 10240
5. grid用户和oracle用户及相关用户组创建
groupadd -g 1002 oper groupadd -g 1003 backupdba groupadd -g 1004 dgdba groupadd -g 1005 kmdba groupadd -g 1006 asmdba groupadd -g 1007 asmoper groupadd -g 1008 asmadmin useradd -u 1101 -g oinstall -G dba,asmadmin,asmdba,asmoper grid useradd -u 1100 -g oinstall -G dba,oper,backupdba,dgdba,kmdba,asmdba,asmadmin oracle
创建完成后
可用passwd grid和passwd oracle进行用户密码修改。
6. 裸设备初始化
(1) 查看新增磁盘,可见新增的8个磁盘
(2) 对各个磁盘进行格式化
(3) 格式化完毕
(4) 裸设备绑定
raw /dev/raw/raw1 /dev/sdb1 raw /dev/raw/raw2 /dev/sdc1 raw /dev/raw/raw3 /dev/sdd1 raw /dev/raw/raw4 /dev/sde1 raw /dev/raw/raw5 /dev/sdf1 raw /dev/raw/raw6 /dev/sdg1 raw /dev/raw/raw7 /dev/sdh1 raw /dev/raw/raw8 /dev/sdi1
(5) 将裸设备授权给grid用户
chown grid:asmadmin /dev/raw/raw1 chown grid:asmadmin /dev/raw/raw2 chown grid:asmadmin /dev/raw/raw3 chown grid:asmadmin /dev/raw/raw4 chown grid:asmadmin /dev/raw/raw5 chown grid:asmadmin /dev/raw/raw6 chown grid:asmadmin /dev/raw/raw7 chown grid:asmadmin /dev/raw/raw8
(6) 更改裸设备的读写权限
chmod 660 /dev/raw/raw1 chmod 660 /dev/raw/raw2 chmod 660 /dev/raw/raw3 chmod 660 /dev/raw/raw4 chmod 660 /dev/raw/raw5 chmod 660 /dev/raw/raw6 chmod 660 /dev/raw/raw7 chmod 660 /dev/raw/raw8
(7) 避免开机后重复进行以上工作,可在/etc/rc.local中将新增以下内容:
raw /dev/raw/raw1 /dev/sdb1 raw /dev/raw/raw2 /dev/sdc1 raw /dev/raw/raw3 /dev/sdd1 raw /dev/raw/raw4 /dev/sde1 raw /dev/raw/raw5 /dev/sdf1 raw /dev/raw/raw6 /dev/sdg1 raw /dev/raw/raw7 /dev/sdh1 raw /dev/raw/raw8 /dev/sdi1 chown grid:asmadmin /dev/raw/raw1 chown grid:asmadmin /dev/raw/raw2 chown grid:asmadmin /dev/raw/raw3 chown grid:asmadmin /dev/raw/raw4 chown grid:asmadmin /dev/raw/raw5 chown grid:asmadmin /dev/raw/raw6 chown grid:asmadmin /dev/raw/raw7 chown grid:asmadmin /dev/raw/raw8 chmod 660 /dev/raw/raw1 chmod 660 /dev/raw/raw2 chmod 660 /dev/raw/raw3 chmod 660 /dev/raw/raw4 chmod 660 /dev/raw/raw5 chmod 660 /dev/raw/raw6 chmod 660 /dev/raw/raw7 chmod 660 /dev/raw/raw8
7. 设置grid用户环境信息
su - grid vi .bash_profile export ORACLE_SID=+ASM export ORACLE_BASE=/u01/app/grid export ORACLE_HOME=/u01/app/grid/11.2.0 PATH=$PATH:$HOME/bin export PATH=/usr/sbin:$PATH:$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib export TEMP=/tmp export TMP=/tmp export TMPDIR=/tmp umask 022
#使配置文件生效
source .bash_profile
安装过程中老师在此处蜜汁多了个/,安装了ASM后,所有后台进程都起来了,然而asmcmd只能链接到一个空实例。
8. 设置oracle用户环境信息
su - oracle vi .bash_profile export ORACLE_SID=orcl export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1 export ORACLE_TERM=xterm export PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib ulimit -u 16384 -n 65536 umask 022
#使配置文件生效
source .bash_profile
9. 上传安装介质
使用secureCRT的SFTP上传文件到虚拟机,命令前加l对本机进行操作,使用put上传文件。图为已经上传后的情形。
在进入相关的目录后,执行以下命令上传文件:
put p10404530_112030_LINUX_1of7.zip
put p10404530_112030_LINUX_2of7.zip
put p10404530_112030_LINUX_3of7.zip
10. grid用户下安装grid软件和创建asm
grid用户解压p10404530_112030_LINUX_3of7.zip
打开软件Xmanager-Passive
下图/software/grid为解压p10404530_112030_LINUX_3of7.zip后的文件
[grid@oracle ~]$ export DISPLAY=172.32.11.177:0.0
DISPLAY后面的等号两边不留空格,否则如下图,IP为本机IP
(1)忽略软件更新
(2)选择此项可顺道创建ASM
(3)新增一个中文的
(4)此处创建ASM的DATA磁盘
(5)密码设置因人而异,此处实验为方便
(6)密码太过简单,不管,反正实验而已
(7)相关用户组,从配置文件.bash_profile中获取
(8)同从配置文件获取,文件已创建好
(9)创建oraInventory目录
(10)相关配置信息
(11)安装过程需要root用户运行以下两个脚本:
(12)安装成功
11. oracle用户下安装oracle软件
oracle用户解压p10404530_112030_LINUX_1of7.zip和p10404530_112030_LINUX_2of7.zip
下图/software/database为解压后的文件
[oracle@oracle ~]$ export DISPLAY=172.32.11.177:0.0
(1)不接受更新邮件
(2)忽略软件更新
(3)安装数据库软件
(4)单机数据库安装
(5)中文保底
(6)默认即可
(7)已创建相关文件和赋予相关权限
(8)同用户配置文件.bash_profile
(9)检查相关包是否安装
(10)总体安装配置预览
(11)开始安装,如果出错,请在处理完出错后,记得有retry选项,万恶的oracle安装出错,万恶的我忘记了这个选项,后面就悲剧了
(12)同需用root用户执行相关脚本
(13)安装成功
12. 使用dbca创建数据库orcl
[oracle@oracle ~]$ dbca
步骤上基本都默认,与文件系统的数据库一致,介于我太懒,就至上传相关图片不做其它说明了。
此处与文件系统不一样,此处选择ASM,其他与普通数据库一样。
可选项
附录
安装过程中遇到最多的问题就是,该用户对该目录的权限不足。
熟悉chmod和chown很重要。