ora-12546 oracle创建实例时报错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ora-12546 oracle创建实例时报错相关的知识,希望对你有一定的参考价值。

操作系统:win7 oem旗舰版
所装oracle版本:10g企业版
问题:创建本机实例时报错ora-12546:TNS:permission denied
网上中文描述是:TNS:许可被拒绝
网上搜索了解决方法描述如下:
1.是把防火墙关闭了,就可以了。
2.说是防火墙阻止了 jrew.exe 的网络访问权限。
我装的时候把防火墙关了,至于那个jrew.exe 是否被禁止我不知道在哪里找,或者把这个限制去掉,由于此问题导致我的数据库实例创建不了,急等高手解决.
以前我的win7是可以装的,而且用的很好,有段时间没用,再启动oracle时就不行了,所以重新创建实例,遇到此问题后,我也重装了一次oracle,还是不行。希望高手速速解决,先奉上50,如果方法ok,解决了问题,随后再送上20.
忽略到最后会提示个框:
由于以下错误,Enterprise Manager 配置失败-'job_queue_processes'必须大于等于1.改正错误,然后以独立模式运行EM Configuration Assistant。您可以以后通过手动运行D:\oracle\product\10.1.0\Db_1\bin\emca脚本,重新使用Enterprise Manager配置此数据库。
请高人指点。

首先,10G不支持WIN 7.当然你可以修改orapram.ini文件来跳过系统检查,但之后会带来很多问题。所以建议WIN 7用11G.
重装一定要将ORACLE软件卸干净,再安装
参考技术A 这是我的设置 给你参考一下 希望有帮助
C:\Users\Administrator>set
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\Administrator\AppData\Roaming
CommonProgramFiles=C:\Program Files\Common Files
COMPUTERNAME=HP
ComSpec=C:\Windows\system32\cmd.exe
FP_NO_HOST_CHECK=NO
HOMEDRIVE=C:
HOMEPATH=\Users\Administrator
LOCALAPPDATA=C:\Users\Administrator\AppData\Local
LOGONSERVER=
HP
NUMBER_OF_PROCESSORS=2
oracle_sid=test
OS=Windows_NT
Path=d:\oracle\product\10.1.0\db_1\bin;d:\oracle\product\10.1.0\db_1\jre\1.4.2\b
in\client;d:\oracle\product\10.1.0\db_1\jre\1.4.2\bin;C:\Windows\system32;C:\Win
dows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
PERL5LIB=d:\oracle\product\10.1.0\db_1\perl\lib\5.6.1\MSWin32-x86;d:\oracle\prod
uct\10.1.0\db_1\perl\lib\5.6.1;d:\oracle\product\10.1.0\db_1\perl\5.6.1\lib\MSWi
n32-x86;d:\oracle\product\10.1.0\db_1\perl\site\5.6.1;d:\oracle\product\10.1.0\d
b_1\perl\site\5.6.1\lib;d:\oracle\product\10.1.0\db_1\sysman\admin\scripts
PROCESSOR_ARCHITECTURE=x86
PROCESSOR_IDENTIFIER=x86 Family 6 Model 15 Stepping 13, GenuineIntel
PROCESSOR_LEVEL=6
PROCESSOR_REVISION=0f0d
ProgramData=C:\ProgramData
ProgramFiles=C:\Program Files
PROMPT=$P$G
PSModulePath=C:\Windows\system32\WindowsPowerShell\v1.0\Modules\
PUBLIC=C:\Users\Public
SESSIONNAME=Console
SystemDrive=C:
SystemRoot=C:\Windows
TEMP=C:\Users\ADMINI~1\AppData\Local\Temp
TMP=C:\Users\ADMINI~1\AppData\Local\Temp
USERDOMAIN=hp
USERNAME=Administrator
USERPROFILE=C:\Users\Administrator
windir=C:\Windows

C:\Users\Administrator>
参考技术B 下载这个版本的10g:
http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/10203vista.html
并且以管理员身份运行安装程序。
参考技术C 手动创建库前先建立个监听程序

oracle 关闭之后启动报错ora-00205,怎么解决?

shutdown 时报错ora-01507
startup 时报错ora-00205,
怎么解决?

oracle 关闭之后启动报错ora-00205是设置错误造成的,解决方法为:

1、工作中遇到在启动数据库实例的时候报错ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance。

2、先用静态参数文件pfile启动数据库,发现使用静态参数文件启动时没有报错。

