1),PostgreSQL是通用型數(shù)據(jù)庫。
目前創(chuàng)新互聯(lián)已為成百上千的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站托管維護、企業(yè)網(wǎng)站設(shè)計、渾江網(wǎng)站維護等服務(wù),公司將堅持客戶導向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
PG有著豐富的數(shù)據(jù)類型(數(shù)值、字符、時間、布爾、貨幣、枚舉、網(wǎng)絡(luò)地址、JSONB等等)和索引類型( B-tree、Hash、GiST、SP-GiST 、GIN 和 BRIN等 )??梢源鎯陀嬎愦蠖鄶?shù)場景的業(yè)務(wù)數(shù)據(jù),如 ERP、交易系統(tǒng)、財務(wù)系統(tǒng)涉及資金、客戶等信息,數(shù)據(jù)不能丟失且業(yè)務(wù)邏輯復雜,選擇 PostgreSQL 作為數(shù)據(jù)底層存儲,一是可以幫助您在數(shù)據(jù)一致性前提下提供高可用性,二是可以用簡單的編程實現(xiàn)復雜的業(yè)務(wù)邏輯 。適合各種OLTP和部分OLAP場景。
2),PostgreSQL數(shù)據(jù)庫包含許多第三方插件。
如PostGIS等可以直接在數(shù)據(jù)庫里進行地理位置相關(guān)的gis類存儲和運算(LBS地理位置相關(guān)業(yè)務(wù)等O2O場景),其他的插件如Pg_stat_statements、uuid-ossp、pg_trgm、btree-gist插件、 pgcrypto加密等插件 。
3),中小型企業(yè)快速搭建 數(shù)據(jù)倉庫和數(shù)據(jù)分析平臺(TB級別)
PostgreSQL 提供豐富的數(shù)據(jù)類型和強大的計算能力,能夠幫助您更簡單搭建數(shù)據(jù)庫倉庫或大數(shù)據(jù)分析平臺,為企業(yè)運營加分。
4),冷熱分離
針對流水類的大表,PG可以使用分區(qū)表,線上保留熱數(shù)據(jù), 歷史 數(shù)據(jù)存放在分區(qū)表里或者OSS等冷數(shù)據(jù)平臺,冷熱分離。
5),公有云支持度高如阿里云、騰訊云、華為云等公有云都有對應(yīng)的RDS-PG產(chǎn)品,開箱即用,并提供技術(shù)支持。
OLTP:事務(wù)處理是PostgreSQL的本行
OLAP:ANSI SQL兼容,窗口函數(shù),CTE,CUBE等高級分析功能,任意語言寫UDF,citus分布式插件
流處理:PipelineDB擴展,Notify-Listen,物化視圖,規(guī)則系統(tǒng),靈活的存儲過程與函數(shù)編寫
時序數(shù)據(jù):timescaledb時序數(shù)據(jù)庫插件,分區(qū)表,BRIN索引
空間數(shù)據(jù):PostGIS擴展(殺手锏),內(nèi)建的幾何類型支持,GiST索引。
搜索索引:全文搜索索引足以應(yīng)對簡單場景;豐富的索引類型,支持函數(shù)索引,條件索引
NoSQL:JSON,JSONB,XML,HStore原生支持,至NoSQL數(shù)據(jù)庫的外部數(shù)據(jù)包裝器
數(shù)據(jù)倉庫:能平滑遷移至同屬Pg生態(tài)的GreenPlum,DeepGreen,HAWK等,使用FDW進行ETL
字符集不對,你修改保存時的字符集與PostgreSQL的字符集不一致。因為PostgreSQL默認是不轉(zhuǎn)換字符集的,所以需要檢查你的客戶端和PostgreSQL的設(shè)置。
檢查方法如果:
1、檢查你保存的數(shù)據(jù)中是否存在非法字符。
2、保存時不保存中文字符,如果能夠保存成功,說明PostgreSQL沒有配置中文字符集。
3、檢查客戶端(程序)設(shè)置的字符集是否與PostgreSQL一致。
具體設(shè)置方法網(wǎng)上有許多,這里就不詳細說明了。
我們在使用Postgresql的時候,首先需要開啟Postgresql服務(wù)。那么在Windows系統(tǒng)中有哪些方法開啟Postgresql服務(wù)呢?下面我給大家分享一下。
工具/材料
任務(wù)管理器,服務(wù)面板,CMD命令行
服務(wù)面板開啟
01
首先按Win+R組合鍵打開運行窗口,在輸入框中輸入services.msc命令,如下圖所示
02
在出現(xiàn)的服務(wù)界面中我們找到postgresql的記錄行,如下圖所示,右鍵單擊選擇啟動
03
當服務(wù)的狀態(tài)顯示為正在運行的時候則代表postgresql服務(wù)已經(jīng)打開了,如下圖所示
任務(wù)管理器開啟
01
按住鍵盤上的Ctrl+Shift+ESC組合鍵,注意是同時按下,不是一個個按,如下圖所示
02
在彈出的任務(wù)管理器窗口中切換到服務(wù)面板,找到postgresql服務(wù),右鍵單擊選擇開始選項,如下圖所示
命令行開啟
01
找到所有程序下面的Windows系統(tǒng),然后點擊命令提示符,如下圖所示
02
另外也可以直接打開運行界面輸入CMD命令打開命令提示符界面,如下圖所示
03
在命令提示符中通過net start命令來開啟postgresql服務(wù),如下圖所示,注意服務(wù)名一定要寫正確
在pgAdmin的窗口中,直接打開SQL文件然后執(zhí)行就可以了。
你所說的Oracle的執(zhí)行方式,應(yīng)該是在sql
plus命令窗口中執(zhí)行sql文件。這個功能在PostgreSQL的命令窗口psql中也有此功能:開啟psql命令窗口之后,執(zhí)行命令:
\i sqlfile_path就可以執(zhí)行指定的sql文件了,
其中sqlfile_path是要執(zhí)行的sql文件,
如下圖,
要注意的是:
在Windows系統(tǒng)中,路徑中用的是斜杠,不是反斜杠。
一、去官方網(wǎng)站下載PostgreSQL當前最新版(當前最新版本為9.3.2)
如上圖,下載紅框內(nèi)的Source文件。
二、除此之外還需準備Perl(當前最新為5.18.1.1800)及Flex、Bison安裝包
之所以用Perl是因為我們后面安裝PG主要采用的就是Perl來安裝,而Flex、Bison則是PG中對命令或查詢語句進行詞法、語法解析所用到的,Perl的安裝教程請戳這里^_^(安裝到C盤也不要緊,我們可以添加系統(tǒng)環(huán)境變量解決),F(xiàn)lex、Bison下載后不用安裝,至于有童鞋想知道為什么PG需要這兩個東西請戳這里^_^。我們現(xiàn)在有Flex、Bison的包,有PG的Source Code及Perl的安裝包(要安裝),如下圖所示:
準備好的程序
Flex_Bison文件夾中的程序
將PG及flex_bison放置于同一文件夾下即可。
三、開始安裝PostgreSQL
首先要修改一個小地方,打開PG文件夾,找到MKVcbuild.pm文件(如下圖所示),用文本編輯器打開(如Notepad++),修改其中my $vsVersion = DetermineVisualStudioVersion()該行,變?yōu)?/p>
my $vsVersion = “9.0.0”,至于為什么這么改,是因為不這么改,我的VS2008就無法打開,并且項目也無法編譯成功,這個地方我不敢保證是不是特例還是共性,有待驗證。具體如下圖所示:
接下來如果Perl是安裝到了C盤,則在系統(tǒng)環(huán)境變量中添加Perl的C盤路徑位置,比如:
打開你的命令編輯器,因為我的電腦是64位的,這里我打開的是VS自帶的64位命令編輯器,CMD也OK。
到MSVC目錄下,輸入perl build.pl DEBUID
這樣就開始編譯了,全過程大概需要5分鐘吧,期間可能會有若干warning,但是無所謂啦,只有沒有error就行,(我自己安裝了兩遍,有些許warning,但是絕對沒有error出現(xiàn))
編譯結(jié)束后,就可以打開你的工程了,如下圖所示
接著在命令編輯器中繼續(xù)輸入perl install.pl (此處為bin文件夾路徑,自己指定),例如:
perl install.pl C:/bin,這樣就可以將相關(guān)執(zhí)行文件拷貝到你的bin目錄下,將來執(zhí)行的時候就可以在bin目錄下執(zhí)行了
執(zhí)行完后,恭喜,PG就安裝完成了,下面你可以簡單的登陸你的PG來進行調(diào)試了
四、簡單的調(diào)試
首先初始化系統(tǒng)數(shù)據(jù)目錄(包括系統(tǒng)表等元數(shù)據(jù))輸入initdb.exe DB(數(shù)據(jù)目錄名字,可自己指定)
其次啟動服務(wù)器,輸入postgreys.exe -D DB (注意-D中的D一定要大寫)
再次,啟動客戶端(另打開一個窗口),輸入psql.exe DB
最后,自己可以create
database,create table,往table中insert
into些數(shù)據(jù),最后可以select數(shù)據(jù)等等,就可以自由操縱了,比如下例中,執(zhí)行一個Select語句,通過VS2008附加到進程中去跟代碼,具體研究PG的細節(jié)實現(xiàn)。
五、結(jié)尾