早上上班開發反饋用於bi系統的sql server 數據庫連不上,應用全掛了,zabbix 監控也在預警。
看監控晚上4點05分sql server 服務已經停止了,於是立馬登陸服務器開啟sql server 服務,恢復應用要緊。服務、應用恢復正常后,需要找出數據庫服務停止的原因。
首先檢查windows 服務器log,發現報錯如下:
接着查看sql server log ,發現報錯如下:
結合報錯log,懷疑和 oracle 有關,sql server 上有建立linked server 指向oracle 報表數據庫,用於定時job 同步數據到sql server 中bi 系統展現使用。
查看 用於數據同步的job log,該job 每2分鍾執行一次,4點鍾的時候執行有中斷
懷疑是bug,搜索微軟網站,找到如下說明:
用於數據同步的存儲過程sql中確實有--特殊字符 ,看起來微軟也沒有提供修復此bug的補丁,只能宣導開發在有linked server 的查詢中避免使用--特殊符號以免觸發bug 導致sql server 服務崩潰。







