一、数据库存在锁表问题
1、查询数据库是否存在锁表
select count(*) from v$locked_object;

select * from v$locked_object;

2、查询哪张表被锁
select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id;

3、查询是哪个会话引起的
select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id = b.sid order by b.logon_time;

4、kill掉对应进程
alter system kill session'1025,41';
1025=SID
41=SERIAL#
二、ORA-12560:TNS:协议适配器错误解决步骤-20230525
错误描述:数据库巡检时发现使用sqlplus / as sysdba 无法登录数据库,同时报错如下:

大概确定是监听出问题了,查看监听

发现监听状态正常。没思路了,网上搜索解决方法。
https://blog.csdn.net/sword_anyone/article/details/90613996
按照链接介绍的3种排查方法,未发现问题,在师傅的帮助下,重新设置oracle_sid,登录恢复正常


三、ORA-12537:TNS:connection closed
问题背景:数据迁移后,sysdba可以正常登录,其他账号登录报连接关闭错误,报ORA-12537:TNS:connection closed,大概率是监听出问题了。排查

显示静态注册进去的
tnsping 192.168.1.123:1521/oracle11g
报错:解决 ORA-28547 连接服务器失败,可能是Oracle Net 管理错误
参考链接:https://blog.csdn.net/yzh18373476791/article/details/82050254
发现是listener.ora配置错误,多了两个配置项,按照链接删掉后恢复正常,其实是安装是就报这个错误了,但当时以为没影响,忽略了。记一下。




