你可以这样:
cmd打开一个黑色的命令窗口,输入sqlplus
/
as
sysdba
此步骤是否可以登陆?
如果登陆后,输入命令alter
user
sys
identified
by
XXX
其中XXX是你要指定给sys的密码
这样,你就可以重置sys的密码了
然后你用重置的密码登陆sqlplus
或者
sql
developer看是否成功,如果有问题,可以贴出报错信息,追问
以上请参考
初始化首次测试请使用用户名: scott 口令: tiger 正在尝试使用以下用户 ID 连接:scott 测试没有成功 ORA : TNS:no listener
登录到数据库:orcl
您的用户名和/或口令无效
解决方法
看看注册表中的HKEY_LOCAL_MACHINE\SYSTEM\ControlSet \Services\OracleOraHome TNSListener键值是否正确(对应TNSLSNR exe)
手工启动呢? c:\lsnrctl start 然后在看状态 lsnrctl>status
从Oracle的错误提示来看 是说TNS:no listener 估计是某种服务没有启动 打开windows管理工具 >服务 一看 有一个OracleOraHome TNSListener这样的服务 和错误信息题是一致 基本就可以肯定是这个服务所引发的问题 再一看 该服务没有启动 遂手工启动 刷新后一看 该服务居然马上就自动关闭了 重试N次 结果一样 到Google搜索看看 没想到这还是一个普遍的问题 有一个人提出 把安装目录下的listener ora打开察看 如 d:\oracle\ora \neork\admin\listener ora 打开该配置文件后发现如下一段配置信息 LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC )) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = local)(PORT = )) ) ) ) 当看到这一行HOST=local 的时候 问题解决了 原来是由于几天装好Oracle后 又改了Windows的计算机名 而这个配置文件中记录的监听主机名还是原来的名称 这也就怪不得 OracleOraHome TNSListener服务无法启动了 马上修改为现在的计算机名 再次启动OracleOraHome TNSListener服务成功 PL/SQL Developer连接Oracle数据库成功 不能登陆故障排除 总结 Oracle比较强调手动功能调整 将一些配置信息放置在配置文件中 不像SqlServer一样 几乎把任何信息都放在注册表中 当然了这也符合Oracle作为一个跨平台数据库的精神 但对初学者来说 确有一定难度 不像SqlServer那么 傻瓜 再解决这个问题时 差点又重装一次Oracle 看来遇到问题多Google多分析 还是屡试不爽的
tnsnames ora中的内容
# TNSNAMES ORA Neork Configuration File: E:\oracle\ora \neork\admin\tnsnames ora # Generated by Oracle configuration tools INST _HTTP SOFT DEPT = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = tt)(PORT = )) ) (CONNECT_DATA = (SERVER = SHARED) (SERVICE_NAME = MODOSE) (PRESENTATION = //HRService) ) ) MYGOD SOFT DEPT = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = tt)(PORT = )) ) (CONNECT_DATA = (SERVICE_NAME = mygod) ) ) myDB SOFT DEPT = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = tt)(PORT = )) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = myDB) ) ) EXTPROC_CONNECTION_DATA SOFT DEPT = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC )) ) (CONNECT_DATA = (SID = PLSExtProc) (PRESENTATION = RO) ) ) myDB是安装时默认创建的 mygod时候来创建的 前者可以连接 后者不行
lishixinzhi/Article/program/Oracle/201311/18899
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)