没用asmlib,使用udev绑定裸设备
1. 问题一rule文件发生变化
解决: 参照如下格式编辑或新建文件/etc/udev/rules.d/99-Oracle-asmdevices.rules
KERNEL=="sd*", ENV{ID_SERIAL}=="36d4ae5207510d4001bf578af7b2e2e59",SYMLINK+="asm_ocr", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*", ENV{ID_SERIAL}=="36d4ae5207510d40017eef6bf0be1278d",SYMLINK+="asm_data", OWNER="grid", GROUP="asmadmin", MODE="0660"
其中ID查询命令如下:
[root@r5teststandy ~]# /usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/sdb1
36d4ae5207510d40017eef6bf0be1278d
使用命令udevadm生效
udevadm control --reload-rules
udevadm trigger
2. 安装grid提升缺少包compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm和pdksh
处理:
光盘中无compat-libstdc++,需下载并安装此rpm, pdksh这个我直接忽略了
3. 安装grid中执行root.sh报错
在Adding Clusterware entries to inittab后等待许久,然后提示 ohasd failed to start
解决: 参照OL7文档,OL7中开始使用systemd来启动服务
vi /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
systemctl daemon-reload
systemctl enable ohas.service
systemctl start ohas.service
systemctl status ohas.service
确认服务状态为: Active: active (running)
特别注意: 在再次重新执行root.sh时,最好另外打开个连接以root登录,监视ohas.service的状态,一旦发现服务变成failed,立即再次执行
systemctl daemon-reload
systemctl enable ohas.service
systemctl enable ohas.service
4. 因为上面执行root.sh执行出错,需要重新安装下crs,但执行 ./rootcrs.pl -deconfig -force 报错
Can't locate Env.pm in @INC (@INC contains: ...
解决:
下载安装rpm-vih perl-Switch-2.16-7.el7.noarch.rpm 包
或
cp -p /u01/app/11.2.0/grid/perl/lib/5.10.0/Env.pm /usr/lib64/perl5/vendor_perl/
5. 安装数据库过程中出现错误
Error in invoking target 'agent nmhs' of makefile '/home/oracle_11/app/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk'.
解决方法:
oracle用户登录
vi $ORACLE_HOME/sysman/lib/ins_emagent.mk找到该行
$(MK_EMAGENT_NMECTL)
改为:
$(MK_EMAGENT_NMECTL) -lnnz11