一卡通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通過任務管理器把其相關進程給殺了,終於可以進去了,通過研究,解決辦法如下:
[email protected]:~> 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], [], [], [], [], [], [], [], [], []”
解決辦法:這裏的錯誤說明Oracle的processes和sessions的值調的太大了。
(1)修改processes和sessions的值,可先通過目前有問題的spfile創建成新的pfile,因為pfile是文本文件,它才打得開,用以下命令創建:create pfile from spfile;然後到D:\app\Administrator\product\11.2.0\dbhome_1\database下vim INIThlecard.ORA,然後修改裏面的值,如下:
*.processes=10000
*.sessions=10000
保存
(2)SQL> 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.
本文出自 “流顆星” 博客,請務必保留此出處http://liukexing.blog.51cto.com/1180302/1973619
一卡通vip充值消費線上oracle庫服務器故障排查過程