<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    qileilove

    blog已經轉移至github,大家請訪問 http://qaseven.github.io/

    SQL server與Oracle數據庫鏡像對比

     “數據庫鏡像”是用于提高數據庫可用性的主要軟件解決方案。Oracle數據庫與SQL Server數據庫作為兩個應用非常廣泛的數據庫,在數據庫鏡像上的操作有很多的不同,通過對比,將會深入發現SQL Server與Oracle數據庫鏡像的不同。

      首先,微軟SQL Server數據庫中的鏡像數據庫類似于Oracle數據庫中的備用數據庫。我說的只是類似,確切的說,我們需要考慮不同數據庫在自己體系中的差異。SQL Server作為一個實例來操作,一個實例包含幾個數據庫,你首先要登錄一個實例,然后選擇哪個數據庫作用于該實例。而在Oracle數據庫中,簡單模式(忽略RAC)就只有一個數據庫與一個實例相聯系。因此,可以這么說,在Oracle數據庫中,備份數據庫(standby database)就完全是主數據庫的快照。而在SQL Server中,鏡像數據庫僅僅是選擇的那個數據庫的備份,但沒有包括代理,登錄,任務(這些或者更多的數據庫項目需要單獨在數據庫鏡像上創建或者復制)這些外部數據項。

      在服務器數量上,Oracle的主數據庫和備用數據庫配置最小需要2臺。在SQL Server中,最小數據是2個或3個,根據你所選擇的高可用性、高安全性、高性能方式所決定。

      高可用性方式:這個操作模式選項允許你在兩臺服務器上同步事務寫入,并支持自動錯誤恢復。要使用這個選項,你必須還要使用一個證人服務器。

      高保護方式:這個選項可以讓你在兩臺服務器上同步事物寫入,但是錯誤恢復是手工的。因為自動的錯誤恢復不是這個選項的一部分,所以也不會用到證人服務器。

      高性能方式:這個選項不關心兩臺服務器上的寫入是否是同步的,因此在性能上有所提高。當使用這個選項的時候,你只能假設鏡像服務器上的所有事情都是成功完成。這個選項只允許手工的錯誤恢復,因此不會用到證人服務器。

      為了保證故障自動恢復,就需要有第三臺服務器,可以稱之為目擊者(另外兩個就是主數據庫和鏡像數據庫),你可以將這個目擊者當作群集中的一個成員。它實現了2比1投票的能力,當我的一個組件不可達,并因此需要進行錯誤恢復的時候。證人服務器只有在你想實現自動錯誤恢復的時候才需要用到。

      在Oracle數據的一個事務中,日志緩沖器在廢數據寫入數據文件(忽略write-ahead情況)前被刷新或者寫入到redo日志中。這種刷新或者寫入到redo日志的行為是有必要的,如像實例失敗(使用前滾和回滾恢復過程)這樣的事件發生時。SQL Server也承認將日志緩沖器寫入到磁盤的重要性。不過這里稱之為硬化(hardening)。首先將事務日志緩沖器的信息寫入到磁盤或者硬化,接著將日志記錄塊發送到鏡像數據庫中。鏡像數據庫接收到該日志記錄塊后,將之存入到某個緩沖器中,隨后依次硬化該日志記錄塊。

      當數據發生變化時,SQL Server數據庫如何保持主數據庫和鏡像數據庫的一致性呢?

      Oracle用戶非常熟悉SCN,而SQL Server用戶通過使用mirroring_failover_lsn機制(粗略來講就是一個日志序列號)。SQL Server與Oracle不同,SQL Server將事務分離(兩個事務在兩個機器上),而不是一個分布式事務(在自身提交前需要遠程等待提交)。

      另外一個相似點,但稍微有些畸變的反射就是redo日志和事務日志。在Oracle中,完成的redo日志將被發送到遠程的服務器中,將完成的redo日志應用到備份數據中去。在SQL Server中,事務日志沒有被傳輸,但是就像我以上提到的,日志緩沖器數據發送到網絡上。這就導致另外一個鏡像反射:備份和恢復模式。

      在Oracle中,當你處于歸檔模式或者非歸檔模式的時候,這些操作是內定的。如果歸檔redo日志被傳輸或者提交到一個遠程的服務器,那么主數據庫明顯就是在歸檔模式下,那些文件就是這么產生的。運行在這種模式下,允許有少量的數據丟失,因為在發生故障(無論什么樣的故障)前,恢復能夠在任意一個點上執行。在SQL Server中是類似的,但是有三種狀態需要選擇。

      《SQL Server聯機叢書》,像許多其它的在線資源一樣,講述了在使用SQL Server時,3種恢復模式的不同點。快速的比較有:SQL Server完整模式對應于Oracle中的歸檔模式;簡單模式對應于非歸檔模式;bulk模式與使用直接路徑插入,添加提示,或者與nologging模式操作類似。

      根據以上三種模式(這三種模式很容易轉換,不需要關機或者重啟)的描述以及日志緩沖器和歸檔redo日志的討論中,很容易斷定在SQL Server中進行數據庫的鏡像需要將數據的回復模式設置成完全模式(full model)。簡單模式(Simple model)或許也能行,但是這種模式下維持事務日志中的小部分數據,在備份中,如果在日志被刪節了,整個鏡像過程也就破環了,因為當你在將事務發送到鏡像數據庫中的時候,如果日志被刪節了,這個過程就不能完成。

      說到數據庫被破壞該怎么辦呢?

      這正是鏡像(或者說備份)的主要目的:當主數據庫斷開或者說遇到故障時候我們希望系統能回到鏡像前或者備份前的狀況去。這如何才能實現呢?我們能自動實現或者手動實現。想實現這些,需要一些已經完成的設置。在SQL Server中,自動故障恢復,回到原來狀態需要在HA模式,事務安全是full,數據傳輸是同步,有目擊服務器的情況下。這種模式下運行還需要使用企業版的數據庫系統。高安全性和高性能在標準版的情況下也能實現。

      SQL Server還有其它版本的選擇,但是這些并不如Oracle的反射“干凈”,這些版本包括:Developer、Workgroup 和 SQL Express。舉個例子,目擊服務器能夠是任何的版本,但是如果你想給鏡像服務器做一個快照,那么你就需要企業或者開發版的了。

      在設置伙伴(partner,通常有主數據庫和鏡像數據庫組成)過程中,他們的恢復狀態開始起作用。通過使用相同的名字,鏡像在遠程/鏡像服務器上建立(使用配置數據庫鏡像安全向導是最簡單的方法)起來,并且鏡像數據庫被設置成NORECOVERY,通常它是恢復(recovering)狀態的。在SQL Server中,恢復數據庫是沒有的,因此沒有進行上述的設置,是不能被其他用戶當作只讀數據庫來使用的。

      為了避免這個中缺陷,你可以給鏡像做一個快照,使得該“影像”對用戶可見。正如我上述所提到的那樣,這需要你的數據庫版本是企業(或者開發)版。這就意味著用戶需要有快照數據庫的知識,知道如何進入存儲它,如何告訴應用程序使用哪個數據庫。慣例上來說,配置文件使用的.NET環境,你能建立一個主數據庫和一個故障回滾的輔數據庫。如果在Oracle中配置過備份數據庫,你就會覺得這很類似。

      結論

      這篇文章內容包括按照Oracle的方式,如何更好的理解在另一種主流的RDBMS上執行鏡像或者復制,。試著學習和解釋你的RDBMS如何工作的,從另外一種模式來得到你的注意有助于你搞清楚你當前數據庫系統運行原理。舉個例子,我發現非常有實用價值的是Oracle歸檔模式和SQL Server三種恢復模式之間的關系。使用在SQL Server中的一些術語(伙伴,主數據庫,目擊,鏡像)有助于你構成和識別Oracle中執行數據庫鏡像的操作。為了更好的評價數據庫鏡像是如何運作,如何實施的,你可以運行兩個單獨的SQL Server實例,操作系統是XP或者是2003都沒有關系。按照MSDN聯機叢書的步驟完成一遍。

      下載或者選用AdventureWorks數據庫(類似于Oracle的HR/SH數據庫等。這些都沒有預安裝的),將其鏡像到主機服務器上。呈現在你面前的不僅僅是另外一個數據的所具有功能特性,你將還會看到SQL Server所具有的操作,得到自己的正確評價。

      數據庫鏡像對于數據庫來說,是一個非常重要的應用,而通過不同平臺的對比,更能發現各種數據庫(比如SQL Server數據庫與Oracle數據庫鏡像對比)在數據庫鏡像上的不同。

    posted on 2012-06-12 09:41 順其自然EVO 閱讀(171) 評論(0)  編輯  收藏 所屬分類: 數據庫

    <2012年6月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    1234567

    導航

    統計

    常用鏈接

    留言簿(55)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲人成毛片线播放| 亚洲Av无码专区国产乱码DVD| 亚洲永久中文字幕在线| 久久成人无码国产免费播放| 曰韩亚洲av人人夜夜澡人人爽| 成人在线免费视频| 亚洲精品无码成人片在线观看| 一级毛片视频免费观看| 伊人婷婷综合缴情亚洲五月| 国产一级高青免费| 亚洲va久久久噜噜噜久久| 日本免费人成视频在线观看| 亚洲熟妇av一区| 日本免费电影一区| 色多多A级毛片免费看| 久久青青草原亚洲av无码| 久久久WWW成人免费精品| 亚洲成在人线av| 国产在线观看免费观看不卡| 伊人久久亚洲综合影院首页| 免费中文字幕不卡视频| 四虎国产精品免费永久在线| 久久夜色精品国产噜噜亚洲AV| 91免费播放人人爽人人快乐| 亚洲欧美国产日韩av野草社区| 四虎影视精品永久免费网站| 十八禁在线观看视频播放免费| 亚洲精品福利网站| 日本免费观看网站| 中文字幕无码免费久久9一区9| 亚洲精品视频在线播放| 永久黄网站色视频免费| 精品熟女少妇aⅴ免费久久| 亚洲精品在线播放视频| 日韩一区二区三区免费体验| 在线观看人成视频免费无遮挡| 亚洲精品在线视频观看| 亚洲国产成人精品91久久久| 57pao一国产成视频永久免费 | 亚洲精品在线不卡| 女人被男人躁的女爽免费视频 |