Oracle安装之INS-30131错误的解决方法——【Team Center 精品培训资料】
Oracle安装遇到INS-30131错误的解决方法

Oracle安装遇到INS-30131错误的解决⽅法需要学习SDE配置相关知识,其中Oracle数据库安装遇到错误INS-30131,虽然未能最终解决,但找到了初步的思路,记录下来给⼤家提供参考。
下⽂对很多知识的理解可能存在错误或不够精准,仅作参考。
软件:Oracle12cR1 版本:12.1.0.2系统:win10 版本:10.0.10240问题描述:配置SDE需注意:数据库服务端应与SDE统⼀,数据库客户端应与ArcMap统⼀。
安装数据库时遇到INS-30131错误,未能解决。
安装过程中先装数据库服务端,再装客户端。
其中11gR2版本服务端安装中,第⼆步选择跳过软件更新报INS-30131错误;12cR1版本服务端可顺利安装,随后安装客户端时第⼆步选择跳过软件更新报INS-30131错误。
如图选择“跳过软件更新(S)”,点击“下⼀步(N)”。
报错INS-30131,未能解决。
⽹上流传⽅法两种:其中⽅法2⽹上流传较⼴,有不少⼈表⽰成功解决问题。
11gR2版本的错误未尝试解决,对于12cR1版本尝试了以上两种⽅法,两种⽅法都可使客户端安装顺利完成。
但是对于⽅法1,最终⽹络服务名配置时报错,⼀般报“⽆监听程序”错误。
对于⽅法2⾃⼰遇到问题(这个问题应该不是普遍情况),系统原本就有名为C$的c盘共享⽂件夹。
右键停⽌名为C$的c盘共享⽂件夹后,(系统会提⽰即使删除当计算机重启时还会恢复)新建共享会提⽰C$已存在,⽆法创建。
重启计算机后系统原有C$共享⽂件夹⾃动恢复。
为了删除该共享⽂件夹并使其在系统重启时不恢复,采⽤以下⽅法:打开注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanServer\Parameters⾥⾯有两条是控制共享⽂件夹在计算机重启时⾃动恢复的,为:AutoShareServer和AutoShareWks,这两条可能不存在。
远程登录并启动oracle数据库(ORA-01031:insufficient privileges的解决方法)