3、利用静态参数文件重建动态参数文件spfile并重启数据库,发现问题已经解决,不再有失效参数错误。

4、查看警报日志 alert_bianxueqing.log  下面是警报的位置。

5、打开文件把文件中的log_archive_start      把这一行直接删除  然后再重启动就可以了。

参考技术A ORA-00205: error in identifying control file, check alert log for more info
翻译为:控制文件的错误,请检查警报日志中获得更多信息

通过:/opt/Oracle/diag/rdbms/ora11g/ora11g/alert/log.xml文件中找出实例启动日志
里面会有如下信息:
<msg time='2011-11-10T09:55:51.643+08:00' org_id='oracle' comp_id='rdbms'
client_id='' type='UNKNOWN' level='16'
module='MMON_SLAVE' pid='13970'>
<txt>Errors in file /opt/oracle/diag/rdbms/ora11g/ora11g/trace/ora11g_m000_13970.trc:
ORA-00210: cannot open the specified control file
ORA-00202: control file: '/opt/oracle/oradata/ora11g/control03.ctl'
ORA-27048: skgfifi: file header information is invalid
ORA-00210: cannot open the specified control file
ORA-00202: control file: '/opt/oracle/oradata/ora11g/control02.ctl'
ORA-27048: skgfifi: file header information is invalid
</txt>
</msg>
里面有提示control02.ctl与control03.ctl两个控制文件错误
再找到/opt/oracle/diag/rdbms/ora11g/ora11g/trace/ora11g_m000_13970.trc跟踪文件
里面有如下信息:
kcidr_process_controlfile_error:
IO Check was called but no error was found
ORA-00210: cannot open the specified control file
ORA-00202: control file: '/opt/oracle/oradata/ora11g/control03.ctl'
ORA-27048: skgfifi: file header information is invalid
ORA-00210: cannot open the specified control file
ORA-00202: control file: '/opt/oracle/oradata/ora11g/control02.ctl'
ORA-27048: skgfifi: file header information is invalid
里面提示无法正常打开两个控制文件。

针对如上信息,可能是由于数据库的非正常关闭而导致控制文件被损坏。
可选择如下两种修改方式:
1、直接拷贝control01.ctl文件进行覆盖control02.ctl与control03.ctl文件
2、从其它正常的oracle环境中拷贝控制文件进行覆盖。

实例装载之后可通过“show parameter spfile;”查询出oracle加载的参数文件,我这里是spfileora11g.ora。
实例正常启动后,可通过“select * from v$controlfile;”查询这个视图,这里面的控制文件均与spfileora11g.ora中配置的控制文件内容一致。
参考技术B 有个类似的问题,自己查查,可能是磁盘的问题  
启动系统时会自启动数据库alert.log文件,看看具体是什么问题
alert.log 在 ORACLE_BASE/admin/orcl/bdump/alert_orcl.log
(注意,ORACLE_SID是ORCL,应根据实际的ORACLE_SID进行修改)
查看文件末尾的错误追问

没有alert_orcl.log文件

追答

orcl 是ORACLE缺省的实例名,没有alert_orcl.log文件,你的实例名肯定不是orcl,找到alert_xxx.log文件即可,xxx是你的oracle实例名

追问

我的是用默认的orcl

追答

你是哪个版本,看看有没有其他的日志文件,可能名称不同。
新版本日志可能是xml文件的,但可能在alert目录下,如启动日志为log.xml
ORA-00205: error in identifying control file, check alert log for more info

一般错误是控制文件错误,必须查清log看具体是什么错误

参考技术C CONTROL01.CTL和CONTROL02.CTL两个控制文件不一致或丢失其中一个导致。
解决方案:
1.不一致的话,先备份两个文件,然后复制其中一个,改名后替换另外一个
2.丢失其中一个的话,直接复制改名就行了
3.两个都丢失...麻烦了点,得看具体问题

以上是关于ora-12546 oracle创建实例时报错的主要内容,如果未能解决你的问题,请参考以下文章

oracle 提示 ORA-12546 TNS:permission denied

各位大神 我用scott或者sys用户 连接本地的oracle报错12546:权限被拒绝 该怎么解决

用root连接oracle报错ERROR: ORA-12546: TNS:permission denied

sqlplus sys/sys as sysdba报错ORA-12546:TNS:permission denied

安装oracle10报错:ORA-12546:TNS:permission denied。请问高手或者dba怎么解决。多谢!

Oracle TNS 权限被拒绝 *