活动预告

最近的几个技术问题总结和答疑(八)

杨建荣 2016-07-27 15:48:00

最近处理了几个网友的疑问,拿过来总结一下。


1)11gR2静默安装的校验失败

有些朋友反馈使用静默安装的时候,配置了响应文件,但是总是会校验邮箱和密码,这个地方总是过不去。根据我的以往经验,需要注意一个参数DECLINE_SECURITY_UPDATES默认是false,我们在学习测试中可以设置为true,无需输入这些信息。而这位朋友反馈的是DECLINE_SECURITY_UPDATES已经设置为了TRUE,但是还是存在问题。


输入的命令如下:


./runInstaller -silent -responsefile /home/oracle/new.rsp -ignoreSysPrereqs?


报警信息如下:


[WARNING] - My Oracle Support Username/Email Address Not Specified
然后就自动终止了安装。
而得到的响应文件的部分内容如下:

MYORACLESUPPORT_USERNAME=abc@oracle.com


MYORACLESUPPORT_PASSWORD=aaa


SECURITY_UPDATES_VIA_MYORACLESUPPORT=false


DECLINE_SECURITY_UPDATES=true


PROXY_HOST=


PROXY_PORT=


PROXY_USER=


PROXY_PWD=


PROXY_REALM=


COLLECTOR_SUPPORTHUB_URL=


oracle.installer.autoupdates.option=SKIP_UPDATES


oracle.installer.autoupdates.downloadUpdatesLoc=


AUTOUPDATES_MYORACLESUPPORT_USERNAME=abc@oracle.com


AUTOUPDATES_MYORACLESUPPORT_PASSWORD=aaa


对于这个问题我进行了复现,发现确实存在,为了提高效率,我在远程协助的情况下查看了这个问题,做了排除,发现SECURITY_UPDATES_VIA_MYORACLESUPPORT本身是没有任何值的,这个地方做了标识,触发了校验检查。


至于更多的细节,我觉得这个地方也不需要做更多的分析了,因为我们的目的就是搭建完成,不能偏移原本的重心,本末倒置。静默就是在图形的基础上简化安装的过程,但是不是“万精油“,系统安装前的检查和准备还是必须的,而安装过程中的很多设置也是自成一套体系,避免画蛇添足。



2.Hugepage无法启用的问题

Hugepage在Linux中可以算是一个标配了,在内核参数文件/etc/sysctl.conf中设置,在 2.4内核中是使用参数vm.hugetlb_pool,在2.6内核中使用vm.nr_hugepages 修改后需要使用sysctl -p使参数生效,如果是在线系统找个维护窗口再调。另外数据库开了AMM和大页也是冲突的。


这些是我碰到绝大多数的Hugepage相关的问题的处理思路,结果有个网友的问题貌似超出了这个范畴。



通过/proc/meminfo看不到任何Huge相关的配置。


而系统版本,内核版本都是在预期范围之内。使用sysctl -p设置的时候,竟然还抛出了无法识别的key,这个看起来就更加诡异了。



而对于这个问题,看来不能轻易下结论,我们得看看更多的细节了。做了更多的确认,结果如下:



发现这个配置在当前的系统内核中没有启用。


而对于这个问题,和xen的版本相关,我查到的资料,可能需要重新编译内核的这部分,http://old-list-archives.xenproject.org/archives/html/xen-devel/2008-10/msg00191.html  


而相比于重编译,可能重装系统的风险要更小些。不过经过一些讨论,发现是线上环境,还是先维持现状吧。


3.关于闪回区

问题是:请教下,我归档文件错误是不是跟db_recovery_file_size告警有关


在看到这位朋友提供的一个日志,可以明显看到闪回区的设置大小目前是1G,这个明显不够,当然我所要表达的不是这个意思。有些朋友似乎对闪回区还是存在一些顾虑,我觉得这个参数的设置还是很推荐的,首先是能够统一监控管理归档日志文件的使用情况了,个数大小都可以得到很准确的数据,系统层面就是物理文件,这个管理和磁盘空间是独立的,哪怕磁盘空间剩余1T,但是闪回区大小设置为1G,那么闪回区的可用空间就是按照1G的配置来算。需要的多就可以多补充,这个参数是可以在线修改的,而闪回区的路径的修改是需要重启实例的。


而同时我在本地生成pfile的时候,也碰到了类似的问题。


一个非常简单的操作竟然会超时


SQL> set timing on


SQL> show parameter spfile


NAME                                 TYPE        VALUE


------------------------------------ ----------- ------------------------------


spfile                               string      /U01/app/oracle/product/11.2.0.2/db_1/dbs/spfiledgtest.ora


SQL> create pfile from spfile;


^Ccreate pfile from spfile


*


ERROR at line 1:


ORA-01013: user requested cancel of current operation


Elapsed: 00:03:25.57


而问题的原因还是和闪回区大小相关,如果查看v$flash_recovery_area_usage会发现控制文件其实也是属于闪回区中的一部分。


SQL>

select *from v$flash_recovery_area_usage;


FILE_TYPE            PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES


-------------------- ------------------ ------------------------- ---------------


CONTROL FILE                          0                         0               0


REDO LOG                              0                         0               0


ARCHIVED LOG                      99.68                         0             148


BACKUP PIECE                          0                         0               0


IMAGE COPY                            0                         0               0


FLASHBACK LOG                         0                         0               0


FOREIGN ARCHIVED LOG                  0                         0               0