远程登录并启动oracle数据库ORA-01031: insufficient privileges的解决方法by o8xv0123@在oracle数据库中远程连接的认证方式有两种:分别是操作系统认证和密码认证,在安装完oracle软件并创建数据库之后,默认方式为操作系统认证,远程连接(非加密的连接)必须使用密码认证。
如果要使用密码认证的方式远程连接到一个关闭状态的数据库,需要满足以下条件:1、目标oracle服务器打开listener2、目标oracle服务器的目标数据库(将要连接的数据库)已经静态注册到listener。
3、客户端配置好了tnsnames.ora(tnsping可以ping到远程服务器)4、目标oracle服务器已经开启了密码认证方式。
5、目标oracle服务器创建了密码认证文件,并且已经被数据库启用。
本文主要对4、5两个条件进行说明,如果4和5两步没有进行正确的配置,在连接远程目标数据库时将出现以下错误。
ORA-01031: insufficient privileges[oracle@localhost ~]$ sqlplus sys/password@ORCL as sysdbaSQL*Plus: Release 11.2.0.1.0 Production on Tue Mar 13 18:43:01 2012Copyright (c) 1982, 2009, Oracle. All rights reserved.ERROR:ORA-01031: insufficient privilegesEnter user-name: sysEnter password:ERROR:ORA-01034: ORACLE not availableORA-27101: shared memory realm does not existLinux Error: 2: No such file or directoryProcess ID: 0Session ID: 0 Serial number: 0解决方法:1、创建密码文件unix/linux(shell)下:orapwd file=$ORACLE_HOME/dbs/orapw password=password_for_syswindows(命令行模式)orapwd file=%ORACLE_HOME%\database\PWDsid_name.ora password=password_for_sys 2、开启密码方式的用户认证将以下内容添加到unix/linux中的init service_name.ora或者windows中的init.ora中去REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE注:Oracle 11g中的orapwd命令略有不同,先指定文件,再指定密码orapwd file=$ORACLE_HOME/dbs/orapw entries=30Enter password: change_on_install至此,客户端应该可以连接到远程关闭状态的数据库并启动数据库了。
(FAQ)Oracle安装程序初始设置失败[INS-30131]-恽君达——【Team Cent
![(FAQ)Oracle安装程序初始设置失败[INS-30131]-恽君达——【Team Cent](https://img.taocdn.com/s3/m/404f0daf4693daef5ff73d47.png)
Oracle安装程序初始设置失败[INS-30131]
作者:恽君达审校:倪洁适用版本:Oracle11.2
安装服务器端的Oracle,会验证安装程序验证设置,如图1。
图1
验证完成,出现错误:[INS-30131]执行安装程序验证所需的初始设置失败,如图2。
1
图2
错误原因:无法访问临时位置,提示操作:请确保当前用户具有访问临时位置所需的权限,失败节点概要:无法从节点检索exectask 的版本。
经检查后发现C盘已经共享不存在无法访问临时位置的问题,安装报错也并非是提示的权限问题。
用以下方法解决该报错:将Oracle安装程序拖放到DOS窗口,并在后面添加:
-ignorePrereq
-J"-Doracle.install.db.validate.supportedOSCheck=false"
执行命令,如图3。
1
图3
以此方式启动Oracle安装程序,验证设置无报错,如图4。
图4
1。
oracle安装失败的错误提示与解决办法

Oracle11G 在 window7 环境下安装方法(win7)首先在自己的 Windows 7 旗舰版上,Oracle 11g 在“产品特定的先觉条件检查”时,提示以下错误:在第一幅图片中,我们可以看到在 Oracle 在检查操作系统兼容性时,没有通过检查,此时,我们在点击“下一步”进行安装时,是不能安装的,会跳出第二幅图片中的错误提示,所以只能在解 决了兼容性问题后,才能安装 Oracle。
这时,我们先得找到 Oracle 的安装文件,下面就以我的安装文件的路径进行说明,首先找到路径: ”E:\Oracle Enterprise_Standard Edition_11.1.0.7\database\stage\prereq\db\refhost.xml“。
在找到”refhost.xml“文件后,如果你没有安装 XML 软件,就以记事本的方式打开该文件,在打开之后我们找到如下节点:{<!--Microsoft Windows Vista--> <OPERATING_SYSTEM> <VERSION VALUE="6.0"/>}把上述节点替换为以下节点:{<!--Microsoft Windows 7--> <OPERATING_SYSTEM> <VERSION VALUE="6.1"/> </OPERATING_SYSTEM>} 替换完成后,点击保存并退出。
接下来就可以点击”setup.exe“进行安装了,在进入到”产品特定的先觉条件检查“的安装界面时,仍会有上面第一幅的图片安装画面,仍是系统的兼容性检查不通 过,但我们不管点击”下一步“进行继续安装,在点击了”下一步“按钮进行安装时,会跳出以下错误,如下图:此时我们点击”是“进行继续安装,接下来安装程序就进入到下一个安装程序了,安装程序界面如下图:我们继续进行 Oracle 的安装程序,点击”下一步“继续,当我们点击了”下一步“的按钮时,此时就会来到 Oracle 的安装界面,如下图:到这里整个 Oracle 安装程序可以说安装成功只是时间问题而已了,我们继续点击”安装“按钮进行 Oracle 的安装,这时 Oracle 安装程序将会配置和启动先前所选的组件,如下图:在等待 Configuration Assistant 配置完毕后,就开始正式安装到我们的计算机硬盘上了,此时,就进入到 Oracle 数据库的启动和创建界面了,如下图:在等待 Oracle 数据库创建完之后,就完成了对 Oracle 数据库的安装了,最后是 Oracle 的完成安装界面:到这里就已经彻底完成了安装 Oracle 11g 的过程了,此时我们发现有”口令管理“的按钮,在 Oracle 11g 中,”scott“账户默认是锁定的,如果你想像以前一样使用"scott"账户进行登录的话,就点击” 口令管理“按钮对"scott”账户进行解锁。
Oracle所选安装与指定主目录中已安装的软件冲突-马鑫——【Team Center 精品培训资料】

Oracle所选安装与指定主目录中已安装的软件冲突
作者:马鑫审校:张浩适用版本:windows server 2012与Oracle11g
我们安装Teamcenter系统的第一步是安装数据库,最常用的数据库是Oracle。
我们在安装Oracle数据库时,可能会因为一些问题出现报错,导致我们需要卸载Oracle重新安装。
但是,当我们重新安装Oracle数据库,选择之前的安装的目录(已经删除干净),安装程序就会报错:[INS-32025]所选安装与指定Oracle主目录中已安装的软件冲突。
如下图。
图1
1
解决办法:
1.删除C:\Program Files\Oracle\Inventory\ContentsXML 目录下的inventory.xml文件,如下图。
图2
2.inventory.xml文件的具体内容如下(该目录地址就是在这里被占用,所以才会报错)。
1
图3
1。
ora-01031insufficientprivileges解决方法

ora-01031insufficientprivileges解决方法Last login: Mon May 31 17:18:31 2010 from 191.168.13.217 [oracle@localhost ~]$[oracle@localhost ~]$[oracle@localhost ~]$ sqlplus /enlogSQL*Plus: Release 9.2.0.4.0 - Production on Tue Jun 1 08:57:12 2010Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SP2-0306: Invalid option.Usage: CONN[ECT] [logon] [AS {SYSDBA|SYSOPER}]where ::= [/][@] | /Enter user-name:ERROR:ORA-01017: invalid username/password; logon deniedEnter user-name:ERROR:ORA-01017: invalid username/password; logon deniedSP2-0157: unable to CONNECT to ORACLE after 3 attempts, exiting SQL*Plus[oracle@localhost ~]$ sqlplus /nologSQL*Plus: Release 9.2.0.4.0 - Production on Tue Jun 1 08:57:28 2010Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL>SQL>SQL>SQL> connect /as sysdbaERROR:ORA-01031: insufficient privilegesSQL> exit[oracle@localhost ~]$ ps -ef |grep pmonoracle 4974 4942 0 08:57 pts/1 00:00:00 grep pmon[oracle@localhost ~]$ ipcs -m------ Shared Memory Segments --------key shmid owner perms bytes nattch status[oracle@localhost ~]$ env |grep ORAORACLE_SID=dbinfoORACLE_BASE=/home/oracleappORACLE_HOME=/home/oracle[oracle@localhost ~]$ cd $ORACLE_HOME[oracle@localhost ~]$ lsApache demo jar lib olap relnotes sysmanassistants Desktop javavm md oracore root.sh ultrasearchBC4J dm jdbc mgw ord root.sh.old weboamlibbin doc jdk network otrace slax wwgclasses ds jlib oci owm soap xdkctx hs JRE ocommon plsql sqljcwmlite install jsp ocs4j precomp sqlplusdbs inventory ldap oem_webstage rdbms syndication[oracle@localhost ~]$ cd dbs[oracle@localhost dbs]$ ls1.ora initdbinfo.ora init.ora orapwdbinfo.bak orwpwddbinfocore_4650 initdw.ora lkDBINFO orwpwdbinfo[oracle@localhost dbs]$ lltotal 92-rw-r--r-- 1 oracle oinstall 1092 May 27 09:01 1.oradrwxr-x--- 2 oracle oinstall 4096 May 27 10:18 core_4650-rw-r--r-- 1 oracle oinstall 1092 Oct 29 2009 initdbinfo.ora -rw-r--r-- 1 oracle oinstall 12920 Mar 8 2002 initdw.ora-rw-r--r-- 1 oracle oinstall 8385 Mar 9 2002 init.ora-rw-rw---- 1 oracle oinstall 24 Oct 29 2009 lkDBINFO-rw-r----- 1 oracle oinstall 2560 May 27 10:56 orapwdbinfo.bak-rwSr----- 1 oracle oinstall 1536 May 27 10:59 orwpwdbinfo -rwSr----- 1 oracle oinstall 1536 May 27 10:59 orwpwddbinfo [oracle@localhost dbs]$ env |grep ORAORACLE_SID=dbinfoORACLE_BASE=/home/oracleappORACLE_HOME=/home/oracle[oracle@localhost dbs]$ sqlplus /nologSQL*Plus: Release 9.2.0.4.0 - Production on Tue Jun 1 08:59:00 2010Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL> connect /as sysdbaERROR:ORA-01031: insufficient privilegesSQL> connect sys/sys as sysdbaERROR:ORA-01031: insufficient privilegesSQL> exit[oracle@localhost dbs]$ ls1.ora initdbinfo.ora init.ora orapwdbinfo.bak orwpwddbinfocore_4650 initdw.ora lkDBINFO orwpwdbinfo[oracle@localhost dbs]$ ls -ltotal 92-rw-r--r-- 1 oracle oinstall 1092 May 27 09:01 1.oradrwxr-x--- 2 oracle oinstall 4096 May 27 10:18 core_4650-rw-r--r-- 1 oracle oinstall 1092 Oct 29 2009 initdbinfo.ora -rw-r--r-- 1 oracle oinstall 12920 Mar 8 2002 initdw.ora-rw-r--r-- 1 oracle oinstall 8385 Mar 9 2002 init.ora-rw-rw---- 1 oracle oinstall 24 Oct 29 2009 lkDBINFO-rw-r----- 1 oracle oinstall 2560 May 27 10:56 orapwdbinfo.bak-rwSr----- 1 oracle oinstall 1536 May 27 10:59 orwpwdbinfo-rwSr----- 1 oracle oinstall 1536 May 27 10:59 orwpwddbinfo [oracle@localhost dbs]$ mv orapwdbinfo orapwdbinfo.orig mv: cannot stat `orapwdbinfo': No such file or directory[oracle@localhost dbs]$ lltotal 92-rw-r--r-- 1 oracle oinstall 1092 May 27 09:01 1.oradrwxr-x--- 2 oracle oinstall 4096 May 27 10:18 core_4650-rw-r--r-- 1 oracle oinstall 1092 Oct 29 2009 initdbinfo.ora -rw-r--r-- 1 oracle oinstall 12920 Mar 8 2002 initdw.ora-rw-r--r-- 1 oracle oinstall 8385 Mar 9 2002 init.ora-rw-rw---- 1 oracle oinstall 24 Oct 29 2009 lkDBINFO-rw-r----- 1 oracle oinstall 2560 May 27 10:56 orapwdbinfo.bak-rwSr----- 1 oracle oinstall 1536 May 27 10:59 orwpwdbinfo -rwSr----- 1 oracle oinstall 1536 May 27 10:59 orwpwddbinfo [oracle@localhost dbs]$ cp orapwdbinfo orapwdbinfo.orig cp: cannot stat `orapwdbinfo': No such file or directory[oracle@localhost dbs]$ orapwd file=orapwdbinfo password=sys entries=10[oracle@localhost dbs]$ sqlplus /nologSQL*Plus: Release 9.2.0.4.0 - Production on Tue Jun 1 09:00:58 2010Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL> connect /as sysdbaERROR:ORA-01031: insufficient privilegesSQL> exit[oracle@localhost dbs]$ ls -ltotal 100-rw-r--r-- 1 oracle oinstall 1092 May 27 09:01 1.oradrwxr-x--- 2 oracle oinstall 4096 May 27 10:18 core_4650-rw-r--r-- 1 oracle oinstall 1092 Oct 29 2009 initdbinfo.ora -rw-r--r-- 1 oracle oinstall 12920 Mar 8 2002 initdw.ora-rw-r--r-- 1 oracle oinstall 8385 Mar 9 2002 init.ora-rw-rw---- 1 oracle oinstall 24 Oct 29 2009 lkDBINFO-rwSr----- 1 oracle oinstall 2560 Jun 1 09:00 orapwdbinfo-rw-r----- 1 oracle oinstall 2560 May 27 10:56 orapwdbinfo.bak-rwSr----- 1 oracle oinstall 1536 May 27 10:59 orwpwdbinfo -rwSr----- 1 oracle oinstall 1536 May 27 10:59 orwpwddbinfo [oracle@localhost dbs]$ env |grep ORAORACLE_SID=dbinfoORACLE_BASE=/home/oracleappORACLE_HOME=/home/oracle[oracle@localhost dbs]$ sqlplus /nologSQL*Plus: Release 9.2.0.4.0 - Production on Tue Jun 1 09:01:35 2010Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL> connect /as sysdbaERROR:ORA-01031: insufficient privilegesSQL> connect sys/sys as sysdba Connected to an idle instance.SQL> startupORACLE instance started.Total System Global Area 319886536 bytes Fixed Size 451784 bytesVariable Size 201326592 bytes Database Buffers 117440512 bytesRedo Buffers 667648 bytesDatabase mounted.Database opened.SQL>。
解决Ora-01031的问题完美解决办法,可惜我的失败了。。

解决Ora-01031的问题完美解决办法,可惜我的失败了。
SQL>; connect / as sysdbaERROR:ORA-01031: insufficient privileges什么情况下可以不输入用户名/密码?zorrol回复于:2003-08-07 10:19:46小弟有些总结请参考,并提宝贵意见############################################# ## NAME: troubleshoot connect internal.txt## DESCRIPTION:# connect internal# connect / as sysdba 要口令问题:# refer (METALINK,ORACLEDOC),# metalink search words(connect internal)# NOTE:## modifiy (MM/DD/YY) AUTHOR# 05/03/03 ZORROL#############################################————————————————————1。
检查sqlnet.ora 文件.sqlnet.ora 文件损坏或格式不对可以导致出现该问题。
sqlnet.ora 文件可能存放路径为$TNS_ADMIN/sqlnet.ora如果没有设置$TNS_ADMIN默认在$ORACLE_HOME/network/admin/sqlnet.ora或$HOME/sqlnet.ora(1). 可以从别的机器拷贝一个文件过来,注意备份原来的sqlnet.ora。
---检查sqlnet.ora 文件内容(2). 检查SQLNET.AUTHENTICATION_SERVICES如果没有使用dblink.检查该行并设置SQLNET.AUTHENTICATION_SERVICES = (BEQ,NONE)(3). SQLNET.CRYPTO_SEED在unix 下不需要该参数。
ORA03113错误分析

ORA-03113错误分析Fenng(Fenng@)版权声明:转载请注明作者及出处前言每一个DBA在进行数据库管理的过程中不可避免的要遇到形形色色的错误(ORA-xxxx).有些错误由于频繁出现、原因复杂而被DBA们戏称之为"经典的错误".其中ORA-3113 "end of fileon communication channel"就是这样的一个.我们可以简单的把这个错误理解为Oracle客户端进程和数据库后台进程连接中断.不过,导致这个错误的原因实际上有很多种,对数据库设置不当、任何能导致数据库后台进程崩溃的行为都可能产生这个错误.这个错误的出现还经常伴随着其它错误,比如说:ORA-1034 ORACLE not available.此外,该错误出现的场景复杂,可能出现在:∙启动的Oracle的时侯;∙试图创建数据库的时侯;∙试图对数据库进行连接的时侯;∙在客户端正在运行SQL/PL/SQL的时侯;∙备份/恢复数据库的时侯;∙其它一些情况下......在论坛上也时常可以看到初级DBA对这个问题的求救. 在这里简单的对该问题进行一下整理.不当之处,请多指教!错误原因种种根据网络上大家反映的情况来看,错误原因大约有这些:∙Unix核心参数设置不当∙Oracle执行文件权限不正确/环境变量问题∙客户端通信不能正确处理∙数据库服务器崩溃/操作系统崩溃/进程被kill∙Oracle 内部错误∙特定SQL、PL/SQL引起的错误∙空间不够∙防火墙的问题∙其它原因在开始解决问题之前,作如下几件事情:1、回忆一下在出现错误之前你都做了什么操作,越详细越好;2、查看background_dump_dest目录中的alertSID.log文件也是你要做的事情;3、 Google一下,在互联网上有很多信息等着你去发现,不要什么都问别人.当然,如果你找到了一些对你非常有帮助的东西――这篇文档就不用看了,别耽误你的时间,呵呵.Unix核心参数设置不当/ init参数设置不当如果数据库在安装过程中没有设定正确的操作系统核心变量,可能在安装数据库文件的时侯没甚么问题,在创建数据库的时侯常常会出现03113错误.和此有关的另一个原因是init.ora 参数文件中的processes参数指定了不合理的值,启动数据库导致错误出现(当然这个归根到底也是核心参数的问题).这个错误信息一般如下:ORA-03113: end-of-file on communication channelORA-01034: ORACLE not availableORA-27101: shared memory realm does not exist解决办法有两个:1修改核心参数,加大相应核心参数的值(推荐);2减小init.ora参数的Processes的值.需要注意的是:SEMMSL必须设定为至少要10 +进程数的最大值.SEMMNS 也依赖于每个数据库上的进程参数值.-------------------------------------------------------------------------------注:这个错误类型只在Unix平台上出现.在Windows上如果processes的值过大,则会出现:ORA-00068: invalid value 24200001 for parameter max_rollback_segments, must bebetween 2 and 65535 /* 此时指定的参数值超过了65535 */或者ORA-27102: out of memory/* 小于65535的一个大参数值 */我的软件环境:Windows 2000 Version 5.0 Service Pack 3, CPU type 586ORACLE RDBMS Version: 8.1.7.0.0.-------------------------------------------------------------------------------在特定平台上更改核心参数可能会有差别,请参考OracleTechnet()上的安装文档.对特定Unix平台的安装文档也有对核心参数意义的解释.Init.ora中的参数如果设置不当,会产生该错误.有经验表明:shared_pool_size设置过小会出现错误,此外timed_statistics=true的设置也会带来问题.Oracle执行文件权限不正确/环境变量问题这个问题只出现在Unix平台上.常见情况是有的时侯管理员为了方便而使用Unix的tar命令处理过的压缩包进行的安装,或者是系统管理员指定了额外的OS用户也可以管理数据库却没有指定正确的环境变量.Oracle执行文件在$ORACLE_HOME/bin目录下,如果出现问题,应该用如下Unix类似命令来纠正:chmod 7755 $ORACLE_HOME/bin/oracle有的时侯要对Oracle进行relink操作.在Unix上通过cp拷贝安装的时候,常常会出现环境变量的问题,和个别执行程序连接问题.LD_LIBRARY_PATH如果设置的不正确会导致问题,在这种情况下,需要对Oracle进行relink.如果可执行文件oralcle被破坏,也要对其relink.如果安装了并行服务器选项而Distributed Lock Manager没有安装或正确运行也会导致错误.客户端通信不能正确处理SQL*Net驱动器的问题:如果使用的版本比较低的驱动器,请更换到新版本的驱动.SQL*Net的驱动没有连接到Oracle可执行文件会导致错误.检查网络是否通畅Windows平台的常见问题:在Windows平台创建数据库的时侯,如果出现该问题可以考虑用如下的方法:首先检查本地网络设置.查看网络上是否有同名的结点或有冲突的IP.如果问题依旧,可以保守的用下面的方法:1. 禁用网卡:将本地连接状态改为禁用;2. 将sqlnet.ora文件打开(以记事本形式)将nts验证注释掉:#SQLNET.AUTHENTICATION_SERVICES= (NTS).3. 创建数据库;4. 创建成功后,恢复本地连接.数据库服务器崩溃/操作系统崩溃/进程被Kill在连接过程中,如果Oracle数据库的服务器崩溃或者数据库所在的操作系统崩溃,就会出现这个错误.Oracle Server崩溃的原因可能因为主要后台进程死掉.被错误的进行了Kill操作.如果是这个原因还是比较容易解决的.此外,和OS有关的应用程序存在内存泄漏(或者有病毒)的时侯也会导致Oracle后台程序问题.推荐排错办法:1、查看应用软件相关进程是否正常运行;2、查看有无内存泄漏;3、查杀病毒;4、确定系统管理员没有进行误操作;5、确定无黑客入侵行为.6、其它不确定因素......Oracle 内部错误/ Bug如果查看background_dump_dest目录中的alert.log发现有无ora-600等错误,可以到Metalink站点上查看具体信息及其解决方案.一般情况下要打软件补丁.特定SQL、PL/SQL引起的错误尝试把SQL进行分开执行,也可以用SQL_TRACE来进行跟踪,找到导致问题的SQL语句:在SQLPlus下:ALTER SESSION SET SQL_TRACE TRUE;SQL语句中的非法字符和不合理的处理结果偶尔会带来问题.系统空间不够任何时侯都要确保数据库系统有足够的空间.如果 USER_DUMP_DEST和BACKGROUND_DUMP_DEST没有剩余空间的话,会导致此问题.此外,如果打开了审计,AUDIT目录要由足够的空间.如果激活了Trace的话,Trace目录要由足够的空间.Dave Wotton的文档表明,在对表进行插入数据的时侯,如果文件超过了2G(而文件系统有2G 限制),会导致该问题.防火墙的问题如果数据要通过防火墙,请联系系统管理员,询问是否对数据库数据进行了过滤或者是突然禁止了通行端口.如本地安装有个人防火墙,请检查本地设置.其它方面说明导致这个错误的原因有很多种,上面列到的只是一些典型情况.经常去一些数据库技术论坛可能会有帮助.比如说ITPUB()、CNOUG()等.参考信息/更多阅读Oracle的技术支持站点,要有CSI号码才可以登录.参考Note编号:Note:17613.1ORA-3113 on Unix - What Information to CollectNOTE:131207.1How to Set UNIX Environment VariablesNote:131321.1How to Relink Oracle Database Software on UNIXNote:22080.1/grphp?hl=zh-CNGoogle新闻组/faq/ORA-3113.html技术专家Jonathan Lewis的站点上的一个FAQ/dwotton/dba/ora3113.htmDave Wotton总结的一个很经典的文档.们在使用oracle数据库时经常碰到的一个错误,看看下面的分析和解决办法,也许对你很有帮助!Causes of ORA-3113'sORA-3113 "end-of-file on communication channel" is a catch-all error message which simply means that the foreground oracle client process (svrmgrl, sqlplus, RMAN, Oracle Forms etc.) has lost contact with its background shadow process.Unfortunately there are many causes of this. Network glitches were clearly the cause that the Oracle developers had in mind when they phrased the error message, but anything which causes the shadow process to crash will cause this error to be reported.This message may also be accompanied by other messages, either displayed on the screen or in log files. If the background process which has crashed is one of the essential Oracle servers processes (PMON, SMON, DBWR etc.) you may also get an ORA-1034 ORACLE not available error message. Looking in the alert log or looking through any trace files in your background_dump_dest may help diagnose the problem.Here are some of the causes of ORA-3113 I've accumulated so far:In the situations below I have indicated the platform and Oracle version number where I experienced the problem. But it is likely that some of the causes may occur on other platforms and other versions of Oracle as well.Invalid value for processes parameter in init.ora when starting databaseWe had a value for processes of 150, which was higher than that permitted by the values of kernel parameters SEMMSL and SEMMNSThis gave the errors:ORA-24323: value not allowedORA-03113: end-of-file on communication channelORA-01034: ORACLE not availableORA-27101: shared memory realm does not existThe solution is either to reduce the value of the init.ora parameter processes or (preferably) increase the values of these kernel parameters (and reboot your server).(See the Oracle8i Installation Guide Release 8.1.7 for Sun SPARC Solaris manual for information on setting the Solaris shared memory and semaphore kernel parameters correctly.In particular, SEMMSL must be set to at least 10 + the largest value of processes of any database on the server. SEMMNS is also dependent on the values of the processes parameter for each of your databases.For other platforms, the procedure for changing kernel parameters may vary so consult the platform-specific documentaion for your plaform on Oracle Technet or on the installation CD.)Interestingly, this problem occurred during a default installation of Oracle 8.1.7, so it was the installer software that had generated this value for processes, resulting in the installer failing to create an initial database. Note that Oracle (rather unhelpfully) doesn't tell you which parameter has an invalid value, or why it is invalid. Presumably there are other init.ora parameters which will cause similar symptoms if incorrectly set.(Oracle 8.1.7.0.0 on Solaris)setuid bit needs setting on the oracle executable(Unix only). The symptom for this (at least, in my case) was that SQL*Plus on the server gave an ORA-3113 error when started by any userid other than oracle. The database remained up.The oracle executable in the $ORACLE_HOME/bin directory should have the permissions: -rwsr-sr-x 1 oracle dba 34049236 Oct 11 17:17 oracleThe important features are the ownership of the executable (by oracle) and the setting of the setuid bit (the first s in the permissions string.) This allows the shadow processes to execute as if they were being executed by the oracle userid and therefore allows them to read and write to the database files, which are normally protected with write access granted to oracle only, and sometimes with read access restricted as well. The setting of the setgid bit (the second s ) is not important.If the permissions are wrong, they can be corrected with the command:chmod 7755 $ORACLE_HOME/bin/oracleRelinking the oracle executable (see below) will also set the permissions correctly. In fact, it isprobable that in many cases changing the permissions was all that was required, rather than a full relink.A possible cause of this problem is using tar or cp or some other unix file-copying utility to move or clone the Oracle installation. These tools will not preserve the setuid permissions on executables unless run as root. (Thanks to Paul Ingram for his insights into this issue.)(Oracle 8.1.7.0.0 on Solaris)Oracle executables need relinkingThere are three ways of doing this:There's an option on the Oracle Installer to relink the executables.I didn't use this method as I didn't have the installation CDROM to hand.Enter the following Unix commands:cd $ORACLE_HOME/rdbms/libmake -f ins_rdbms.mk installThis relinked about a dozen executables, including $ORACLE_HOME/bin/oracle, and solved the problem. (Interestingly, the sqlplus executable was not relinked.)Enter the following Unix commands:cd $ORACLE_HOME/bin./relink allAlternatively, given that it would seem necessary to only relink the oracle executable, ./relink oracle should be sufficient../relink without any parameters gives a list of possible targets for relinking.Before embarking on a relinking exercise, it may first be worth checking whether the real cause ofthe problem is simply incorrect file permissions (see above).(Oracle 8.1.7.0.0 on Solaris)shared_pool_size too small.We had it set to 100Mb. Increasing it to 200Mb solved the problem. (Yes, I know 200Mb is probably still too small for good performance.)(Oracle 8.1.6.0.0 on Solaris)timed_statistics=true.Oracle Support could not provide a solution to this one: they just advised me to run my database with timed_statistics=false. Doing this did indeed cure a lot of ORA-3113's I was getting when querying data-dictionary tables.(Oracle 8.1.6.0.0 on Solaris)An insert into a table which grew into an additional extent allocated in a datafile which was over 2Gb in size.This caused the database to crash. I can't remember whether it was the action of growing the datafile which generated the ORA-3113, or whether it was the action of extending the table into the area above the 2Gb limit which caused it.We then got ORA-3113's when trying to restart the database. I think what happened was that each time we brought it up it tried to re-apply the redo logs to bring the database into a consistent state before opening it. But this caused an insert above the 2Gb limit again and another ORA-3113 crash. I can't remember how I got round the problem. Probably "recover until cancel".(Oracle 8.1.6.0.0 on Solaris)Create table as select .... where there was an invalid procedure or function called from a trigger defined on the table we were selecting from.I can't specify this in any more detail: we used the $ORACLE_HOME/rdbms/admin/utlrp.sql script to recompile all invalid packages, procedures and functions. This solved the problem, but I don't know which of the procedures or functions was the original cause of the problem. (Oracle 8.1.6.0.0 on Solaris)Make use of Oracle Support / MetalinkIf you have a look at Metalink you'll find quite a lot of problems related to ORA-3113, with lots of diverse causes. You will probably need Oracle Support's help to solve most ORA-3113's如果是timed_statistics的影响,其影响的消除需要时间,你可以参考下我的这个案例:/internal/shared_pool-6.htm你可以尝试在设为False之后,执行alter system flush shared_pool;看是否可以缩短这个时间。