Oracle 故障:[6]ora-12516
1、查看当前实例会话数
单实例:select count(*) from v$session ;查看实例会话数
rac :需要查看每个实例的会话数
查看发现:
node1------>45个
node2------>102个
注释:查找的个数是查找这一时刻的数量,并不代表出现报错的数量
2、查看数据库process设置上限数
SQL> show parameter process
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
db_writer_processes integer 2
gcs_server_processes integer 0
job_queue_processes integer 10
log_archive_max_processes integer 2
processes integer 200
3、查看数据库session 设置上限数
SQL> show parameter session
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
java_max_sessionspace_size integer 0
java_soft_sessionspace_limit integer 0
license_max_sessions integer 0
license_sessions_warning integer 0
logmnr_max_persistent_sessions integer 1
session_cached_cursors integer 20
session_max_open_files integer 10
sessions integer 126
shared_server_sessions integer
4、设置process和session数量
aler system set sessions=2000 scope=spfile sid='*';
aler system set processes=1000 scope=spfile sid='*';
5、初始化参数需要重启验证
关闭数据库时需要通知开发人员将应用程序关闭,然后再重启数据库
6、原因分析
造成报错的原因是应用连接数增大,可能是某个时刻数据量增大,需要增加会话数。