• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      PostgreSQL熱備原理研究及流復(fù)制運(yùn)用

      2018-07-12 10:42付莎
      電腦知識(shí)與技術(shù) 2018年12期
      關(guān)鍵詞:高可用性熱備

      付莎

      摘要:高可用性(HA-High Availability)是所有商用數(shù)據(jù)庫(kù)系統(tǒng)必須具備的一項(xiàng)基本功能。該文闡述了PostgreSQL數(shù)據(jù)庫(kù)的高可用性的實(shí)現(xiàn)原理及方法,并對(duì)PostgreSQL數(shù)據(jù)庫(kù)的原生流復(fù)制功能實(shí)現(xiàn)高可用性熱備功能進(jìn)行了應(yīng)用描述。

      關(guān)鍵詞:PostgreSQL;高可用性;熱備;流復(fù)制

      中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)12-0001-03

      Abstract: HA-High Availability is a basic function that all commercial database systems must have. This paper describes the realization principles and methods of HA-high availability PostgreSQL database, and describes the application of PostgreSQL database's native streaming replication function to achieve high availability hot standby function.

      Key words: PostgreSQL; HA-High Availability; hot standby; streaming replication

      PostgreSQL是一套企業(yè)級(jí)的、跨平臺(tái)、高度可定制的、功能強(qiáng)大的開(kāi)源數(shù)據(jù)庫(kù)系統(tǒng)。其可靠性、穩(wěn)定性、數(shù)據(jù)一致性等獲得了業(yè)界內(nèi)極高的聲譽(yù)。是唯一能實(shí)現(xiàn)數(shù)據(jù)零丟失的開(kāi)源數(shù)據(jù)庫(kù)系統(tǒng)。隨著PostgreSQL的商用逐漸推動(dòng),在數(shù)據(jù)庫(kù)市場(chǎng)上成為對(duì)標(biāo)Oracle,MSSQL等傳統(tǒng)大型商業(yè)數(shù)據(jù)庫(kù)的有力競(jìng)爭(zhēng)者[1]。

      數(shù)據(jù)庫(kù)系統(tǒng)中,數(shù)據(jù)是所有一切的基礎(chǔ)。數(shù)據(jù)的安全性和一致性是數(shù)據(jù)庫(kù)系統(tǒng)中的重中之重。數(shù)據(jù)可能由于不可預(yù)見(jiàn)的各種原因丟失或損壞,因此數(shù)據(jù)的備份成為保證數(shù)據(jù)安全性的一個(gè)重要的后備手段。在此方面,企業(yè)級(jí)的PostgreSQL提供了多種功能特性保障數(shù)據(jù)的安全和可用性。

      1 PostgreSQL數(shù)據(jù)備份

      PostgreSQL可實(shí)現(xiàn)三種不同級(jí)別的數(shù)據(jù)備份方法:

      SQL轉(zhuǎn)儲(chǔ):利用pg_dump工具將數(shù)據(jù)轉(zhuǎn)儲(chǔ)為標(biāo)準(zhǔn)SQL語(yǔ)句組成的文件。需要時(shí)執(zhí)行SQL語(yǔ)句即可恢復(fù)數(shù)據(jù)。此種方式通用性最好,實(shí)現(xiàn)簡(jiǎn)便,可在不同版本及不同操作系統(tǒng)間遷移和恢復(fù)數(shù)據(jù)。缺點(diǎn)為只能實(shí)現(xiàn)數(shù)據(jù)庫(kù)的定期及全量備份。

      文件系統(tǒng)級(jí)別備份:利用文件系統(tǒng)直接復(fù)制PostgreSQL數(shù)據(jù)文件進(jìn)行備份操作,獲取一個(gè)數(shù)據(jù)文件的“快照”。需要恢復(fù)或遷移時(shí),再將“快照”文件拷貝至目標(biāo)路徑。此種方式實(shí)現(xiàn)簡(jiǎn)便,但限制條件也比較苛刻。(1)備份和恢復(fù)時(shí),目標(biāo)數(shù)據(jù)庫(kù)必須停機(jī)操作。在一些特定系統(tǒng)中,停機(jī)是無(wú)法接受的。(2)只能備份和恢復(fù)整臺(tái)服務(wù)器,不能有針對(duì)性的操作某一特定的數(shù)據(jù)庫(kù),數(shù)據(jù)容量巨大。(3)操作系統(tǒng)和PostgreSQL版本必須一致。

      連續(xù)歸檔和時(shí)間點(diǎn)恢復(fù)(PITR):利用PostgreSQL提供的WAL(預(yù)寫(xiě)式日志)文件的連續(xù)歸檔特性,“備份”WAL文件。在“基礎(chǔ)備份”的基礎(chǔ)上,當(dāng)需要恢復(fù)和遷移數(shù)據(jù)時(shí),目標(biāo)數(shù)據(jù)庫(kù)上“重放”WAL,使目標(biāo)數(shù)據(jù)庫(kù)與原始數(shù)據(jù)庫(kù)數(shù)據(jù)保持一致。基于“重放”WAL,可實(shí)現(xiàn)“增量”備份、“任意時(shí)間點(diǎn)”恢復(fù)、“溫備”和“熱備”等多種備份方式。此種方式技術(shù)實(shí)現(xiàn)相比較最為復(fù)雜,但可靠性和靈活性上卻最高。在保障系統(tǒng)高可用性情況下,應(yīng)是首選備份技術(shù)[2][4]。

      以上三種數(shù)據(jù)備份方式各有優(yōu)缺點(diǎn),但相比較下,只有使用WAL連續(xù)歸檔技術(shù)實(shí)現(xiàn)數(shù)據(jù)備份、故障遷移,保障高可用性最為有效和便捷。

      2 備份原理

      2.1 WAL文件

      WAL(Write Ahead Log)預(yù)寫(xiě)式日志文件是PostgreSQL中一個(gè)重要機(jī)制。作用與Oracle中redo log文件作用類似。用于保障數(shù)據(jù)的一致性以及事務(wù)的完整性。避免系統(tǒng)在崩潰時(shí)數(shù)據(jù)還在某級(jí)緩沖中,沒(méi)來(lái)得及寫(xiě)入持久化文件中的臟數(shù)據(jù)產(chǎn)生的數(shù)據(jù)不一致性。具體來(lái)說(shuō),WAL的核心概念是數(shù)據(jù)文件的修改必須在這些動(dòng)作被日志記錄之后才被寫(xiě)入。WAL記錄了完整的操作數(shù)據(jù)以及動(dòng)作,先于數(shù)據(jù)被寫(xiě)入數(shù)據(jù)文件前順序?qū)懭胛募到y(tǒng)。WAL中的每一條記錄使用CRC-32校驗(yàn)碼保護(hù),首先就保證了WAL的完整性。當(dāng)系統(tǒng)需要重建數(shù)據(jù)時(shí),由于WAL先于數(shù)據(jù)寫(xiě)入,則可順序“回放”WAL文件中的先前數(shù)據(jù)和操作,直至某一設(shè)定時(shí)間點(diǎn)或WAL文件末尾停止,從而達(dá)到和先前一致的數(shù)據(jù)庫(kù)狀態(tài)。

      WAL被PostgreSQL默認(rèn)劃分成16MB的段文件,按一定規(guī)則順序命名文件并保存于系統(tǒng)pg_xlog目錄下。默認(rèn)情況下WAL被設(shè)置為minimal級(jí)別,該級(jí)別下某些批量操作的WAL可以被安全的跳過(guò),這樣這些操作能更快地完成。但該級(jí)別不包含有足夠的信息來(lái)從基礎(chǔ)備份和WAL來(lái)重建數(shù)據(jù)。因此構(gòu)架高可用性系統(tǒng)時(shí)必須設(shè)置高于minimal的級(jí)別使用,例如archive或更高級(jí)別,以保證WAL包含有足夠的重建數(shù)據(jù)信息[2]。

      2.2 啟用WAL歸檔、傳輸實(shí)現(xiàn)備份

      當(dāng)系統(tǒng)啟用archive或更高級(jí)別的WAL級(jí)別時(shí),我們可通過(guò)歸檔WAL文件實(shí)現(xiàn)數(shù)據(jù)的備份。Postgresql并沒(méi)有限定我們?cè)趺礃託w檔數(shù)據(jù),而是提供了一個(gè)參數(shù)來(lái)自定義歸檔動(dòng)作。當(dāng)WAL文件產(chǎn)生后,我們可以簡(jiǎn)單的設(shè)置參數(shù)為拷貝WAL文件至另一磁盤(pán)驅(qū)動(dòng)器目錄,或執(zhí)行復(fù)雜腳本將WAL傳輸至網(wǎng)絡(luò)上另一臺(tái)服務(wù)器。

      利用上述WAL技術(shù)特性,我們可以簡(jiǎn)單的描述實(shí)現(xiàn)“雙機(jī)熱備”的過(guò)程。(1)設(shè)置主機(jī)歸檔模式wal_level為archive;(2)主機(jī)使用PostgreSQL提供的pg_basebackup等工具制作一次基礎(chǔ)備份并將備份文件拷貝至備機(jī),完成一次主被機(jī)間的基礎(chǔ)備份;(3)主機(jī)產(chǎn)生WAL文件后通過(guò)archive_command參數(shù)調(diào)度命令傳輸至備機(jī);(4)備機(jī)接收到WAL文件后,持續(xù)恢復(fù)主機(jī)的WAL文件,最大限度跟上主機(jī)數(shù)據(jù)產(chǎn)生速度[1][7]。

      當(dāng)主機(jī)發(fā)生故障時(shí),此時(shí)由于主備機(jī)間傳輸WAL文件可能具有一定的延時(shí)原因或主機(jī)WAL文件并沒(méi)有填充完一塊(默認(rèn)16MB),還沒(méi)有開(kāi)始傳輸,主備機(jī)間數(shù)據(jù)可能并不一致,備機(jī)落后于主機(jī)。此時(shí)如果使用故障遷移并使用備機(jī)提供數(shù)據(jù)服可能存在一定的數(shù)據(jù)丟失,但在某種程度上已經(jīng)最大限度地保證了系統(tǒng)的可用性[2]。

      2.3 PostgreSQL熱備

      通過(guò)上述WAL文件在主備服務(wù)器間的歸檔、傳輸以及重放,我們已經(jīng)了解了PostgreSQL的“溫備”原理。如需進(jìn)一步提升備份級(jí)別,實(shí)現(xiàn)真正意義上的熱備,我們必須通過(guò)其他技術(shù)手段減小主備服務(wù)器間的數(shù)據(jù)同步延時(shí),實(shí)現(xiàn)主備服務(wù)器間的快速同步。

      3流復(fù)制

      3.1 流復(fù)制原理

      PostgreSQL流復(fù)制是PostgreSQL9.0版本后才提供的功能,它的基本原理與上述主服務(wù)器WAL日志歸檔后傳輸至備服務(wù)器并重放以保證主備服務(wù)器數(shù)據(jù)一致情形類似。但流復(fù)制從PostgreSQL系統(tǒng)層面對(duì)這一過(guò)程進(jìn)行了簡(jiǎn)化。首先主備服務(wù)器間使用PostgreSQL提供的TCP協(xié)議建立網(wǎng)絡(luò)連接,不再使用archive_command參數(shù)命令進(jìn)行第三方WAL文件傳輸。主服務(wù)器在數(shù)據(jù)變動(dòng)并產(chǎn)生WAL記錄后(并不需要完整一塊16MB文件,僅為一次操作記錄)立即將記錄以TCP數(shù)據(jù)流的方式傳送給備服務(wù)器,而不必等到 WAL文件被填充后成才進(jìn)行傳輸[2]。此種機(jī)制極大的縮減了主備服務(wù)器間的數(shù)據(jù)同步延遲,擁有更高效的可用度。同時(shí)PostgreSQL9.0版本后提供了Hot Standby功能,支持備機(jī)在流復(fù)制基礎(chǔ)上同步主服務(wù)器數(shù)據(jù)的同時(shí)還能提供備機(jī)數(shù)據(jù)的只讀訪問(wèn)。此特性極大地提升了用戶體驗(yàn),也使數(shù)據(jù)庫(kù)的讀寫(xiě)分離、負(fù)載均衡等功能從PostgreSQL系統(tǒng)層面提供了技術(shù)實(shí)現(xiàn)(之前版本只能通過(guò)第三方插件形式實(shí)現(xiàn))。PostgreSQL9.2版本后提供了級(jí)聯(lián)復(fù)制功能,在實(shí)現(xiàn)主備服務(wù)器流復(fù)制數(shù)據(jù)同步的同時(shí),備服務(wù)器還可將WAL轉(zhuǎn)發(fā)給其他下位備機(jī),實(shí)現(xiàn)更大規(guī)模的集群。流復(fù)制技術(shù)為數(shù)據(jù)庫(kù)的熱備、高可用性、負(fù)載均衡等提供了原生技術(shù)支持[5][6]。

      當(dāng)啟用PostgreSQL主備服務(wù)器流復(fù)制功能后,將有walsender、walreceiver和startup三個(gè)進(jìn)程啟動(dòng)參與整個(gè)流復(fù)制功能。簡(jiǎn)單來(lái)說(shuō)walsender進(jìn)程從主服務(wù)器啟動(dòng),主要負(fù)責(zé)將主服務(wù)器產(chǎn)生的WAL日志記錄發(fā)送給下位機(jī);walreceiver進(jìn)程則從備服務(wù)器啟動(dòng),對(duì)應(yīng)walsender進(jìn)程與之通訊,主要負(fù)責(zé)接收上位機(jī)發(fā)送的WAL日志記錄;startup進(jìn)程則從備服務(wù)器啟動(dòng),主要負(fù)責(zé)將walreceiver進(jìn)程接收到WAL日志記錄在備服務(wù)器上“回放”,以便達(dá)到主備服務(wù)器間的數(shù)據(jù)同步。在級(jí)聯(lián)模式下,一臺(tái)備服務(wù)器可能同時(shí)啟動(dòng)三個(gè)進(jìn)程,即既負(fù)責(zé)接收上位機(jī)的WAL日志記錄并回放,同時(shí)也將WAL日志記錄繼續(xù)發(fā)往下位機(jī)[3][5]。

      3.2 異步流復(fù)制

      PostgreSQL默認(rèn)情況下啟用的為異步流復(fù)制模式。此模式下主服務(wù)器不等待備機(jī)確認(rèn),主服務(wù)器上數(shù)據(jù)成功提交即視為操作完成。并將完成結(jié)果反饋給前臺(tái)提交此操作的客戶端。

      假設(shè)上述操作完成后主服務(wù)器崩潰,某些已被提交的WAL日志還沒(méi)來(lái)得及復(fù)制到備服務(wù)器(例如網(wǎng)絡(luò)延時(shí)等),如此時(shí)進(jìn)行了故障遷移,由于備服務(wù)器上則沒(méi)有這筆操作數(shù)據(jù),但此時(shí)前臺(tái)客戶端卻得到了操作成功指令,這時(shí)將導(dǎo)致數(shù)據(jù)丟失。

      再如主服務(wù)器上數(shù)據(jù)已成功提交,但還沒(méi)來(lái)得及復(fù)制到備服務(wù)器(例如網(wǎng)絡(luò)延時(shí)),并且運(yùn)行著負(fù)載均衡架構(gòu),備服務(wù)器提供只讀查詢服務(wù),那么此時(shí)使用備服務(wù)器查詢到的結(jié)果將和主服務(wù)器數(shù)據(jù)不同,產(chǎn)生了數(shù)據(jù)不一致。

      異步流復(fù)制雖然有可能產(chǎn)生上述問(wèn)題,但異步流復(fù)制只需主服務(wù)確認(rèn)即可的特性大大提升了系統(tǒng)的負(fù)載。在部分非關(guān)鍵的系統(tǒng)應(yīng)用中也是一種可選方案[2]。

      3.3 同步流復(fù)制

      PostgreSQL開(kāi)啟配置參數(shù)synchronous_commit=on即可開(kāi)啟同步流復(fù)制。同步流復(fù)制能夠保證一個(gè)事務(wù)的所有修改都能被傳送到一臺(tái)同步備服務(wù)器。在請(qǐng)求同步流復(fù)制時(shí),一個(gè)寫(xiě)事務(wù)的每次提交將一直等待,直到收到一個(gè)確認(rèn)表明該提交在主服務(wù)器和備服務(wù)器上都已經(jīng)被寫(xiě)入到磁盤(pán)上的事務(wù)日志中。即保證主備服務(wù)器WAL日志雙雙落盤(pán)才返回成功[2][6]。此時(shí)雖然增加了主備服務(wù)期間來(lái)回通訊確認(rèn)的等待時(shí)間,延長(zhǎng)了前臺(tái)客戶端請(qǐng)求事務(wù)的響應(yīng)時(shí)間。但等待確認(rèn)提高了用戶對(duì)于修改不會(huì)丟失的信心。此外如果有多臺(tái)備服務(wù)器連接主服務(wù)器進(jìn)行數(shù)據(jù)同步,通過(guò)配置參數(shù)synchronous_standby_names,還可設(shè)置等待全部或其中某幾臺(tái)完成WAL落盤(pán)確定即返回成功。在多臺(tái)數(shù)據(jù)同步的集群中,可在高可用性和系統(tǒng)性能上找到一個(gè)平衡點(diǎn)[2][7]。

      4 流復(fù)制應(yīng)用

      上述已就PostgreSQL的備份和流復(fù)制構(gòu)建熱備進(jìn)行了原理和理論闡述。本節(jié)將就PostgreSQL雙機(jī)同步流復(fù)制實(shí)現(xiàn)熱備和故障遷移應(yīng)用給出實(shí)現(xiàn)方案。目標(biāo):實(shí)現(xiàn)雙機(jī)異地PostgreSQL數(shù)據(jù)庫(kù)容災(zāi)熱備。

      預(yù)設(shè)主備機(jī)IP地址:主機(jī)192.10.1.100 備機(jī)192.10.1.101。下述配置文件*.conf都默認(rèn)位于PostgreSQL安裝路徑data目錄下。PostgreSQL9.3以上版本。

      4.1 主機(jī)postgresql.conf文件配置

      設(shè)置listen_addresses = '*';主服務(wù)器開(kāi)啟監(jiān)聽(tīng)所有客戶地址訪問(wèn)許可,默認(rèn)值為只能監(jiān)聽(tīng)本機(jī)訪問(wèn),網(wǎng)絡(luò)上其他服務(wù)器不允許連接。

      設(shè)置wal_level = hot_standby;主服務(wù)WAL日志級(jí)別使用hot_standby級(jí)別,此級(jí)別下日志記錄的信息和上文提到的archive相同,但外加了從WAL重建運(yùn)行事務(wù)狀態(tài)所需的其他信息,流復(fù)制必須設(shè)置此級(jí)別。

      設(shè)置max_wal_senders=2;設(shè)置向備服務(wù)器進(jìn)行發(fā)送walsender進(jìn)程的最大連接數(shù)。本例中由于是使用雙機(jī)熱備,連接數(shù)2即可。

      設(shè)置wal_keep_segments = 128;設(shè)置WAL文件被重用的最大值,確保舊的WAL段不會(huì)被太早重用(文件系統(tǒng)會(huì)對(duì)WAL進(jìn)行循環(huán)覆蓋使用以便節(jié)約磁盤(pán)空間)。避免由于主機(jī)數(shù)據(jù)量巨大,而備機(jī)還尚未處理,而主機(jī)已經(jīng)覆蓋了待未傳輸至備機(jī)處理的WAL文件。可根據(jù)系統(tǒng)負(fù)載情況調(diào)整[2]。

      設(shè)置synchronous_commit=on;設(shè)置事務(wù)為同步模式。保證備機(jī)將提交記錄寫(xiě)入到持久化存儲(chǔ)中,主機(jī)事務(wù)才能成功返回[1][7]。

      4.2 主機(jī)pg_hba.conf文件配置

      增加配置項(xiàng):host replication postgres 192.10.1.101/32 md5;增加IP192.10.1.101備機(jī)使用用戶postgres 使用流復(fù)制功能訪問(wèn)許可。

      上述配置完畢后重啟PostgreSQL數(shù)據(jù)庫(kù),以便新設(shè)置項(xiàng)生效。

      4.3 主機(jī)進(jìn)行基礎(chǔ)備份

      a.開(kāi)啟pgsql程序,執(zhí)行命令:select pg_start_backup('basebackup');此命令將使系統(tǒng)進(jìn)入備份模式,執(zhí)行基礎(chǔ)備份。

      b.待執(zhí)行完畢后拷貝出data數(shù)據(jù)目錄備用。

      c.拷貝完畢后執(zhí)行select pg_stop_backup();此命令系統(tǒng)終止備份模式并讓在備份期間寫(xiě)入的最后一個(gè)WAL段文件能準(zhǔn)備好被歸檔[1][2]。

      4.4 備機(jī)拷貝文件

      刪除備機(jī)data目錄下所有文件,并將上一步主機(jī)拷貝出的data目錄下所有文件拷貝至備機(jī)data目錄下。

      4.5 備機(jī)postgresql.conf文件配置

      設(shè)置hot_standby=on;開(kāi)啟備機(jī)在歸檔恢復(fù)期間或備機(jī)模式下開(kāi)啟只讀查詢模式。

      4.6 備機(jī)recover.conf文件配置

      備機(jī)創(chuàng)建recover.conf文件,并放置于data目錄下。

      設(shè)置standby_mode = 'on';指定為備機(jī)模式啟動(dòng);

      設(shè)置recovery_target_timeline = 'latest';使備機(jī)恢復(fù)到歸檔中能找到的最新的時(shí)間線,保持和主機(jī)的數(shù)據(jù)同步。

      設(shè)置primary_conninfo='host=192.10.1.100 user=postgres password=主機(jī)登陸口令';設(shè)置備機(jī)連接主機(jī)進(jìn)行流復(fù)制的連接字符串。

      4.7 備機(jī)啟動(dòng)

      上述配置完成后啟動(dòng)備機(jī)即可完成PostgreSQL雙機(jī)同步熱備服務(wù)器配置。

      4.8 故障遷移

      假設(shè)最壞的情況發(fā)生了,主機(jī)崩潰無(wú)法繼續(xù)提供服務(wù),此時(shí)可使用故障遷移將備機(jī)提升為主機(jī),從只讀模式提升為提供讀寫(xiě)服務(wù)。保障系統(tǒng)的高可用性。故障遷移必須手動(dòng)操作,有兩種方式:

      備機(jī)recover.conf配置文件中設(shè)置trigger_file項(xiàng),值為某一系統(tǒng)中文件路徑。在服務(wù)器作為備機(jī)使用時(shí),此路徑上的文件必須不存在。如需將備機(jī)提升為提供讀寫(xiě)服務(wù)器,則建立此路徑文件即可。當(dāng)備機(jī)檢測(cè)到文件存在后,立即退出備機(jī)恢復(fù)模式,提升為獨(dú)立主機(jī)模式,提供完整讀寫(xiě)服務(wù)。

      在備機(jī)上執(zhí)行pg_ctl premote -D ‘備機(jī)數(shù)據(jù)目錄路徑。效果及原理與a相同,即命令備機(jī)停止備機(jī)恢復(fù)模式,提升為獨(dú)立主機(jī)模式[1]。

      在某些特定應(yīng)用場(chǎng)景下本方案仍具有一定的可優(yōu)化。例如使用PostgreSQL9.4版本后提供的復(fù)制槽(Replication Slots)技術(shù)提供的自動(dòng)WAL檢測(cè)技術(shù),替換wal_keep_segments參數(shù)功能。避免未同步的WAL段被主機(jī)替換刪除。或設(shè)置tcp_keepalive參數(shù),避免長(zhǎng)時(shí)間的網(wǎng)絡(luò)延時(shí)導(dǎo)致前臺(tái)客戶端事務(wù)提交的等待時(shí)間過(guò)長(zhǎng)[7]。例如PostgreSQL10版本提供的邏輯復(fù)制技術(shù),只同步應(yīng)用需要的特定表,完成更復(fù)雜的集群應(yīng)用等等[8]。

      至此使用PostgreSQL流復(fù)制功能實(shí)現(xiàn)雙機(jī)熱備服務(wù)器搭建完成。

      參考文獻(xiàn):

      [1] 唐成.PostgreSQL修煉之道[M].機(jī)械工業(yè)出版社,2015.

      [2] The PostgreSQL Global Development Group. Documentation[EB/OL].(2016-09-29). https://www.postgresql.org/docs/.

      [3] 周正中.PostgreSQL同步流復(fù)制原理和代碼淺析[EB/OL].(2016-06-16).https://yq.aliyun.com/articles/55676.

      [4] [美] 杰亞德萬(wàn)·梅馬拉(Jayadevan Maymala).數(shù)據(jù)架構(gòu)師的PostgreSQL修煉:高效設(shè)計(jì)、開(kāi)發(fā)與維護(hù)數(shù)據(jù)庫(kù)應(yīng)用[M].機(jī)械工業(yè)出版社,2016.

      [5] [美]Regina Obe,Leo Hsu.PostgreSQL即學(xué)即用[M].人民郵電出版社,2016.

      [6] [英]Simon Riggs,Gianni Ciolli,Gabriele Bartolini.PostgreSQL Administration Cookbook[M]. Packt Publishing,2017.

      [7] [英]Gregory Smith,Ibrar Ahmed.PostgreSQL 9.6 High Performance[M].Packt Publishing,2017.

      [8] 周正中.PostgreSQL 10.0 邏輯復(fù)制原理與最佳實(shí)踐[EB/OL].(2017-02-28).https://yq.aliyun.com/ articles/71128.

      猜你喜歡
      高可用性熱備
      反應(yīng)堆用應(yīng)急柴油發(fā)電機(jī)組冷卻水系統(tǒng)故障原因分析及處理 Cause Analysis and Treatment of Failure of Cooling Water System of Emergency Diesel Generator Set for Reactor
      基于絞線式列車總線-以太網(wǎng)網(wǎng)關(guān)的網(wǎng)絡(luò)通信冗余的應(yīng)用
      熱備動(dòng)車組配置方案優(yōu)化模型
      東海區(qū)實(shí)時(shí)海洋觀測(cè)數(shù)據(jù)庫(kù)雙機(jī)熱備系統(tǒng)解決方案
      超長(zhǎng)公路隧橋高可用性監(jiān)控平臺(tái)方案分析
      淺談數(shù)據(jù)庫(kù)在銀行系統(tǒng)的應(yīng)用
      OpenStack云計(jì)算平臺(tái)高可用性的研究
      一種虛擬化集群心跳算法
      熱備冗余技術(shù)在焦化設(shè)備上的應(yīng)用
      洪湖市| 洛扎县| 叙永县| 门源| 同心县| 利津县| 屯门区| 浪卡子县| 丰顺县| 黔南| 鹿泉市| 石景山区| 静乐县| 廊坊市| 昔阳县| 武乡县| 塘沽区| 阿城市| 福安市| 突泉县| 柘城县| 杭锦旗| 菏泽市| 北辰区| 德安县| 延庆县| 灯塔市| 临夏县| 福安市| 惠州市| 黄龙县| 新干县| 麻江县| 陈巴尔虎旗| 中山市| 香港 | 濮阳市| 惠东县| 景洪市| 邵武市| 乌苏市|