636。根據(jù)各個(gè)實(shí)施 例,這些程序模塊可包括處理單元602可執(zhí)行來(lái)執(zhí)行以上參考圖1來(lái)描述的客戶端102和 數(shù)據(jù)庫(kù)服務(wù)器104及其各子組件(如在本文別處描述的)的任何或所有功能和特征的計(jì)算 機(jī)程序邏輯。程序模塊還可包括當(dāng)被處理單元602執(zhí)行時(shí)執(zhí)行參考圖4和5的流程圖示出 或描述的任何步驟或操作的計(jì)算機(jī)程序邏輯。
[0082] 用戶可以通過(guò)諸如鍵盤638和指點(diǎn)設(shè)備640之類的輸入設(shè)備向系統(tǒng)600中輸入命 令和信息。其它輸入設(shè)備(未示出)可包括話筒、操縱桿、游戲控制器、掃描儀等等。在一 個(gè)實(shí)施例中,結(jié)合顯示器644提供觸摸屏以允許用戶通過(guò)向觸摸屏上的一個(gè)或多個(gè)點(diǎn)施加 觸摸(例如通過(guò)手指或指示筆)來(lái)提供用戶輸入。這些及其他輸入設(shè)備常常通過(guò)耦合到總 線606的串行端口接口 642連接到處理單元602,但是,也可以通過(guò)其他接口,諸如并行端 口、游戲端口、通用串行總線(USB)端口,來(lái)進(jìn)行連接。
[0083] 顯示器644還通過(guò)諸如視頻適配器646之類的接口連接到總線606。除了顯示器 644之外,系統(tǒng)600還可包括其他外圍輸出設(shè)備(未示出),如揚(yáng)聲器和打印機(jī)。
[0084] 系統(tǒng)600通過(guò)網(wǎng)絡(luò)接口或適配器650、調(diào)制解調(diào)器652或其它用于在網(wǎng)絡(luò)上建立 通信的適當(dāng)手段連接到網(wǎng)絡(luò)648 (例如,局域網(wǎng)或諸如因特網(wǎng)之類的廣域網(wǎng))。調(diào)制解調(diào)器 652 (可以是內(nèi)置的或外置的)通過(guò)串行端口接口 642連接到總線606。
[0085] 如此處所用的,術(shù)語(yǔ)"計(jì)算機(jī)程序介質(zhì)"以及"計(jì)算機(jī)可讀介質(zhì)"用于泛指非瞬態(tài) 介質(zhì),諸如用于實(shí)現(xiàn)系統(tǒng)存儲(chǔ)器604的ROM 608和RAM 610、與硬盤驅(qū)動(dòng)器614相關(guān)聯(lián)的硬 盤、可移動(dòng)磁盤618、可移動(dòng)光盤622,以及其他介質(zhì),諸如閃存卡、數(shù)字視頻盤等。
[0086] 如上文所指示的,計(jì)算機(jī)程序和模塊(包括應(yīng)用程序632及其他程序模塊634)可 被儲(chǔ)存在ROM 608、RAM 610、與硬盤驅(qū)動(dòng)器614相關(guān)聯(lián)的硬盤、可移動(dòng)磁盤618或可移動(dòng)光 盤622上。這樣的計(jì)算機(jī)程序也可以通過(guò)網(wǎng)絡(luò)接口 650或串行端口接口 642來(lái)接收。這些 計(jì)算機(jī)程序在由處理單元602執(zhí)行時(shí)使得系統(tǒng)600能夠?qū)崿F(xiàn)此處所討論的實(shí)施例的特征。 相應(yīng)地,這樣的計(jì)算機(jī)程序表示系統(tǒng)600的控制器。
[0087] 實(shí)施例還涉及包括存儲(chǔ)在任何計(jì)算機(jī)可讀介質(zhì)上的軟件的計(jì)算機(jī)程序產(chǎn)品。這樣 的軟件,當(dāng)在一個(gè)或多個(gè)數(shù)據(jù)處理設(shè)備中執(zhí)行時(shí),使數(shù)據(jù)處理設(shè)備如此處所描述的那樣操 作。實(shí)施例可使用現(xiàn)在已知或?qū)?lái)知曉的任何計(jì)算機(jī)可使用或計(jì)算機(jī)可讀介質(zhì)。計(jì)算機(jī)可 讀介質(zhì)的示例包括,但不僅限于,諸如R〇M、RAM、硬盤驅(qū)動(dòng)器、軟盤、CD R0M、DVD R0M、zip磁 盤、磁帶、磁存儲(chǔ)設(shè)備、光存儲(chǔ)設(shè)備、基于MEMS的存儲(chǔ)設(shè)備、基于納米技術(shù)的存儲(chǔ)設(shè)備等等 之類的存儲(chǔ)設(shè)備。
[0088] 在替換實(shí)現(xiàn)中,上面參考圖1-3來(lái)描述的客戶端102和數(shù)據(jù)庫(kù)服務(wù)器104以及其 各子組件中的每一個(gè)可被實(shí)現(xiàn)為硬件邏輯/電路系統(tǒng)或固件。根據(jù)進(jìn)一步實(shí)施例,這些組 件中的一個(gè)或多個(gè)可被實(shí)現(xiàn)在片上系統(tǒng)(SoC)中。SoC可包括集成電路芯片,該集成電路芯 片包括以下一個(gè)或多個(gè):處理器(如微控制器、微處理器、數(shù)字信號(hào)處理器0SP)等等)、存 儲(chǔ)器、一個(gè)或多個(gè)通信接口、和/或用于執(zhí)行其功能的進(jìn)一步的電路和/或嵌入的固件。
[0089] VI ?結(jié)語(yǔ)
[0090] 雖然以上描述了不同的實(shí)施例,但應(yīng)當(dāng)理解的是它們只是作為示例而非限制。對(duì) 于相關(guān)領(lǐng)域的技術(shù)人員顯而易見(jiàn)的是,可以對(duì)其做出各種改變而不背離本發(fā)明的精神和范 圍。因此,此處所公開(kāi)的本發(fā)明的寬度和范圍不應(yīng)被上述所公開(kāi)的示例性實(shí)施例所限制,而 應(yīng)當(dāng)僅根據(jù)所附權(quán)利要求書(shū)及其等同替換來(lái)定義。
【主權(quán)項(xiàng)】
1. 一種計(jì)算機(jī)實(shí)現(xiàn)的方法,包括: 監(jiān)視在數(shù)據(jù)庫(kù)服務(wù)器的環(huán)境中發(fā)生的事件和由所述數(shù)據(jù)庫(kù)服務(wù)器生成的執(zhí)行錯(cuò)誤中 的至少一者; 基于對(duì)所監(jiān)視的事件和所監(jiān)視的執(zhí)行錯(cuò)誤中的至少一者的分析來(lái)檢測(cè)問(wèn)題狀況;以及 響應(yīng)于檢測(cè)到所述問(wèn)題狀況,向通信連接至所述數(shù)據(jù)庫(kù)服務(wù)器的客戶端的數(shù)據(jù)庫(kù)驅(qū)動(dòng) 程序發(fā)送一個(gè)或多個(gè)命令,所述一個(gè)或多個(gè)命令指定要由所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序響應(yīng)于所述 問(wèn)題狀況采取的一個(gè)或多個(gè)動(dòng)作。
2. 如權(quán)利要求1所述的方法,其特征在于,向所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序發(fā)送所述一個(gè)或多 個(gè)命令包括: 作為應(yīng)用層請(qǐng)求/響應(yīng)協(xié)議的一部分在所述數(shù)據(jù)庫(kù)服務(wù)器和所述客戶端之間建立的 會(huì)話的上下文內(nèi)向所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序發(fā)送所述一個(gè)或多個(gè)命令。
3. 如權(quán)利要求2所述的方法,其特征在于,作為應(yīng)用層請(qǐng)求/響應(yīng)協(xié)議的一部分在所述 數(shù)據(jù)庫(kù)服務(wù)器和所述客戶端之間建立的會(huì)話的上下文內(nèi)向所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序發(fā)送所述 一個(gè)或多個(gè)命令包括: 作為表格數(shù)據(jù)流協(xié)議的一部分在所述數(shù)據(jù)庫(kù)服務(wù)器和所述客戶端之間建立的會(huì)話的 上下文內(nèi)向所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序發(fā)送所述一個(gè)或多個(gè)命令。
4. 如權(quán)利要求2所述的方法,其特征在于,作為應(yīng)用層請(qǐng)求/響應(yīng)協(xié)議的一部分在所述 數(shù)據(jù)庫(kù)服務(wù)器和所述客戶端之間建立的會(huì)話的上下文內(nèi)向所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序發(fā)送所述 一個(gè)或多個(gè)命令包括: 生成對(duì)從所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序接收的請(qǐng)求的響應(yīng); 將所述一個(gè)或多個(gè)命令添加到所述響應(yīng);以及 將經(jīng)修改的響應(yīng)添加到所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序。
5. 如權(quán)利要求1所述的方法,其特征在于,檢測(cè)所述問(wèn)題狀況包括檢測(cè)從所述數(shù)據(jù)庫(kù) 服務(wù)器到替代數(shù)據(jù)庫(kù)服務(wù)器的故障轉(zhuǎn)移即將發(fā)生。
6. 如權(quán)利要求1所述的方法,其特征在于,向所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序發(fā)送所述一個(gè)或多 個(gè)命令包括向所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序發(fā)送指示以下的至少一個(gè)指令: 期間所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序不應(yīng)當(dāng)嘗試重連至所述數(shù)據(jù)庫(kù)服務(wù)器的時(shí)間段; 如何對(duì)特定類別的錯(cuò)誤作出反應(yīng); 連接應(yīng)當(dāng)被從所述數(shù)據(jù)庫(kù)服務(wù)器切換至替代數(shù)據(jù)庫(kù)服務(wù)器; 數(shù)據(jù)庫(kù)操作要被傳送至所述數(shù)據(jù)庫(kù)服務(wù)器的速率; 所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序要被更新至新版本; 服務(wù)器信息的客戶端側(cè)高速緩存要被清空; 數(shù)據(jù)庫(kù)服務(wù)器數(shù)據(jù)或其一部分的經(jīng)高速緩存的視圖要被刷新; 用于扇出或分區(qū)式查詢支持的新映射集;或 客戶端連接串或邏輯名稱與數(shù)據(jù)源之間的邏輯映射要被管理或更新。
7. 如權(quán)利要求1所述的方法,其特征在于,向所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序發(fā)送所述一個(gè)或多 個(gè)命令包括向所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序發(fā)送被配置成使得所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序收集故障診斷 信息的至少一個(gè)命令。
8. 如權(quán)利要求1所述的方法,其特征在于,至少所述發(fā)送步驟是由所述數(shù)據(jù)庫(kù)服務(wù)器 或通信連接在所述數(shù)據(jù)庫(kù)服務(wù)器和所述客戶端之間的網(wǎng)關(guān)執(zhí)行。
9. 一種數(shù)據(jù)庫(kù)服務(wù)器,包括: 一個(gè)或多個(gè)處理器; 存儲(chǔ)供所述一個(gè)或多個(gè)處理器執(zhí)行的程序模塊的存儲(chǔ)介質(zhì),所述程序模塊包括: 環(huán)境讀取器,所述環(huán)境讀取器能操作以標(biāo)識(shí)在所述數(shù)據(jù)庫(kù)服務(wù)器的環(huán)境中發(fā)生的事 件;以及 問(wèn)題檢測(cè)引擎,所述問(wèn)題檢測(cè)引擎能操作以基于對(duì)由所述環(huán)境讀取器標(biāo)識(shí)的事件以及 由所述數(shù)據(jù)庫(kù)服務(wù)器生成的執(zhí)行錯(cuò)誤中的一者或多者的分析來(lái)檢測(cè)問(wèn)題狀況,以及響應(yīng)于 檢測(cè)到所述問(wèn)題狀況將一個(gè)或多個(gè)命令發(fā)送至通信連接至所述數(shù)據(jù)庫(kù)服務(wù)器的客戶端的 數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序,所述一個(gè)或多個(gè)命令指定要由所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序響應(yīng)于所述問(wèn)題狀況 采取的一個(gè)或多個(gè)動(dòng)作。
10. -種系統(tǒng),包括: 一個(gè)或多個(gè)處理器; 存儲(chǔ)由所述一個(gè)或多個(gè)處理器執(zhí)行的程序模塊的存儲(chǔ)介質(zhì),所述程序模塊包括: 應(yīng)用;以及 數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序,所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序能操作以代表所述應(yīng)用執(zhí)行數(shù)據(jù)庫(kù)操作,所述 數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序進(jìn)一步包括: 命令讀取器,所述命令讀取器能操作以接收來(lái)自數(shù)據(jù)庫(kù)服務(wù)器的一個(gè)或多個(gè)命令,所 述一個(gè)或多個(gè)命令指定響應(yīng)于數(shù)據(jù)庫(kù)服務(wù)器標(biāo)識(shí)的問(wèn)題狀況要采取的一個(gè)或多個(gè)動(dòng)作;以 及 命令處理器,所述命令處理器能操作以執(zhí)行所述一個(gè)或多個(gè)命令。
【專利摘要】一種數(shù)據(jù)庫(kù)服務(wù)器,包括能操作以至少監(jiān)視或分析在該數(shù)據(jù)庫(kù)服務(wù)器的環(huán)境內(nèi)發(fā)生的事件和/或由該數(shù)據(jù)庫(kù)服務(wù)器生成的執(zhí)行錯(cuò)誤,以便檢測(cè)問(wèn)題狀況是否存在的邏輯。該數(shù)據(jù)庫(kù)服務(wù)器進(jìn)一步包括能操作以向通信連接至所述數(shù)據(jù)庫(kù)服務(wù)器的客戶端的數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序發(fā)送一個(gè)或多個(gè)命令的邏輯,所述一個(gè)或多個(gè)命令指定要由所述數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序響應(yīng)于所述問(wèn)題狀況的存在采取的一個(gè)或多個(gè)動(dòng)作。該數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序包括能操作以接收來(lái)自數(shù)據(jù)庫(kù)服務(wù)器的一個(gè)或多個(gè)命令的邏輯以及能操作以使該一個(gè)或多個(gè)命令被執(zhí)行的邏輯。
【IPC分類】G06F11-07
【公開(kāi)號(hào)】CN104756082
【申請(qǐng)?zhí)枴緾N201380054161
【發(fā)明人】M·A·內(nèi)林克斯, L·F·桑托斯, O·伊格那特, D·B·洛美特, Q·布拉德利, R·拉姆, C·J·馬姆弗德, P·吉沃德加克, B·姆更丹
【申請(qǐng)人】微軟公司
【公開(kāi)日】2015年7月1日
【申請(qǐng)日】2013年10月16日
【公告號(hào)】EP2909723A2, US20140108868, WO2014062748A2, WO2014062748A3