自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

DB2連接服務器出錯的解決方法

數(shù)據(jù)庫
DB2使用中,連接數(shù)據(jù)庫時有時會出現(xiàn)一些問題,本文為您詳細解析了其中兩個問題的解決辦法,供您參考,希望能對有所幫助。

DB2使用中,連接數(shù)據(jù)庫時有時會出現(xiàn)一些問題,本文為您詳細解析了其中兩個問題的解決辦法,供您參考,希望能對有所幫助。

1、DB2中幾種遇到的SQL1032N出錯的解決

在使用DB2以來,碰到了幾次出現(xiàn)提示SQL1032N錯誤,每次出錯時出錯信息大概如下:
11/21/2004 22:15:33 0 0 SQL1042C 發(fā)生意外的系統(tǒng)錯誤。
SQL1032N 未發(fā)出啟動數(shù)據(jù)庫管理器的命令。 SQLSTATE=57019。

每次出現(xiàn)問題后,都到網(wǎng)上找了很多資料,也問了許多人,費了些力才搞定的。幾次出錯的原因和解決方法都不盡相同,解決后我也只做了個簡單的記錄。一直想把它們寫下來,方便方便后來也遇到同樣問題,跟我一樣到處查找的人,中間也寫了一些廢話,比如我如何查找錯誤,甚至于作了哪些無用功。
第一種SQL1032N出錯,是某天DB2的實例突然無法啟動了,用db2start就提示大概如下的出錯信息:

12/30/2004 11:28:39 0 0 SQL1042C 發(fā)生意外的系統(tǒng)錯誤。
SQL1032N 未發(fā)出啟動數(shù)據(jù)庫管理器的命令。 SQLSTATE=57019。

初次遇到這種問題,還以為會不會是數(shù)據(jù)庫沒起來,情急之下什么命令比如激活數(shù)據(jù)庫只類的,都拿來試了試,實例都起不來,當時運行這些命令,肯定都是不行的了。
后來突然發(fā)現(xiàn),在開啟機器的時候,提示有個服務出錯了沒啟動,由此推想應該就是在Window服務里設置為自動啟動的DB2實例服務沒有正常啟動,我在服務里面手動啟動它,提示這樣的錯誤:

WINDOWS不能在本地計算機啟動DB2-DB2-0.有關更多信息,查閱系統(tǒng)事件日志.并參考特定服務代碼-8000.

查看事件管理器,有這樣的記錄:

DB2-DB2-0服務因4294959296服務性錯誤而停止.來源SERVICE CONTROL 事件ID:7024

做了這么多,全都是無用功,只限于知道了服務沒起來,等于沒找。
之后通過各方詢問,終于找到了原因:License到期了。
在db2cmd界面下運行db2licm -l,可以很明顯的看到許可證已經(jīng)過期了。
知道原因所在了,剩下的,就是自己想辦法去解決這個問題了。#p#

小結:直到現(xiàn)在,在有些論壇中,還很經(jīng)??吹接腥税l(fā)這種帖子來問,至少我在兩個月內(nèi)就碰到了三次這種帖子。所以,如果不是可以確定已經(jīng)有永久授權的情況下,發(fā)生這種情況,用db2licm -l查一下,也不算壞事。

還有一種情況,跟前面的差不多
也是在啟動實例的時候出現(xiàn)如上的SQL1032N錯誤。在windows NT服務中無法啟動DB2-DB0服務,同時提示:
出錯1069,登陸失敗錯誤。
這個錯誤比較簡單,是用來啟動服務的用戶名或密碼錯誤。只需要在服務的屬性中,選擇登陸選項卡,選擇用戶,并填好密碼,重新啟動服務就可以了。

小結:這種情況,一般發(fā)生在切換用戶登陸NT系統(tǒng)或者更改了DB2用戶的密碼的情況下。

第三種情況是這樣的:
最開始,是突然DB2的客戶端連接不上server了,提示如下:

C:Documents and SettingsAdministrator>db2 connect to fjdldw user install using install3211
SQL30081N 檢測到通信錯誤。正在使用的通信協(xié)議:"TCP/IP"。正在使用的通信API:
"SOCKETS"。檢測到錯誤的位置:"10.142.12.1"。檢測到錯誤的通信函數(shù):"connect"。協(xié)
議特定的錯誤代碼:"10061"、"*"、"*"。 SQLSTATE=08001

我本來還以為真是什么TCP/IP協(xié)議的問題,去查找了很多與SQL30081N錯誤相關的信息,都無法解決問題。后來到了在服務器上檢查,發(fā)現(xiàn)DB2實例未起來。
用db2start命令,仍是提示:

D:ProgramSQLLIBBIN>db2start
12/30/2004 11:28:39 0 0 SQL1042C 發(fā)生意外的系統(tǒng)錯誤。
SQL1032N 未發(fā)出啟動數(shù)據(jù)庫管理器的命令。 SQLSTATE=57019#p#

用db2 get dbm cfg查看配置文件,因未作過其他操作,所以沒有什么異常
查看相應實例下的db2diag.log文件,摘取真正有用的部分出錯日志:

