概述
因为最近在梳理一些数据库,有一个老系统需要开归档和闪回,一开始sqlplus / as sysdba进不去,所以采用sqlplus username/pwd@host/service_name登录上去数据库,在关闭数据库准备进mount状态时入坑了..
报错
报错截图如下:
思路
第一、解决as sysdba直连的问题
一般是sqlnet.ora配置问题,oracle_sid设置错误或者监听日志超过4g。
第二、设置静态注册的监听
解决过程
1、查看监听状态
2、设置实例ID
因为这个老系统有多个实例,这里考虑是不是ORACLE_SID导致了(windows不熟,没办法)
但是设置ORACLE_SID后还是进不去
3、配置静态监听
发现之前的静态监听配置语法写错了,这里一定要记得把之前的监听配置文件备份!!
修改配置文件如下:
SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = fslda) (ORACLE_HOME = E:appAdministratorproduct11.2.0dbhome_1) (SID_NAME = fslda) ) )
用网络连接方式
可以发现已经可以登录进来了。
4、解决sqlplus直连问题
检查配置文件发现sqlnet.ora配置问题
//只能远程连接sqlnet.oraSQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
去掉这一行就可以了。
今天主要简单记录一下最近碰到的监听问题,老系统果然坑很多啊。
后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注一下~