MathJax

MathJax-2

MathJax-3

Google Code Prettify

置頂入手筆記

EnterproseDB Quickstart — 快速入門筆記

由於考慮採用 EnterpriseDB 或是直接用 PostgreSQL 的人,通常需要一些入手的資料。這邊紀錄便提供相關快速上手的簡單筆記 ~ 這篇筆記以 資料庫安裝完畢後的快速使用 為目標,基本紀錄登入使用的範例:

2016年8月3日 星期三

EDB-LanguagePack 程式語言套件的 Python/Perl 模組安裝筆記

由於 EDB 提供的 Postgres Distribution (含原生版本以及企業版本)有包裝自己用的 Python/Perl/Tcl Distribution,於是要安裝想在 EDB/Postgres 用到的 PL/Python / PL/Perl / PL/Tcl 模組,就要針對資料庫程式額外安裝。

EDB-LanguagePack 在 EDB 公司提供的 Stack Builder(/Plus)套件安裝程式上可以取得並安裝。安裝後的預設路徑為 /opt/EnterpriseDB/LanguagePack/9.{4,5}/。另外,這個安裝路徑不能更動。

在此示範於 CentOS 下的 LanguagePack 安裝後的設置方式,Windows 版本請參考本文末的產品安裝手冊內容連結。

在安裝好 LanguagePack 之後,需要設定 EDB 相關的工具的路徑,以下用企業版本為例:
[enterprisedb@edbvm ~]# cat /opt/PostgresPlus/9.5AS/etc/sysconfig/plLanguages.config
EDB_PERL_VERSION=5.20
EDB_PYTHON_VERSION=3.3
EDB_TCL_VERSION=8.5

EDB_PERL_PATH=/opt/EnterpriseDB/LanguagePack/9.5/Perl-5.20
EDB_PYTHON_PATH=/opt/EnterpriseDB/LanguagePack/9.5/Python-3.3
EDB_TCL_PATH=/opt/EnterpriseDB/LanguagePack/9.5/Tcl-8.5

然後重新啟動資料庫:要注意的是,重啟資料庫需要使用 OS Service 啟動才行,單獨用 pg_ctl restart 會讓 /opt/PostgresPlus/9.5AS/lib/ 下的 pl***.so 抓不到相關的 Library
[root@edbvm ~]# # CentOS 6 與 7 都適用
[root@edbvm ~]# service ppas-9.5 restart

以上便將環境設置完畢。

接著,便說明如何在 EDB 專屬的 Perl/Python 中安裝套件:

以下紀錄有連上網路的狀況安裝方式,並由此蒐集離線安裝的相依套件清單

Perl 部份

(一)線上安裝
用 cpan 進行安裝 cpanminus 套件管理程式,再使用 cpanminus 去安裝要用的套件(參考
[root@edbvm ~]# /opt/EnterpriseDB/LanguagePack/9.5/Perl-5.20/bin/cpan App::cpanminus

使用 cpanminus 安裝 Data-Dumper 為例
[root@edbvm ~]# /opt/EnterpriseDB/LanguagePack/9.5/Perl-5.20/lib/bin/cpanm Data::Dumper

所有安裝好的模組都會出現在 /opt/EnterpriseDB/LanguagePack/9.5/lib/ 底下。

測試一下有沒有安裝好
[root@edbvm ~]# /opt/EnterpriseDB/LanguagePack/9.5/Perl-5.20/bin/perl -e 'use Data::Dumper;'

沒有出現 error 的話就是安裝成功了。

(二)離線安裝
在一般 Server Farm,作業系統通常會是與外部網路隔離的情形,所以得手動安裝 ...,這也表示要自己去追溯套件相依性 ...
不過由於 Language-Pack 提供的的 Perl Distribution 的配置環境對於同一個資料庫版本一樣,因此可以先在可以連網的測試機上用 cpanminus 裝一遍,把相依清單抓出來(Perl CPAN Minus 的套件安裝紀錄會位於 ~/.cpanm/work/************.*****/build.log 裡面),就能依照清單安裝了。
以下為 Perl 模組安裝方式(手動編譯)
[root@edbvm ~]# /opt/EnterpriseDB/LanguagePack/9.5/Perl-5.20/bin/perl Build.pl
[root@edbvm ~]# /opt/EnterpriseDB/LanguagePack/9.5/Perl-5.20/bin/perl Makefile.pl
[root@edbvm ~]# # 上兩列指令依照模組所提供的檔案二選一
[root@edbvm ~]# make
[root@edbvm ~]# make test  # 取決於模組是否需要
[root@edbvm ~]# make install

Python 3 部份

如同一般的 Python Distribution,裡面提供了 Python Setuptools、pip 等線上安裝工具。選一個喜歡的,直接像一般使用方式即可。

以下安裝 cx_Oracle(某一款連線到 Oracle 的 Python 模組)為例
[root@edbvm ~]# /opt/EnterpriseDB/LanguagePack/9.4/Python-3.3/bin/easy_install cx_Oracle

不過額外提醒一下,這需要裝 Oracle-Instant-Client 才行使用

取得相依套件的方式和 Perl 類似,利用 Package Manager 的安裝紀錄找出相依套件就好了。

那 Tcl 呢?目前還沒有附上 Package Manager .... 所以等遇到需求再說囉 ~


參考:

沒有留言:

張貼留言