zoukankan      html  css  js  c++  java
  • ORA-00845 : MEMORY_TARGET not supported on this system(调大数据库内存无法启动)

    问题描述:调大数据库内存后,启动数据库报 ORA-00845 : MEMORY_TARGET not supported on this system 。

    -- 调大数据库内存后,数据库启动报错
    [root@jcdydb1 bin]# ./srvctl start database -d jcdydb
    PRCR-1079 : Failed to start resource ora.jcdydb.db
    CRS-5017: The resource action "ora.jcdydb.db start" encountered the following error:
    ORA-00845: MEMORY_TARGET not supported on this system
    . For details refer to "(:CLSN00107:)" in "/oracle/app/11.2.0/grid/log/jcdydb1/agent/crsd/oraagent_oracle//oraagent_oracle.log".

    CRS-5017: The resource action "ora.jcdydb.db start" encountered the following error:
    ORA-00845: MEMORY_TARGET not supported on this system
    . For details refer to "(:CLSN00107:)" in "/oracle/app/11.2.0/grid/log/jcdydb2/agent/crsd/oraagent_oracle//oraagent_oracle.log".

    CRS-2674: Start of 'ora.jcdydb.db' on 'jcdydb1' failed
    CRS-2674: Start of 'ora.jcdydb.db' on 'jcdydb2' failed
    CRS-2632: There are no more servers to try to place resource 'ora.jcdydb.db' on that would satisfy its placement policy

    -- 查看服务器内存,132103588k /1024/1024 = 125G
    top - 19:32:11 up 7:21, 7 users, load average: 1.13, 1.16, 1.16
    Tasks: 2089 total, 1 running, 2088 sleeping, 0 stopped, 0 zombie
    Cpu(s): 0.3%us, 0.5%sy, 0.0%ni, 99.2%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
    Mem: 132103588k total, 31130024k used, 100973564k free, 216416k buffers
    Swap: 67108856k total, 0k used, 67108856k free, 26919636k cached

    -- 查看针对数据库的内核参数,发现没有问题
    [root@jcdydb1 bin]# cat /etc/sysctl.conf
    #add for oracle 11gR2 rac
    kernel.shmmni = 4096
    kernel.shmmax = 277439000000
    kernel.shmall = 4294967296
    kernel.aio-max-nr = 1048576
    net.ipv4.ip_local_port_range = 9000 65500
    net.core.rmem_default = 262144
    net.core.rmem_max = 4194304
    net.core.wmem_default = 262144
    net.core.wmem_max = 1048576
    net.ipv4.conf.default.rp_filter = 2
    net.ipv4.conf.all.rp_filter = 2
    kernel.sem = 3010 427420 3010 142
    [root@jcdydb1 bin]#
    说明:
    kernel.shmmax 共享内存段的大小,设置大小超过SGA大小才不不会造成性能问题。
    kernel.shmall 共享内存页总数,设置大小为物理理内存大小/内存页大小。
    通过getconf命令来获取内存页大小:
    [root@rac01 ~ ]# getconf PAGE_SIZE
    4096
    [root@rac02 ~ ]# getconf PAGE_SIZE
    4096

    -- 查看 /dev/shm 大小, 发现只有内存的一半,小于数据库内存为服务器内存的80%,不符合要求。
    [root@jcdydb1 bin]# df -h
    Filesystem Size Used Avail Use% Mounted on
    /dev/mapper/osvg-lv_root
    99G 488M 93G 1% /
    /dev/sda1 504M 45M 434M 10% /boot
    /dev/mapper/osvg-lv_data
    50G 3.7G 44G 8% /data
    /dev/mapper/osvg-lv_home
    9.9G 3.9G 5.5G 42% /home
    /dev/mapper/osvg-lv_ora
    99G 12G 82G 13% /oracle
    /dev/mapper/osvg-lv_tmp
    32G 9.5G 21G 32% /tmp
    /dev/mapper/osvg-lv_usr
    20G 7.4G 12G 40% /usr
    /dev/mapper/osvg-lv_var
    9.9G 508M 8.9G 6% /var
    /data/soft/rhel-server-6.4-x86_64-dvd.iso
    3.5G 3.5G 0 100% /media/rhel64
    tmpfs 62G 0G 65G 0% /dev/shm

    说明:/dev/shm的容量默认最大为内存的一半大小,使用df -h命令可以看到。但它并不会真正的占用这块内存,
    如果/dev/shm/下没有任何文件,它占用的内存实际上就是0字节。

    -- 查看 /dev/shm 被谁占用,快速加大 /dev/shm ,确认无重要进程使用/dev/shm后,需要 kill 文件使用者。
    [root@jcdydb1 bin]# lsof /dev/shm
    COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
    pulseaudi 27716 grid mem REG 0,16 67108904 11057360 /dev/shm/pulse-shm-863193574
    gnome-ter 42214 grid mem REG 0,16 67108904 11057310 /dev/shm/pulse-shm-3660319902

    [root@jcdydb1 bin]# kill -9 27716 42214

    -- 再次查看,发现无占用。
    [root@jcdydb1 bin]# lsof /dev/shm
    [root@jcdydb1 bin]#

    -- umount /dev/shm
    [root@jcdydb1 bin]# umount /dev/shm

    -- 编辑 /etc/fstab , 加大 /dev/shm 。
    [root@jcdydb1 bin]# vi /etc/fstab 修改
    tmpfs /dev/shm tmpfs defaults,size=110G 0 0

    [root@jcdydb1 bin]# mount /dev/shm

    -- 查看 /dev/shm 大小。
    [root@jcdydb1 bin]# df -h
    Filesystem Size Used Avail Use% Mounted on
    /dev/mapper/osvg-lv_root
    99G 488M 93G 1% /
    /dev/sda1 504M 45M 434M 10% /boot
    /dev/mapper/osvg-lv_data
    50G 3.7G 44G 8% /data
    /dev/mapper/osvg-lv_home
    9.9G 3.9G 5.5G 42% /home
    /dev/mapper/osvg-lv_ora
    99G 12G 82G 13% /oracle
    /dev/mapper/osvg-lv_tmp
    32G 9.5G 21G 32% /tmp
    /dev/mapper/osvg-lv_usr
    20G 7.4G 12G 40% /usr
    /dev/mapper/osvg-lv_var
    9.9G 508M 8.9G 6% /var
    /data/soft/rhel-server-6.4-x86_64-dvd.iso
    3.5G 3.5G 0 100% /media/rhel64
    tmpfs 110G 0 110G 0% /dev/shm

    --启动数据库。
    [root@jcdydb1 bin]# ./srvctl start database -d jcdydb >成功!

  • 相关阅读:
    查询SGA,PGA pool 内存分配情况
    为2229岁的人解释一下什么叫工作
    关于log的一些脚本
    关于ARM公司的cortex系列
    git reset 小结
    git push 小结
    git push 小结
    关于ubuntu的aptget 包
    TTL接口 液晶屏 与 LVDS接口 液晶屏的 区别
    git reset 小结
  • 原文地址:https://www.cnblogs.com/andy6/p/7309270.html
Copyright © 2011-2022 走看看