`

ORA-00845: MEMORY_TARGET not supported on this system

 
阅读更多

今天晚上新装一台Oracle 11g的数据库,打算将SGA设大一点,知道 11g 中有一个新特新 MEMORY_TARGET,于是尝一下鲜,谁知报了个 ORA-00845,报错比较容易迷惑人,不借助Google真得想半天:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SQL> alter system set memory_max_target=3G scope=spfile ;
 
System altered.
 
SQL> alter system set memory_target=2G scope=spfile ;     
 
System altered.
 
SQL>
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup ;
ORA-00845: MEMORY_TARGET not supported on this system

      来自Oracle的官方解析是:

Starting with Oracle Database 11g, the Automatic Memory Management feature requires more shared memory (/dev/shm)and file descriptors. The size of the shared memory should be at least the greater of MEMORY_MAX_TARGET and MEMORY_TARGET for each Oracle instance on the computer. If MEMORY_MAX_TARGET or MEMORY_TARGET is set to a non zero value, and an incorrect size is assigned to the shared memory, it will result in an ORA-00845 error at startup.

      简单来说就是 MEMORY_MAX_TARGET 的设置不能超过 /dev/shm 的大小:

1
2
[oracle@FWDB FWDB]$ df -h | grep shm
tmpfs                 2.0G     0  2.0G   0% /dev/shm

      还真是撞到这个枪口上了:

      马上把它加大:

1
2
[root@FWDB ~]# cat /etc/fstab | grep tmpfs
tmpfs                   /dev/shm                tmpfs   defaults,size=4G 0 0

      现在可以通过重启使这个配置生效,也可以通过重新挂载来修改其大小:

1
2
3
[root@FWDB ~]# mount -o remount,size=4G /dev/shm
[root@FWDB ~]# df -h | grep shm
tmpfs                 4.0G     0  4.0G   0% /dev/shm

      再次启动数据库,没有报错了。

分享到:
评论

相关推荐

    Oracle 报错ORA-00845 MEMORY_TARGET not supported on this system

    Oracle数据库在运行过程中,经常会遇到各种错误代码,错误代码ORA-00845是其中的一个,它是指“MEMORY_TARGET not supported on this system”。这个错误一般发生在尝试在不支持MEMORY_TARGET参数的系统上设置该参数...

    memory_target 解决方案

    在上述内容中,用户遇到了“ORA-00845: MEMORY_TARGET not supported on this system”的错误信息,这通常意味着Oracle实例所在的系统无法支持`MEMORY_TARGET`特性。根据用户的描述,这个问题发生在将Oracle 11g从...

    ORA-04052p5731178_92080_WINNT.zip

    ORA-00604: 递归SQL层1出现错误 ORA-03106: 致命的双工通信协议错误 ORA-02063: 紧接着line(源于dblink) 以及 ORA-04052: 在查找远程对象时出错 ORA-00604: 递归SQL层1出现错误 ORA-03120: 双工转换例行程序:整数...

    ora-00845 ora-00845

    ORA-00845 错误是指 Oracle 数据库中的一个错误代码,该错误通常表示“MEMORY_TARGET not supported on this system”,即系统不支持 MEMORY_TARGET 参数。这通常发生在尝试在不支持该特性的旧版本操作系统或某些...

    oracle11G调整物理内存提示ORA-00845 MEMORY_TARGET

    "Oracle 11g调整物理内存提示ORA-00845 MEMORY_TARGET" Oracle 11g 中的内存自动管理机制 ===================================== Oracle 11g 中引入了一个新的内存自动管理机制,即 MEMORY_TARGET 参数,这个...

    ORA-00904: "WM_CONCAT": 标识符无效

    在Oracle数据库中,"ORA-00904"是一个常见的错误代码,它表示尝试引用一个不存在或无效的标识符。在这个场景下,错误信息提到的是"WM_CONCAT"函数,这表明在Oracle 19c数据库环境中,用户尝试使用WM_CONCAT函数,但...

    oracle报错大全(珍藏版)

    #### ORA-00024: Mode Not Supported 尝试使用的模式不支持时触发。例如,尝试使用只读模式打开一个必须以读写模式打开的对象。 #### ORA-00025: Invalid Object Type 当尝试操作的对象类型无效时触发。这通常是...

    如何处理错误ORA-29275:部分多字节字符

    ### 如何处理错误ORA-29275:部分多字节字符 #### 问题背景与描述 在Oracle数据库操作过程中,用户可能会遇到一个特定的错误提示——ORA-29275:部分多字节字符。这一错误通常出现在执行查询`SELECT * FROM V$...

    ora-01033:oracle initialization or shutdown in progress 解决方法

    ### ora-01033: Oracle Initialization or Shutdown in Progress 解决方法 #### 一、问题背景及原因 **标题**: “ora-01033: Oracle initialization or shutdown in progress 解决方法” **描述**: “ora-01033: ...

    ORA-27101: shared memory realm does not exist.

    NULL 博文链接:https://snowelf.iteye.com/blog/507976

    ORA-32001:请求写入spfile,但没有使用spfile的解决方法

    ORA-32001:write to spfile requested but no spfile is in use请求写入spfile,但没有使用spfile的解决方法 在输入以下语句中报了这样的错误: SQL>alter system set control_files=’/u01/app/oracle/oradata/prod/...

    Oracle 授权 ORA-00990: 权限缺失或无效

    在Oracle数据库管理中,"ORA-00990: 权限缺失或无效"是一个常见的错误代码,它表示用户尝试执行的操作没有足够的权限。这个错误通常发生在试图访问、修改或者管理数据库对象(如表、视图、索引等)时。在本篇文章中...

    ORA-12154: TNS: 无法解析指定的连接标识符的解决方法

    ORA-12154: TNS: 无法解析指定的连接标识符的解决方法

    oracle ORA-03113 "end_of_file on communication channel"

    ORA-03113 "end_of_file on communication channel" ORA-03113 "end_of_file on communication channel" ORA-03113 "end_of_file on communication channel

    Oracle 回收站功能,彻底删除表ORA-00933:SQL command not properly ended

    ORA-00933: SQL command not properly ended ``` 解决方法是确保SQL语句完整无误,并使用正确的语法进行删除操作。 #### 四、总结 Oracle的回收站功能为用户提供了一个方便的方式来管理数据库对象的删除与恢复,极...

    oracle12c ORA-01017: 用户名/口令无效; 登录被拒绝 解决方案

    oracle12c程序连接时异常: ORA-01017: 用户名/口令无效; 登录被拒绝 的解决方案。

    oracle特有的错误:ORA-01036:非法的变量名/编号

    在Oracle数据库系统中,"ORA-01036:非法的变量名/编号"是一个常见的错误,通常出现在PL/SQL代码或者SQL查询语句中,当你尝试使用一个不正确或者未定义的变量时,Oracle数据库会抛出这个错误。这个错误可能是由于...

    ORA-00060: 等待资源时检测到死锁--oracle 数据库表死锁异常

    在Oracle数据库系统中,"ORA-00060: 等待资源时检测到死锁" 是一个常见的错误提示,它表明两个或多个事务在执行过程中陷入了无法继续进行的状态,因为彼此都在等待对方释放资源。这种情况通常发生在并发操作中,比如...

    CLOB 字段类型报错 ORA-01704: 文字字符串过长的解决

    然而,当你尝试向CLOB字段插入数据时,如果超过了Oracle规定的最大限制,就会遇到“ORA-01704: 文字字符串过长”的错误。这个错误通常意味着你试图插入的字符串超过了Oracle数据库允许的最大长度,对于VARCHAR2类型...

Global site tag (gtag.js) - Google Analytics