達夢8開發版服務異常停止問題解析

2021-10-25 08:41:55 字數 3141 閱讀 8698

達夢資料庫因越來越強的系統穩定性和對oracle高度相容性,在國產化浪潮中走向前列,眾多行業開始採用達夢產品部署業務,本寶寶就在測試使用dm8過程中發現乙個問題。

達夢dm8開發版為資料庫管理員、軟體研發人員等提供服務,預設license是版本發布後一年的使用時長,並非系統安裝時間,例如v8.1.0.147在2023年3月27日發布,它的使用期限截止2023年3月26日,即使有人在2023年5月27日安裝使用,license也過期了。

本寶寶在2023年下半年使用時,發現達夢資料庫服務有時會自動停止,當時也沒在意,覺得測試環境可能影響的原因很多,例如虛機、網路等硬體環境限制,但是隨著測試工作全面開展,這個服務異常停止的問題就擺到了桌面上,不得不細究下原因,給出乙個分析結果。

分析資料庫故障原因,必須要看日誌,日誌有作業系統層面的,也有資料庫自己的,主要看資料庫自身日誌,達夢資料庫日誌在安裝目錄下log目錄下,我這裡的是

/home/dmdba/dmdbms/log

檢視都有哪些日誌

其中,dm_dmserver_202010.log 和dmservicedmserver.log是達夢資料庫日誌,命名方式dm_例項名_日期.log

分析資料庫服務,我的思路是既要看服務停止的日誌資訊,也要看服務啟動的日誌資訊,兩個相結合,才能有深入的理解。

開啟相應日誌檔案,找到服務停止時間

2020-10-25 04:12:50.692 [fatal] database p0000028018 main_thread license violation detected, or product has expired. system halt!

2020-10-25 04:12:50.692 [info] database p0000028018 main_thread total 3 rfil opened!

license violation detected, or product has expired. system halt!

很直觀,license過期,系統停止。

發現服務停止後,我手動起來

2020-10-26 08:43:05.181 [info] database p0000009503 main_thread version info: develop

2020-10-26 08:43:05.196 [info] database p0000009503 main_thread os_sema2_create_low, create and inc sema success, key:151433511, sem_id:98304, sem_value:1!

2020-10-26 08:43:05.214 [info] database p0000009503 main_thread dm database server x64 v8.1.0.147-build(2019.03.27-104581)ent startup…

2020-10-26 08:43:06.043 [info] database p0000009503 main_thread fil_sys_init

2020-10-26 08:43:06.203 [warning] database p0000009503 main_thread license will expire on 2020-11-09

這裡有兩條關鍵資訊

dm database server x64 v8.1.0.147-build(2019.03.27-104581)ent,這個版本發布時間是2023年3月27日,說明該版本一年使用時長的license早已過期,license will expire on 2020-11-09,license過期時間是2023年11月9日,可以看出這次僅可以使用到11月9日。

問題明了,dm8在license到期後會自動停止服務,這是它版權的一種保護形式。

為了證明我的猜想,往前翻了翻日誌,驗證我的猜想,這次更明晰,日誌中直接寫14天的使用時長。

2020-10-02 04:30:54.505 [fatal] database p0000009361 main_thread license violation detected, or product has expired. system halt!

2020-10-02 04:30:54.505 [info] database p0000009361 main_thread total 2 rfil opened!

2020-10-10 04:12:48.040 [info] database p0000028018 main_thread version info: develop

2020-10-10 04:12:48.057 [info] database p0000028018 main_thread os_sema2_create_low, create and inc sema success, key:151433511, sem_id:98304, sem_value:1!

2020-10-10 04:12:48.074 [info] database p0000028018 main_thread dm database server x64 v8.1.0.147-build(2019.03.27-104581)ent startup…

2020-10-10 04:12:48.861 [info] database p0000028018 main_thread fil_sys_init

2020-10-10 04:12:49.033 [warning] database p0000028018 main_thread license will expire in 14 day(s) on 2020-10-24

2020-10-10 04:12:49.046 [info] database p0000028018 main_thread initialize temp tablespace, file path: /home/dmdba/dmdbms/data/dameng/temp.dbf, code: 0

分析到這裡,之前遇到的服務異常停止問題有了答案,就是license到期的問題,同時也知道,dm8開發版在license過期後,重啟服務可以使用14天,這一點對系統管理員和軟體研發人員很關鍵,在小版本迭代時,無需重新部署安裝,只要重啟服務又能堅持一會。

原本想抓條大魚,沒想到達夢給了個小福利,願我們國產資料庫越來越強。

達夢8備份還原

二 還原 備份要求資料庫處於歸檔模式下,arch ini 1,開啟歸檔方法詳見另一片博文 達夢資料庫開啟歸檔模式 達夢管理工具,右鍵模式,匯出 要求資料處於open狀態 使用disql或dm管理工具執行sql backup database full backupset data db full b...

達夢8 安全控制

資料庫口令身份驗證 基於ukey的身份驗證 外部身份認證 外部身份驗證 資源限制,是用於限制使用者對達夢系統資源的使用,達夢提供了資源限制選項 僅列出部分選項 物件許可權 對錶的增刪改查 角色是一組許可權的集合 然後分為預定義角色和使用者自己定義的自定義角色。使用者自定義角色只能是管理類角色,系統不...

達夢dm8資料安裝

id dmdba 檢視是否有此使用者 groupadd dinstall 新增乙個組 useradd g dinstall dmdba 新增乙個使用者,並分配到dinstall組 passwd dmdba 為dmdba使用者設定密碼 chown dmdba dinstall r dm8 設定dm7這...