PostgreSQL的特性
PostgreSQL是一種幾乎可以運(yùn)行在各種平臺(tái)上的免費(fèi)的開放源碼的對(duì)象關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)钧大,擁有與企業(yè)級(jí)數(shù)據(jù)庫(kù)相媲美的特性,如完善的SQL標(biāo)準(zhǔn)支持罩旋、多版本并發(fā)控制啊央、時(shí)間點(diǎn)恢復(fù)、表空間機(jī)制涨醋、異步復(fù)制瓜饥、嵌套事務(wù)、在線熱備份浴骂、一個(gè)復(fù)雜的查詢優(yōu)化器乓土、預(yù)寫日志容錯(cuò)技術(shù)。
它支持國(guó)際字符集、多字節(jié)字符編碼趣苏、Unicode狡相,并且對(duì)格式化、排序拦键、大小寫敏感提供本地化支持谣光。
PostgreSQL在管理大數(shù)據(jù)方面有良好的可擴(kuò)展性,對(duì)并發(fā)用戶管理具有自適應(yīng)性》椅現(xiàn)在已經(jīng)出現(xiàn)具有管理超過(guò)4萬(wàn)億字節(jié)數(shù)據(jù)能力的實(shí)用版本產(chǎn)品萄金。
開放特性:PostgreSQL內(nèi)置了豐富的數(shù)據(jù)類型,如任意精度的數(shù)值媚朦、無(wú)限制長(zhǎng)度的文本氧敢、幾何圖元、IP地址询张、數(shù)組等孙乖;同時(shí)還允許用戶定義基于正規(guī)SQL類型的新類型,讓數(shù)據(jù)庫(kù)自身理解復(fù)雜數(shù)據(jù)份氧,自定義類型中還可以包含繼承關(guān)系唯袄。用戶可以為數(shù)據(jù)庫(kù)內(nèi)幾乎所有的對(duì)象定義新的類型,如索引蜗帜、操作符(可重載現(xiàn)有操作符)恋拷、聚集函數(shù)、數(shù)據(jù)域厅缺、數(shù)據(jù)類型轉(zhuǎn)換蔬顾、會(huì)話(編碼轉(zhuǎn)換)等。
可編程性:PostgreSQL同樣擁有大量的編程接口供用戶開發(fā)使用湘捎,如ODBC诀豁、JDBC(Java)、Libpq(C/C++)等窥妇。
可定制性:PostgreSQL擁有廣泛的編程語(yǔ)言支持來(lái)實(shí)現(xiàn)函數(shù)功能舷胜,包括內(nèi)置的PL/PGSQL過(guò)程語(yǔ)言,PL/Perl活翩、PL/PHP烹骨、PL/Python、PL/Ruby纱新、PL/Tcl等腳本語(yǔ)言展氓,以及Java、C/C++等高級(jí)編程語(yǔ)言脸爱。
函數(shù)的輸出是一系列行類型的集合遇汞,可以在查詢中當(dāng)做表來(lái)使用,函數(shù)也可以被定義成以創(chuàng)建者或者調(diào)用者的身份運(yùn)行。在其他的數(shù)據(jù)庫(kù)產(chǎn)品中空入,函數(shù)也會(huì)被稱為“存儲(chǔ)過(guò)程”络它。
索引手段:用戶可以自定義索引方法或者使用內(nèi)置B-Tree索引、Hash表索引歪赢、GiST索引化戳、GIN索引。GiST索引不是某種特定的索引類型埋凯,而是一種通用索引基礎(chǔ)結(jié)構(gòu)点楼,可以在這種結(jié)構(gòu)上實(shí)現(xiàn)很多不同的索引策略。
PostgreSQL同時(shí)還支持如下功能:反向索引檢索白对、表達(dá)式索引掠廓、部分索引、位圖索引掃描甩恼。
多種身份認(rèn)證方式:PostgreSQL中可以使用數(shù)據(jù)庫(kù)用戶/角色蟀瞧、操作系統(tǒng)、PAM条摸、Kerberos等方式悦污,根據(jù)配置文件(pg_hba.conf)中的設(shè)置執(zhí)行對(duì)應(yīng)的身份認(rèn)證。
PostgreSQL提供經(jīng)濟(jì)有效的钉蒲、易于部署的復(fù)雜數(shù)據(jù)管理基礎(chǔ)設(shè)施切端,在工業(yè)界、互聯(lián)網(wǎng)得到廣泛應(yīng)用子巾,在許多國(guó)際化大公司的應(yīng)用中取得了良好的效果帆赢。
PostgreSQL經(jīng)過(guò)多年的發(fā)展小压,得到了學(xué)術(shù)界和工業(yè)界的充分認(rèn)可线梗。獲得2008 Developer.com編輯選擇的數(shù)據(jù)庫(kù)工具方向的年度產(chǎn)品,2000年怠益、2003~2006年榮獲Linux Journal雜志編輯評(píng)選的“最佳數(shù)據(jù)庫(kù)”獎(jiǎng)仪搔,2004年獲ArsTechnica最佳服務(wù)器應(yīng)用獎(jiǎng),2002年獲Linux New Media雜志編輯評(píng)選的“最佳數(shù)據(jù)庫(kù)”獎(jiǎng)蜻牢,1999年獲Linux World雜志評(píng)選的“最佳數(shù)據(jù)庫(kù)”獎(jiǎng)等多項(xiàng)榮譽(yù)烤咧。
安裝PostgreSQL
在開始使用PostgreSQL之前,必須先安裝它抢呆。在Windows下安裝PostgreSQL比較簡(jiǎn)單煮嫌,按照安裝程序的提示一步步進(jìn)行即可,這里不再贅述抱虐。
在Linux下昌阿,可以使用RPM源安裝,在官方網(wǎng)站上有操作步驟,這里不再贅述懦冰。
從源代碼進(jìn)行安裝灶轰,過(guò)程如下:
1)從PostgreSQL官方網(wǎng)站下載最新源代碼,通常是.tar.gz的壓縮格式刷钢。
2)通過(guò)tar或者圖形化軟件解壓源碼包笋颤,假設(shè)解壓到/usr/local/src/postgre目錄下。
3)從源代碼編譯安裝PostgreSQL需要用到C語(yǔ)言開發(fā)庫(kù)(包括gcc内地、ld等)伴澄,默認(rèn)配置的情況下還需要libreadline、zlib和xml2這幾個(gè)開發(fā)庫(kù)的支持阱缓,在Ubuntu等Linux發(fā)行版下可以通過(guò)apt-get安裝上述開發(fā)庫(kù)秉版,Red Hat下用yum進(jìn)行安裝依賴包。
4)在源代碼目錄下運(yùn)行configure腳本茬祷。
5)在源代碼目錄下分別執(zhí)行make和make install命令即可從源代碼編譯PostgreSQL并將相關(guān)文件拷貝到目標(biāo)目錄下清焕。
詳細(xì)流程:http://www.reibang.com/writer#/notebooks/27617623/notes/31575559
發(fā)現(xiàn)更多寶藏
我在喜馬拉雅上分享聲音
《PostgreSQL數(shù)據(jù)庫(kù)內(nèi)核分析》,點(diǎn)開鏈接可以聽聽祭犯,有點(diǎn)意思秸妥。
《數(shù)據(jù)庫(kù)系統(tǒng)概論(第4版)》,點(diǎn)開鏈接可以聽聽沃粗,有點(diǎn)意思粥惧。
更多IT有聲課程,點(diǎn)我發(fā)現(xiàn)更多
其他相關(guān)文章分享列表:
第 23 課 PostgreSQL 創(chuàng)建自己的數(shù)據(jù)庫(kù)最盅、模式突雪、用戶
第 22 課 PostgreSQL 控制文件
第 21 課 PostgreSQL 日志系統(tǒng)
第 16 課 查詢過(guò)程源碼分析
第 15 課 PostgreSQL 系統(tǒng)參數(shù)配置
第 14 課 PostgreSQL 數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)
第 13 課 PostgreSQL 存儲(chǔ)之Page(頁(yè)面)源碼分析
第 12 課 PostgreSQL 認(rèn)證方式
第 11 課 PostgreSQL 增加一個(gè)內(nèi)核C函數(shù)
第 10 課 PostgreSQL 在內(nèi)核增加一個(gè)配置參數(shù)
第 09 課 PostgreSQL 4種進(jìn)程啟動(dòng)方式
第 08 課 PostgreSQL 事務(wù)介紹
第 07 課 PostgreSQL 數(shù)據(jù)庫(kù)、模式涡贱、表咏删、空間、用戶間的關(guān)系
第 06 課 PostgreSQL 系統(tǒng)表介紹
第 05 課 PostgreSQL 編譯源代碼進(jìn)行開發(fā)
第 04 課 PostgreSQL 安裝最新的版本
第 03 課 PostgreSQL 代碼結(jié)構(gòu)
第 02 課 PostgreSQL 的特性问词、應(yīng)用督函、安裝
第 01 課 PostgreSQL 簡(jiǎn)介及發(fā)展歷程
上面文章都在專輯中:PostgreSQL專輯鏈接,點(diǎn)我查看
如果有用激挪,可以收藏這篇文件辰狡,隨時(shí)在更新....
更多交流加群: PostgreSQL內(nèi)核開發(fā)群 876673220
親,記得點(diǎn)贊垄分、留言宛篇、打賞額!1∈叫倍!