多種方案,含zookeeper方案 : PostgreSQL 流行 HA 方案
成都創(chuàng)新互聯(lián)成立于2013年,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目做網(wǎng)站、成都做網(wǎng)站網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元祁門(mén)做網(wǎng)站,已為上家服務(wù),為祁門(mén)各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792
有實(shí)例 有講解! postgresql 高可用集群搭建 : PostgreSQL_HA_with_primary_standby_2vip
pgpool+Keepalived 實(shí)現(xiàn)postgresql 高可用集群: PostgreSQL+pgpooll+Keepalived雙機(jī)HA方案
利用pgpool 實(shí)現(xiàn)postgresql 高可用集群 : POSTGRESQL主備部署模式
看起來(lái)不錯(cuò) : 雙機(jī)熱備技術(shù):使用pgpool搭建高可用PostgreSQL HA的步驟
PostgreSQL 流復(fù)制 + Pgpool-II 實(shí)現(xiàn)高可用 HA
推薦使用pgpool原因: PostgreSQL的集群技術(shù)比較
很好的要看corosync+pacemaker: 基于Pacemaker的PostgreSQL一主多從讀負(fù)載均衡集群搭
可能復(fù)雜 : Pacemaker+corosync搭建PostgreSQL共享存儲(chǔ)HA
corosync+pacemaker 有實(shí)例 : postgresql雙機(jī)熱備、高可用方案(采用pacemaker+corosync實(shí)現(xiàn))
需求講得好 : PostgresSQL HA高可用架構(gòu)實(shí)戰(zhàn)
PostgresSQL HA高可用架構(gòu)實(shí)戰(zhàn)
流復(fù)制HA(pgpool) :較簡(jiǎn)單、易實(shí)現(xiàn)
共享存儲(chǔ)HA(corosync+pacemaker):功能完備、學(xué)習(xí)成本高、復(fù)雜
一、去官方網(wǎng)站下載PostgreSQL當(dāng)前最新版(當(dāng)前最新版本為9.3.2)
如上圖,下載紅框內(nèi)的Source文件。
二、除此之外還需準(zhǔn)備Perl(當(dāng)前最新為5.18.1.1800)及Flex、Bison安裝包
之所以用Perl是因?yàn)槲覀兒竺姘惭bPG主要采用的就是Perl來(lái)安裝,而Flex、Bison則是PG中對(duì)命令或查詢語(yǔ)句進(jìn)行詞法、語(yǔ)法解析所用到的,Perl的安裝教程請(qǐng)戳這里^_^(安裝到C盤(pán)也不要緊,我們可以添加系統(tǒng)環(huán)境變量解決),F(xiàn)lex、Bison下載后不用安裝,至于有童鞋想知道為什么PG需要這兩個(gè)東西請(qǐng)戳這里^_^。我們現(xiàn)在有Flex、Bison的包,有PG的Source Code及Perl的安裝包(要安裝),如下圖所示:
準(zhǔn)備好的程序
Flex_Bison文件夾中的程序
將PG及flex_bison放置于同一文件夾下即可。
三、開(kāi)始安裝PostgreSQL
首先要修改一個(gè)小地方,打開(kāi)PG文件夾,找到MKVcbuild.pm文件(如下圖所示),用文本編輯器打開(kāi)(如Notepad++),修改其中my $vsVersion = DetermineVisualStudioVersion()該行,變?yōu)?/p>
my $vsVersion = “9.0.0”,至于為什么這么改,是因?yàn)椴贿@么改,我的VS2008就無(wú)法打開(kāi),并且項(xiàng)目也無(wú)法編譯成功,這個(gè)地方我不敢保證是不是特例還是共性,有待驗(yàn)證。具體如下圖所示:
接下來(lái)如果Perl是安裝到了C盤(pán),則在系統(tǒng)環(huán)境變量中添加Perl的C盤(pán)路徑位置,比如:
打開(kāi)你的命令編輯器,因?yàn)槲业碾娔X是64位的,這里我打開(kāi)的是VS自帶的64位命令編輯器,CMD也OK。
到MSVC目錄下,輸入perl build.pl DEBUID
這樣就開(kāi)始編譯了,全過(guò)程大概需要5分鐘吧,期間可能會(huì)有若干warning,但是無(wú)所謂啦,只有沒(méi)有error就行,(我自己安裝了兩遍,有些許warning,但是絕對(duì)沒(méi)有error出現(xiàn))
編譯結(jié)束后,就可以打開(kāi)你的工程了,如下圖所示
接著在命令編輯器中繼續(xù)輸入perl install.pl (此處為bin文件夾路徑,自己指定),例如:
perl install.pl C:/bin,這樣就可以將相關(guān)執(zhí)行文件拷貝到你的bin目錄下,將來(lái)執(zhí)行的時(shí)候就可以在bin目錄下執(zhí)行了
執(zhí)行完后,恭喜,PG就安裝完成了,下面你可以簡(jiǎn)單的登陸你的PG來(lái)進(jìn)行調(diào)試了
四、簡(jiǎn)單的調(diào)試
首先初始化系統(tǒng)數(shù)據(jù)目錄(包括系統(tǒng)表等元數(shù)據(jù))輸入initdb.exe DB(數(shù)據(jù)目錄名字,可自己指定)
其次啟動(dòng)服務(wù)器,輸入postgreys.exe -D DB (注意-D中的D一定要大寫(xiě))
再次,啟動(dòng)客戶端(另打開(kāi)一個(gè)窗口),輸入psql.exe DB
最后,自己可以create
database,create table,往table中insert
into些數(shù)據(jù),最后可以select數(shù)據(jù)等等,就可以自由操縱了,比如下例中,執(zhí)行一個(gè)Select語(yǔ)句,通過(guò)VS2008附加到進(jìn)程中去跟代碼,具體研究PG的細(xì)節(jié)實(shí)現(xiàn)。
五、結(jié)尾
配置PostgreSQL對(duì)應(yīng)的yum源
使用命令:dnf install -y ,獲取yum配置文件。
安裝PostgreSQL13對(duì)應(yīng)的rpm包
一般來(lái)說(shuō)PostgreSQL需要安裝的包包括:
依賴庫(kù)包:postgresql13-libs.x86_64
模塊分布式:postgresql13-contrib.x86_64
客戶端:postgresql13.x86_64
服務(wù)端:postgresql13-server.x86_64
創(chuàng)建postgres用戶及組
groupadd postgres 創(chuàng)建postgres組
useradd -g postgres創(chuàng)建postgres用戶
初始化數(shù)據(jù)庫(kù)
安裝postgresql數(shù)據(jù)庫(kù)后,默認(rèn)的數(shù)據(jù)目錄為: /var/lib/pgsql/10/data/。但是在實(shí)際使用中,我們必須為postgresql數(shù)據(jù)庫(kù)指定專用的數(shù)據(jù)路徑。
1、創(chuàng)建指定路徑
mkdir -p /data/pgdata
2、修改pgdata的所有者
chown postgres /data/pgdata
3、切換到postgres用戶
su - postgres?
4、初始化postgres數(shù)據(jù)庫(kù)實(shí)例
/usr/pgsql-13/bin/initdb -D /data/pgdata
到這里就安裝完成了。
個(gè)人覺(jué)得樓主需要明確一下自己的需求,以及PostgreSQL目前能實(shí)現(xiàn)的是什么;給一些建議: 搭建高可靠高可用系統(tǒng)方面: 如果是出于備份恢復(fù),容災(zāi)等高可靠的目的, 1、 PostgreSQL在備份恢復(fù)方面目前可以做的比較可靠的是PITR在線熱備份恢復(fù),
PostgreSQL安裝:一、windows下安裝過(guò)程
安裝介質(zhì):postgresql-9.1.3-1-windows.exe(46M),安裝過(guò)程非常簡(jiǎn)單,過(guò)程如下:
1、開(kāi)始安裝:
2、選擇程序安裝目錄:
注:安裝
PostgreSQL
的分區(qū)最好是
NTFS
格式的。PostgreSQL
首要任務(wù)是要保證數(shù)據(jù)的完整性,而
FAT
和
FAT32
文件系統(tǒng)不能提供這樣的可靠性保障,而且
FAT
文件系統(tǒng)缺乏安全性保障,無(wú)法保證原始數(shù)據(jù)在未經(jīng)授權(quán)的情況下被更改。此外,PostgreSQL
所使用的"多分點(diǎn)"功能完成表空間的這一特征在FAT文件系統(tǒng)下無(wú)法實(shí)現(xiàn)。
然而,在某些系統(tǒng)中,只有一種
FAT
分區(qū),這種情況下,可以正常安裝
PostgreSQL,但不要進(jìn)行數(shù)據(jù)庫(kù)的初始化工作。安裝完成后,在
FAT
分區(qū)上手動(dòng)執(zhí)行
initdb.exe
程序即可,但不能保證其安全性和可靠性,并且建立表空間也會(huì)失敗。
3、選擇數(shù)據(jù)存放目錄:
4、輸入數(shù)據(jù)庫(kù)超級(jí)用戶和創(chuàng)建的OS用戶的密碼
注:數(shù)據(jù)庫(kù)超級(jí)用戶是一個(gè)非管理員賬戶,這是為了減少黑客利用在
PostgreSQL
發(fā)現(xiàn)的缺陷對(duì)系統(tǒng)造成損害,因此需要對(duì)數(shù)據(jù)庫(kù)超級(jí)用戶設(shè)置密碼,如下圖所示,安裝程序自動(dòng)建立的服務(wù)用戶的用戶名默認(rèn)為
postgres。
5、設(shè)置服務(wù)監(jiān)聽(tīng)端口,默認(rèn)為5432
6、選擇運(yùn)行時(shí)語(yǔ)言環(huán)境
注:選擇數(shù)據(jù)庫(kù)存儲(chǔ)區(qū)域的運(yùn)行時(shí)語(yǔ)言環(huán)境(字符編碼格式)。
在選擇語(yǔ)言環(huán)境時(shí),若選擇"default
locale"會(huì)導(dǎo)致安裝不正確;同時(shí),PostgreSQL
不支持
GBK
和
GB18030
作為字符集,如果選擇其它四個(gè)中文字符集:中文繁體
香港(Chinese[Traditional],
Hong
Kong
S.A.R.)、中文簡(jiǎn)體
新加坡(Chinese[Simplified],
Singapore)、中文繁體
臺(tái)灣(Chinese[Traditional],
Taiwan)和中文繁體
澳門(mén)(Chinese[Traditional],
Marco
S.A.R.),會(huì)導(dǎo)致查詢結(jié)果和排序效果不正確。建議選擇"C",即不使用區(qū)域。
----我選擇了default
localt,安裝正確;建議選擇default
localt。
7、安裝過(guò)程(2分鐘)
8、安裝完成