背景
同事的Windows上面的Oracle数据库出现问题
简单帮忙看了下:
反馈的是监听出问题。
一开始的确是提示信息为:
监听xxx有问题。
NL-00303: NV 字符串中存在语法错误
解决思路
字符串存在语法错误,大部分是换行符等问题引起的。
需要注意的是,配置文件的位置一般为:
C:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
将Windows上面的文件复制出来会发现比较诡异的情况:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC=
(GLOBAL_DBNAME=ORCL)
(ORACLE_HOME=C:\app\Administrator\product\11.2.0\dbhome_1)
(SID_NAME=ORCL))
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
ADR_BASE_LISTENER = C:\app\Administrator
问题解决
配置文件里面多了多个空行: 修改为:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC=
(GLOBAL_DBNAME=ORCL)
(ORACLE_HOME=C:\app\Administrator\product\11.2.0\dbhome_1)
(SID_NAME=ORCL))
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
ADR_BASE_LISTENER = C:\app\Administrator
启动监听
lsnrctl start 可以正常监听
SGA区域问题
sqlplus as sysdba
startup
时发现 sga大于了memory_target
服务无法启动,解决方法也简单
create pfile='C:\app\Administrator\product\11.2.0\dbhome_1\dbs\initorcl.ora' from spfile
然后修改一下 C:\app\Administrator\product\11.2.0\dbhome_1\dbs\initorcl.ora 的内容
startup pfile='C:\app\Administrator\product\11.2.0\dbhome_1\dbs\initorcl.ora'
create spfile from pfile
问题解决。
文章转载自济南小老虎,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