Failed to create the memory segment used for communication with fenced routines. If re-starting db2, ensure no db2fmp processes were on the instance prior to start. Otherwise, you can ajust this value through DB2_FMP_COMM_HEAPSZ db2set value, or by decreasing your ASLHEAPSZ setting.

依據(jù)ensure no db2fmp processes were on the instance prior to start,將任務管理器里的db2fmp進程全部殺掉,然后重新啟動實例。db2start,OK!

小結:后來查了一查,db2fmp進程用于執(zhí)行受保護的存儲過程,或者自定義函數(shù)。這次出錯的原因,一直沒有弄清楚。但是,通過這次解決,可以說明一點,出了錯誤,查查db2diag.log文件,總是不會錯的。^_^

2、DB2許可證過期問題解決 && Eclipse之中jdbc調(diào)用DB2

最笨的辦法是將系統(tǒng)日期向前調(diào)。

使用的連接字符串如"jdbc:db2://10.10.50.194:50000/ebank",在獲取連接時出現(xiàn)異常如下:“com.ibm.db2.jcc.c.DisconnectException: encoding not supported!!”。在搜索Google未果后只好自己硬著頭皮找辦法解決。發(fā)現(xiàn)另外一個同事在WSAD中連接正常(我用的Eclipse),靈機一動將引用的JRE從Sun的標準JDK1.4.2換成了WSAD帶的IBM的JDK1.4,連接時正常!又是一個JDK的問題啊。

只之后可能會出現(xiàn)一個license的問題,需要將DB2之中的幾個db2jcc_license_cisuz.jar以及db2jcc_license_cu.jar加入到項目之中去。#p#

但是這樣仍然存在Timestamp從數(shù)據(jù)庫之中不能用,ResultSet.getTimestamp()讀出來的問題?如何解決?
耗了我將近一天的時間的采用"com.ibm.db2.jcc.DB2Driver"連接DB2數(shù)據(jù)庫的時候,讀取Timestamp類型的數(shù)據(jù)的時候老是出現(xiàn)異常的情況,報告出現(xiàn)ArrayOutofIndex什么的錯誤。今天,終于把它給解決了,原來,使用的DB2 V8.1之中帶的db2jcc.jar包是不正確的,改成了DB2 V8.2之中的帶的db2jcc.jar包程序就運行正確了。
經(jīng)驗,JDBC連接DB2數(shù)據(jù)庫的時候出現(xiàn)的很多的奇怪的問題是由包不對所導致的,遇到這種問題一定要檢查所使用的驅(qū)動的包是否正確。

3、SQL30081N 檢測到通信錯誤。正在使用的通信協(xié)議:"TCP/IP"。正在使用的通信API:"SOCKETS"。檢測到錯誤的位置:"192.168.1.12"。檢測到錯誤的通信函數(shù):"connect"。協(xié)議特定的錯誤代碼:"10061"、"*"、"*"。 SQLSTATE=08001

遇到該問題,有以下幾種方法去查找原因:
一、看看端口號有沒有配置正確,看一下配置參數(shù)svcename跟services文件中配置的db2端口號是否一致,windows一般用50000,unix/linux一般用60000
二、連接出錯首先看看服務器ip 和端口寫對沒有
ip如果沒錯就要看看服務器的db2服務端口對不對。另外對于服務器下面這些也要注意

檢查服務器的配置情況如下:

驗證存在的DB2數(shù)據(jù)庫
db2 list db directory
db2 list db directory show detail
驗證實例使用的通訊協(xié)議,查看DB2COMM變量
db2set -all
查看數(shù)據(jù)庫管理器的配置,查看SVCENAME(特指tcpip協(xié)議)
db2 get dbm cfg
查看/etc/services中,有無與上面對應SVCENAME的端口,例如:
db2cDB2 50000/tcp

要確認服務器是否在監(jiān)聽,可以用netstat -an 來查看端口是否處于LISTEN狀態(tài)

責任編輯:段燃 來源: 互聯(lián)網(wǎng)
相關推薦

2010-11-02 16:51:33

DB2連接服務器

2010-11-02 16:57:06

DB2客戶端連接

2010-08-02 09:27:22

DB2連接服務器

2010-08-16 17:36:48

DB2連接服務器

2010-08-11 14:10:40

DB2連接服務器

2010-08-05 08:54:03

DB2連接服務器

2010-09-07 10:55:39

DB2連接服務器

2010-07-30 11:34:09

DB2連接服務器

2010-07-29 09:06:32

DB2連接服務器

2010-08-31 11:35:38

DB2連接SQL SERVER

2010-08-06 15:05:04

IBM DB2連接集中

2010-11-04 10:44:27

DB2 not fou

2010-08-04 17:29:00

DB2連接服務器

2010-11-03 09:34:39

DB2臨時表

2010-11-02 16:02:59

db2表空間

2010-08-27 10:13:09

DB2服務器安裝

2010-08-13 14:46:08

DB2 -964

2010-08-18 16:04:49

DB2連接端口

2011-08-22 14:29:12

PowerDesignOracle

2010-10-19 12:22:02

SQL Server遠
點贊
收藏

51CTO技術棧公眾號