資料庫架構的公升級和變更

2021-09-07 16:40:01 字數 3692 閱讀 9805

原文:

資料庫架構的公升級和變更

sqlserver2008在資料的高安全、高效能、高可用方面的技術已經比較成熟,這些技術和方案都是隨著很多公司的業務和資料訪問壓力的增加而不斷的公升級和

變遷的,同時經歷了方方面面的考驗,證明了它們都是成熟可靠的,下面就這方面的技術方案和變遷過程來做一些分析。

階段一:

裸奔時代:

優點:裸奔最大的好處就是簡單,成本低。

缺點:一旦伺服器出現問題,恢復起來比較麻煩;如果訪問壓力變大,伺服器可能不堪重負。

階段二:

單庫+mirror+backup方案:

說明:mirror有兩種方式,同步和非同步;同步方式能保證主庫和mirror端資料的一致性,而且不需要使用企業版,但是對主庫的效能影響也比較大;非同步方式需要

企業版才支,絕大部分時刻能保證資料的一致性,但是也有丟失小部分的資料可能,不過它對主庫的影響比較小。

優點:此方案對主庫的資料提供了可靠的保護,一旦主庫出現問題,從庫能在比較短的時間內恢復,尤其是資料庫很大時(從備份恢復需要的時間會很長),能盡

快的恢復業務使用,而且mirror端能生成快照,能給實時性要求不高的業務使用。

還需要將賬號、許可權和作業等資訊遷移過去。

單庫+replication+ backup方案:

優點:replication端可以提供給前段訪問,可以將讀操作放到從庫,分擔主庫的部分壓力,還能提供資料庫的備份功能,不過這種備份很可能資料會有丟失。

缺點:不能提供安全的資料保護功能,對主庫有一些效能影響。

階段三:

單庫+replication+mirror+backup方案:

優點:這種方案是前面兩種方案的結合,既能夠解決資料保護的問題,也能夠提供讀寫分離的功能。

缺點:主庫上既有mirror又有replication,這種方式對主庫影響會比較大,而且實際證明,mirror和replication在同一臺機器上部署,在乙個出現問題時,

會對另一成影響

階段四:

cluster(雙a)+backup方案:

說明:圖中矩形部分代表儲存,兩台伺服器做了雙a的群集。

優點:cluster能確保其中的乙個伺服器出現問題時所有的資料和服務能切換到另外一台機器,切換的時間很短,能盡快的恢復業務訪問。

缺點:雙a群集一般要求配置比較好,**比較高;因資料都存放在儲存上,所以群集不能保護資料,一旦資料或者儲存出現問題,需要從備份中恢復資料;

sqlserver的群不能提供負載均衡的功能

階段五:

cluster(雙a)+mirror+backup方案:

說明:雙a群集再加兩個伺服器上庫的mirror保護。

優點:這個方案能對資料提供可靠的保護,無論是伺服器故障還是儲存故障,都能保證資料的安全,而且資料恢復的時間比較短。

缺點:mirror會消耗主伺服器的部分效能,多了兩台mirror機器,成本會增加,如果儲存出現問題,快速恢復的方案是啟用mirror機器,後面可能需要重做群集。

階段六:

cluster(雙a)+mirror+backup+replication+單分發方案:

說明:雙a 群集,mirror保護,單分發機器和讀寫分離方案。

優點:群集和mirror能充分保護資料的安全,讀寫分離能提高系統整體的效能。

缺點:成本較高,單分發機存在單點故障,如果分發機器出現問題,將需要重建,此時讀和寫都將集中到主庫,壓力會比較大。

cluster(雙a)+mirror+backup+replication+雙分發方案:

優點:與單分發機相比,沒有單點故障,即使某台分發機出現問題,也能保證讀寫分離機制繼續執行。

缺點:成本增加,維護方面更複雜。

階段七:

cluster(雙a)+雙儲存+backup+replication+雙分發方案:

優點:雙儲存方案使得資料能得到有效的保護,而且避開了mirror和replication同時在主庫執行對主伺服器造成的影響,節省主伺服器資源,而且恢復比較方便。

缺點:成本增加。

階段八:

cluster(雙a)+雙儲存+backup+replication+雙分發+ssb非同步方案:

此方式的主要優勢是將資料流非同步處理,緩解瞬時高流量對主庫的壓力,因為此方案比較複雜,暫時不做說明,可以參考資料庫架構 一問。

階段九:

(橫向、縱向)拆分業務和資料、採用分布式資料庫、使用能負載均衡集群功能的資料庫等。

此文件大致描述了隨公司的發展、伺服器壓力的增加,資料庫架構方面的變遷階段,當然我們應該根據公司的具體情況,選擇性的採用其中的技術,也可能是

直接跳過某些階段,而上更高效的方案(如果成本能夠接受),因此技術和方案的選擇應該根據實際情況,靈活應對。

資料庫變更管理

資料庫變更管理 1 目的 1 角色與職責 1 啟動準則 1 輸入 1 主要步驟 1 step1 資料庫設計變更申請 1 step2 審批資料庫設計變更申請 1 step3 更改資料庫設計文件 2 step4 重新進行資料庫設計確認 2 輸出 2 結束準則 2 度量 2 資料庫變更管理 目的 鐵路客票...

資料庫的選定 建立 刪除和變更

資料庫的選定 use db name 資料庫的建立 建立資料庫完整語法 if not exists 在資料庫不存在的前提下才建立它 create database ifnot exists mydb character set utf8 collate utf8 icelandic ci 檢視現有資...

資料庫schema變更使用者

以前用x使用者連線的部分使用者要替換為使用者y 並且y使用者要用於建立dblink y需要訪問的物件已授權,但目前的乙個問題是 以前x使用者下select from aaa的寫法,在y使用者下需要寫成select from x.aaa,這個批量修改幾無可能 alter session set cur...