CentOS 6安裝PostgreSQL

來源:互聯網
上載者:User

標籤:font   support   吸引   sybase   amp   流程   str   封裝   程式   

 https://zh.wikipedia.org/wiki/PostgreSQL

PostgreSQL是自由的對象-關係型資料庫伺服器(資料庫管理系統),在靈活的BSD-風格許可證下發行。它在其他開放原始碼資料庫系統(比如MySQL和Firebird),和專有系統比如Oracle、Sybase、IBM的DB2和Microsoft SQL Server之外,為使用者又提供了一種選擇。

PostgreSQL不尋常的名字導致一些讀者停下來嘗試拼讀它,特別是那些把SQL拼讀為"sequel"的人。PostgreSQL開發人員把它拼讀為"post-gress-Q-L"。(Audio sample,5.6k MP3)。它也經常被簡略念為"postgres"。

在PostgreSQL中程式員可以用一組可觀的支援語言中任何一種來寫這種邏輯。

  • 類似於Oracle的過程語言PL/SQL的叫做PL/PgSQL的內建語言,在處理查詢密集的過程時提供了獨特的優勢。
  • 流行指令碼語言比如Perl,Python,Tcl,和Ruby的封裝器,允許利用它們在字串處理和串連到廣闊的外部函數庫的力量。
  • 需要把複雜邏輯編譯到機器代碼所能提供的高效能的過程可以利用C或C++。
  • 在更加深奧的方面,R統計語言的處理器允許資料庫查詢利用它的一組豐富的統計函數。

程式員可以把代碼作為函數插入伺服器中,它是使代碼類似於預存程序的一個小封裝器。以這種方式SQL代碼可以調用(比如)C代碼或反之。

  • 效能增進,因為資料庫引擎在一個時間一個地方調用所有的邏輯,減少了在客戶和伺服器之間的來回往返的次數。
  • 可靠性增進,因為資料驗證代碼集中到一個地方,就在伺服器上,而不用依賴在多個客戶應用中的同步邏輯,它們甚至可能以多種程式設計語言寫成。
  • 通過向伺服器增加有用的抽象,客戶代碼可以變得更短小和簡單。

這些優勢合起來可以證實PostgreSQL從編程角度是最進階的資料庫系統。使用PostgreSQL可以顯著的減少很多項目的整體編程時間,這種優勢隨著項目複雜而增長。

通過函數,可以在資料庫伺服器端執行指令程式。儘管這樣的指令程式可以使用基本的SQL語句寫成,但是由於其缺乏流程式控制制等功能,所以在PostgreSQL中引入了使用其它程式語言編寫函數的能力,包括:

  • 一個內建的名為PL/pgSQL的過程語言,類似於Oracle的PL/SQL;
  • 包括PL/Perl,PL/PHP,PL/Python,PL/Ruby,PL/sh,PL/Tcl與PL/Scheme在內的指令碼語言;
  • 編譯語言:C,C++,或Java(通過PL/Java)。
  • R統計語言(PL/R)。

以上部分的語言,甚至可以在觸發器內執行。PostgreSQL支援行返回函數:它們的輸出是一系列行類型資料的集合,可以在查詢中當作表來使用。函數也可以被定義成以建立者或者調用者的身份運行。在某些場合,或者其他的資料庫產品中,函數也會被稱為“預存程序”,但技術上這兩者並未有太大分別。

 

吸引我注意的是上面所說的,有強大的編程能力。以前一直用 T-SQL寫SP,覺得它的表達能力非常有限,正想尋找一個有強大的編程能力的資料庫引擎。

 

官網:

https://www.postgresql.org/

https://www.postgresql.org/download/linux/redhat/

簡單的安裝命令,但版本不是最新的:

yum install postgresql-server

 

若想安裝最新版本,需要添加repo.

https://yum.postgresql.org/repopackages.php

Please note that PostgreSQL YUM repository depends on EPEL repository for some packages. RHEL/CentOS/, etc.

users should install EPEL repo RPM along with PGDG repo RPMs to satisfy dependencies.

1: EPEL (Extra Packages for Enterprise Linux)

https://support.rackspace.com/how-to/install-epel-and-additional-repositories-on-centos-and-red-hat/

  • CentOS and Red Hat Enterprise Linux 6.x

    wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpmsudo rpm -Uvh epel-release-6*.rpm
  • CentOS and Red Hat Enterprise Linux 7.x

    wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpmsudo rpm -Uvh epel-release-latest-7*.rpm

2: PGDG repo

https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-6-x86_64/pgdg-centos96-9.6-3.noarch.rpm

成功安裝後會發現: 

/etc/yum.repos.d

目錄出了幾個檔案:

-rw-r--r--. 1 root root  957 12月 10 15:32 epel.repo

-rw-r--r--. 1 root root 1056 12月 10 15:32 epel-testing.repo

-rw-r--r--. 1 root root 1364 12月 10 15:57 pgdg-96-centos.repo

-rw-r--r--. 1 root root 1012 12月 10 15:45 pgdg-96-centos.repo.backup

輸入命令:

# yum info postgresql96-server

若出現路徑錯誤, 需要分別修改一下路徑:

http://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-6.2-x86_64/

最後成功提示包資訊,說明配置成功。

最後執行:

[[email protected] yum.repos.d]# yum groupinstall "PostgreSQL Database Server 9.6 PGDG"

...

已安裝:

  postgresql96.x86_64 0:9.6.1-1PGDG.rhel6                                        

  postgresql96-contrib.x86_64 0:9.6.1-1PGDG.rhel6                                

  postgresql96-libs.x86_64 0:9.6.1-1PGDG.rhel6                                   

  postgresql96-server.x86_64 0:9.6.1-1PGDG.rhel6                                 

 

完畢!

說明安裝成功。

 

CentOS 6安裝PostgreSQL

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.