背景:現在公司內部發現設備上面的上位機軟體偶發的發生崩潰閃退,上位機是用C++語言開發,MFC,VC6編譯生成,32位,運行的機子是廠商提供的工控機,工控機系統是Win7。資料庫選用的是Oracle,工控機上安裝的客戶端版本是:11.2.0,32位
發現后我做了什么:首先我是在設備上面設定了崩潰生成dump檔案的設定,今天發現已經有好幾個dump檔案生成,我是winDbg進行決議查看,我認為的關鍵內容如下:
STACK_TEXT:
132be3a4 7660c54f KERNELBASE+0xc54f
132be3fc 14c79b5e orageneric11+0x7b9b5e
132be414 14c6005c orageneric11+0x7a005c
132be41c 1490faa5 orageneric11+0x44faa5
132be428 1490fcdd orageneric11+0x44fcdd
132be470 14c65583 orageneric11+0x7a5583
132be9a8 747b03bb kernel32+0x503bb
132bea30 774b5be7 ntdll+0x75be7
132cffdc 774798d5 ntdll+0x398d5
STACK_COMMAND: .ecxr ; kb ; ** Pseudo Context ** Pseudo ** Value: 213d9127f80 ** ; kb
THREAD_SHA1_HASH_MOD_FUNC: 35c072414c3bf12038c2631e587df45cc1887768
THREAD_SHA1_HASH_MOD_FUNC_OFFSET: 2a59991482b0239c6d2e7b920094c6111d6d84f3
THREAD_SHA1_HASH_MOD: 35c072414c3bf12038c2631e587df45cc1887768
FOLLOWUP_IP:
KERNELBASE+c54f
7660c54f c9 leave
FAULT_INSTR_CODE: 10c2c9
SYMBOL_STACK_INDEX: 0
FOLLOWUP_NAME: MachineOwner
EXCEPTION_CODE: (NTSTATUS) 0x589c957a - <Unable to get error code text>
EXCEPTION_CODE_STR: 589C957A
EXCEPTION_STR: WRONG_SYMBOLS
IMAGE_NAME: ntdll.wrong.symbols.dll
那么崩潰應當是由orageneric11引發的,而orageneric11又是oracle的組建。
那么我的推論是上位機的例外崩潰是由于本地資料庫的例外導致,但是是什么例外無法得知。
大家認為我的看法對么?各位大佬有遇到過此類問題么?后續是如何解決的?
uj5u.com熱心網友回復:
資料庫具體什么版本 11.2.0.1 還是11.2.0.4 ?uj5u.com熱心網友回復:
如果是11.2.0.1的話,升級吧,這個版本相當于是個測驗版本,出現問題很正常,目前11G的資料庫基本都是用11.2.0.4uj5u.com熱心網友回復:
的確是11.2.0.1,為什么說這個是個測驗版本?哪里可以查閱出這個版本的說明資訊呢?請指點uj5u.com熱心網友回復:
當時怎么會安裝這個版本呢? 這個版本的資料庫是oracle放出來給用戶測驗使用的。就是相當于這個版本才開發出來,還不成熟的產品,不知道會出現哪些問題,放出來讓大家幫忙測驗。正式庫是不會安裝這個版本的uj5u.com熱心網友回復:
多謝指教多謝指教,怎么說呢,小公司,能用就上了這個,沒人會注意這些細節uj5u.com熱心網友回復:
登錄oracle管理員用戶,資料泵完全匯出資料庫,完全卸載當前版本oracle,安裝新版本oracle,最后匯入資料
uj5u.com熱心網友回復:
多謝指教多謝指教,怎么說呢,小公司,能用就上了這個,沒人會注意這些細節
當時怎么會安裝這個版本呢? 這個版本的資料庫是oracle放出來給用戶測驗使用的。就是相當于這個版本才開發出來,還不成熟的產品,不知道會出現哪些問題,放出來讓大家幫忙測驗。正式庫是不會安裝這個版本的
登錄oracle管理員用戶,資料泵完全匯出資料庫,完全卸載當前版本oracle,安裝新版本oracle,最后匯入資料
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/21261.html
標籤:開發
上一篇:plsql操作問題
