千家信息网

一卡通vip充值消费线上oracle库服务器故障排查过程

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,上图是oracle体系总架构图今天突然公司所有终端pos机不能刷卡消费,财务室不能充值,一下很多电话打过来了,第一反应肯定数据库出问题了,登陆到数据库服务器,果然sqlplus连进去后就不断提示要求输
千家信息网最后更新 2024年11月23日一卡通vip充值消费线上oracle库服务器故障排查过程

上图是oracle体系总架构图

今天突然公司所有终端pos机不能刷卡消费,财务室不能充值,一下很多电话打过来了,第一反应肯定数据库出问题了,登陆到数据库服务器,果然sqlplus连进去后就不断提示要求输入用户名,弹出一下提示:

ERROR:
ORA-00020: maximum number of processes (150) exceeded
Enter user-name: sys
Enter password:
ERROR:
ORA-00020: maximum number of processes (150) exceeded
Enter user-name: sys
Enter password:
ERROR:
ORA-01017: invalid username/password; logon denied
SP2-0157: unable to CONNECT to ORACLE after 3 attempts, exiting SQL*Plus

思考分析了一会,果断把oracle通过任务管理器把其相关进程给杀了,终于可以进去了,通过研究,解决办法如下:

oracle@wu101:~> sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Fri Nov 15 17:07:40 2013

Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> show parameter processes;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 1
db_writer_processes integer 1
gcs_server_processes integer 0
global_txn_processes integer 1
job_queue_processes integer 1000
log_archive_max_processes integer 4
processes integer 150
SQL> alter system set processes=1500 scope = spfile;

System altered.

SQL> commit;

Commit complete.

SQL> shutdown abort # 这个命令慎重执行,若是在生产环境下,还是用"shutdown immediate"比较好,小白是自己的环境,才如此暴力强制下线的。
ORACLE instance shut down.
SQL> startup
ORACLE instance started.

Total System Global Area 1603411968 bytes
Fixed Size 2228784 bytes
Variable Size 1073745360 bytes
Database Buffers 520093696 bytes
Redo Buffers 7344128 bytes
Database mounted.
Database opened.
SQL> show parameter processes;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 1
db_writer_processes integer 1
gcs_server_processes integer 0
global_txn_processes integer 1
job_queue_processes integer 1000
log_archive_max_processes integer 4
processes integer 1500


windows上的oracle的pfile和spfile的路径在如下目录:

D:\app\Administrator\product\11.2.0\dbhome_1\database

今天给大家分享一个oracle问题的解决实例

如启动Oracle时提示"ORA-00600: internal error code, arguments"错误?

SQL> startup

ORA-00600: internal error code, arguments: [ksunfy : too few sessions], [9504], [75040], [], [], [], [], [], [], [], [], []"

解决办法:这里的错误说明Oracleprocessessessions的值调的太大了。

(1)修改processessessions的值,可先通过目前有问题的spfile创建成新的pfile,因为pfile是文本文件,它才打得开,用以下命令创建:create pfile from spfile;然后到D:\app\Administrator\product\11.2.0\dbhome_1\databasevim INIThlecard.ORA,然后修改里面的值,如下:

*.processes=10000

*.sessions=10000

保存

2SQL> create spfile from pfile

File created.

SQL> startup

ORACLE instance started.

Total System Global Area 8.5516E+10 bytes

Fixed Size 2237776 bytes

Variable Size 8858372784 bytes

Database Buffers 7.6504E+10 bytes

Redo Buffers 151142400 bytes

Database mounted.

Database opened.


0