環境:作業系統:Ubuntu Server 10.10Postgresql 版本:8.4.51.切換到ROOT賬戶,在根目錄下建立Softwares目錄,並賦於相應許可權
2.下載 Postgresql 8.4.5
wget http://wwwmaster.postgresql.org/redir/391/f/source/v8.4.5/postgresql-8.4.5.tar.gz
下載之後,可以在目前的目錄下看到postgresql-8.4.5.tar.gz檔案。
然後利用tar命令對該檔案進行解壓。
tar vxf ./postgresql-8.4.5.tar.gz
解壓後會在目前的目錄下看到postgresql-8.4.5的目錄,該目錄有如下檔案
在安裝前需要做些設定,首先是安裝兩個庫檔案:libreadline5.dev、zlib1g.dev
sudo apt-get install libreadline5-dv sudo apt-get install zlib1g-dev
配置好了編譯Postgresql的環境後,就依次執行以下的命令:
./configure --prefix=$PostgresqlPath make make install
註:$PostgresqlPath為你所指定的Postgresql的安裝目錄,如:/softwares/postgresql
漫長的編譯安裝結束後,我們會在指定目錄下看到安裝目錄。
cd $PostgresqlPath/bin
進入Postgresql安裝目錄下的Bin目錄中,在該目錄下建立一個名為PGDATA的儲存資料庫檔案的目錄並在該目錄下建立一個postgres的目錄, 建立一個名為postgres的使用者(專門用來操作資料庫),並將postgres目錄所有者指定給它。
完成以上動作後,切換使用者為postgres後進入$PostgresqlPath/bin目錄執行如下命令初始化資料目錄:
./initdb -D PGDATA/postgres
初始化建立完了會有如下提示
可以用提示中的兩個命令去啟動資料庫,我選用第一條命令:
./postgres -D PGDATA/postgres
到這裡,你所建立的使用者為名的資料庫已經啟動了,可以用pgsql對其進行操作了。 為了使資料庫能在開機時啟動,我們可以對其進行開機啟動設定 首先我們要確認當前Ubuntu所在的運行層級,用runlevel命令
由此我們可以看出N 2表明當前Ubunut的運行層級為2,我們需要在etc目錄下的rc2.d中設定啟動項。
進入rc2.d目錄,我們看到如所示的列表,我們需要在S03rc.local中添加Postgresql的啟動命令。在此我們需要對S03rc.local的檔案命令做下詮釋:可以看到該目錄下的檔案名稱大多是以 S+數字+檔案名稱 組成,S 代表為該檔案開機就執行,與其對應的有 K 開頭的檔案,代表開機不運行,這與Windows下的服務有啟動與停止類似。數字 代表運行優先順序,數字越大,越優先。 我們用VI對S03rc.local進行編輯:
我們在箭頭所指處添加如下代碼:
su -c "/softwares/postgresql/bin/pg_ctl start -D /softwares/postgresql/bin/PGDATA/postgres" postgres
儲存後退出檔案編輯,先別急著重啟測試,先需要改一下Ubuntu的Shell設定,自Ubuntu 6.0以上開始,Shell由原來的Bash成了體積更小的Dash,後者比前者的體積更小,效率高,但同時有些以前Bash下支援很好的Shell無法在Dash下運行,因此建議將其換回Bash。具體步驟如下:
鍵入:sudo dpkg-reconfigure dash
在以上介面中選擇"No",會出現以下介面:
從我們可以發現ubuntu刪除了指向dash的連結,加入了bash的連結及庫。
到此我們的在Ubuntu上配置Postgresql就結束了,讓我們用shutdown -r now去重啟下Ubuntu試試看開機啟動Postgresql的效果吧。
記憶の片段 發佈於Ubuntu 下源碼安裝Postgresql | CnTechs.tk