/dev/shm 对 Oracle 11g 有什么影响?
ORACLE从11g版本开始引入了自动内存管理(Automatic Memory Management)功能。该功能需要更多的共享内存(/dev/shm),因此如果决定应用该功能,必须确保共享内存大于ORACLE中初始化参数MEMORY_MAX_TARGET和MEMORY_TARGET的值(特别提醒,这两个参数是自动内存管理功能对应的初始化参数)。下面小编就来解释一下/dev/shm对Oracle 11g有什么影响?
【/dev/shm对Oracle 11g有什么影响
如果在初始化参数中设置了MEMORY_MAX_TARGET和如果MEMORY_TARGET的两个参数是非零并且不符合系统共享内存,ORA-00845: MEMORY_TARGET not support on this system错误将在ORACLE数据库启动时触发。
Linux版本的Oracle 11g修改MEMORY_TARGET或SGA_TARGET后启动时可能会报错:
SQL>立即关闭
数据库已关闭。
【SQL>启动
【ORA-00845: MEMORY_TARGET not support on this system
【数据库的alert日志中会报以下错误:
启动 ORACLE 实例(正常)
警告:您正在尝试使用 MEMORY_TARGET 功能。此功能要求 /dev/shm 文件系统挂载至少 10536091648 字节。 /dev/shm 未安装或安装时可用空间小于此大小。请修复此问题,以便 MEMORY_TARGET 可以按预期工作。当前可用的是 8589852672,已使用的是 81920 字节。
memory_target 需要更大的 /dev/shm
问题非常明显:它因为/dev/shm的可用空间(不是shm的总大小)小于参数文件中设置的MEMORY_TARGET值。
解决办法是增大/dev/shm或者减小MEMORY_TARGET。下面通过增加/dev/shm的方式解决:
/dev/shm对Oracle 11g有什么影响?
修改前:
osedb01:~ # cat /etc/fstab | grep shm
shm /dev/shm tmpfs size=11g 0 0
osedb01:~ # df -h /dev/shm
已使用的文件系统大小 可用% Mounted on
MEMORY_TARGET设置为10G,/dev/shm的可用空间只有4.5G。 修改 /dev/shm 大小: osedb01:~ # cat /etc/fstab | grep shm shm /dev/shm tmpfs size=18g 0 0 修改后需要重新挂载/dev/shm才能生效: osedb01 :~ # mount -o remount /dev/shm osedb01: ~ # df -h /dev/shm 使用的文件系统大小 Avail Use% Mounted on shm 18G 6.5G 12G 36% /dev/shm 再次重启数据库,正常!! 附:系统重启后/dev/shm中的数据会被清除,请注意! 正在阅读以上内容对您有帮助吗?如果您想了解更多相关知识或阅读更多相关文章,请关注行业资讯频道。感谢您的支持。
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > /dev/shm 对 Oracle 11g 有什么影响?