一、描述
需要在redhat7.4版本上面安装11g版本oracle数据库
遇见问题:
1、裸盘处理
ASM能识别的裸盘的容量不能大于2048G,对于一个LUN大于2048G的,需要使用LVM进行切割。
①计算需要划分的数量以及大小
fdisk -l 查看一个磁盘的大小,例如我这边是11520.6GB
每个LVM的大小:
11520.6*1000*1000*1000/(1024*1024*1024)=10729.3
10729/6=1788.2G(这里得出大小约等于1788.2,可以稍微小一点点,防止最后一块空间不够,这里选取1788G大小)
②创建pv、vg、lv (这里以sdb举例)
pvcreate /dev/sdb
vgcreate -s 256m vg1 /dev/sdb
lvcreate -n lv1 -L 1788g vg1
lvcreate -n lv1 -L 1788g vg2
.....
③创建RAW裸设备
raw /dev/raw/raw11 /dev/vg1/lv1
raw /dev/raw/raw12 /dev/vg1/lv2
.....
④给裸设备设置权限
chown -R grid:oinstall /dev/raw/raw11
chomod -R 660 /dev/raw/raw11
.....
2、grid安装报错问题
(1)vnc连接之后无显示,蓝屏
解决方法:
检查是否安装了图形界面。检查出并未安装GUI图形化界面。
配置一个redhat7.4的yum源,执行下面命令安装:
#yum groupinstall "Server with GUI"
安装成功之后可以正常显示
(2)执行./runInstaller 之后报错DISPLAP not set
解决方法:
查看vnc链接的是哪个连接号(如我的是1),并设置:
#export DISPLAY=localhost:1
# xhost+ 显示access control disabled, clients can connect from any host表示成功
然后再次执行./runInstaller可正常弹出弹窗
(3)在进行安装流程时,弹窗无法点击:
解决方法:原因是jre的兼容问题,指定jre打开
./runInstaller -jreLoc /etc/alternatives/jre_1.8.0
这样打开能正常显示
(4)安装前环境检查swap交换分区需要大于16G的警告
解决方法:扩展swap分区
#free -g 查看目前swap分区大小,计算需要添加的分区大小
创建16G大小的交换分区:
dd if=/dev/zero of=/home/swap bs=1024M count=16 #创建16Gswap空间
/sbin/swapon /home/swap #指定分区类型为swap
/sbin/swapon /home/swap #使分区有效
/etc/fstab加入自动挂载:
/home/swap swap swap defaults 0 0
(5) 执行root.sh报错ohasd failed to start:
报错原因是
redhat7中默认已经使用systemctl来启动服务,而11g中还是使用的init来启动服务,所以要新建ohas.service
在RHEL 7中ohasd需要被设置为一个服务,在运行脚本root.sh之前。
步骤如下:
①. 以root用户创建服务文件
#touch /usr/lib/systemd/system/ohas.service
#chmod 777 /usr/lib/systemd/system/ohas.service
②. 将以下内容添加到新创建的ohas.service文件中
# cat /usr/lib/systemd/system/ohas.service
[Unit]
Description=Oracle High Availability Services
After=syslog.target
[Service]
ExecStart=/etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple
Restart=always
[Install]
WantedBy=multi-user.target
③. 以root用户运行下面的命令
systemctl daemon-reload
systemctl enable ohas.service
systemctl start ohas.service
④. 查看运行状态
# systemctl status ohas.service
显示active就是正常
(6)删除上次root.sh注册的信息报错:
解决方法:系统执行安装 yum install perl-Env
(7)生成ASM报错ins-20802,ora-15018和ora-15020
解决方法:原因应该是裸盘重复,重新检查裸盘是否有多的
#ll /dev/raw/raw*
我的服务器在检查的时候看见多出不是我创建的raw设备,所以我将除了rawctl的多出的raw删除,创建需要的raw,检查正常之后重新安装之后正常生成ASM。
3、安装数据库实例dbca报错ora-27102
解决方法:设置环境/etc/sysctl.conf的kernel.shmall和kernel.shmmax参数大小
按实际机器的内存大小进行计算得出结果: