linux postgresql默认安装目录,postgresql - 三种安装方式(示例代码)
最近接觸了postgresql的安裝,和大家分享一下。
一、簡(jiǎn) 介
PostgreSQL 是一種非常復(fù)雜的對(duì)象-關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(ORDBMS),也是目前功能最強(qiáng)大,特性最豐富和最復(fù)雜的自由軟件數(shù)據(jù)庫(kù)系統(tǒng)。有些特性甚至連商業(yè)數(shù)據(jù)庫(kù)都不具備。這個(gè)起源于伯克利(BSD)的數(shù)據(jù)庫(kù)研究計(jì)劃目前已經(jīng)衍生成一項(xiàng)國(guó)際開(kāi)發(fā)項(xiàng)目,并且有非常廣泛的用戶(hù)。
二、三種安裝過(guò)程
A. RPM包安裝
1. 檢查PostgreSQL 是否已經(jīng)安裝
rpm -qa|grep?postgres
若已經(jīng)安裝,則使用rpm -e 命令卸載。
2. 下載RPM包
3. 安裝PostgreSQL,注意安裝順序
# rpm -ivh postgresql92-libs-9.2.4-1PGDG.rhel6.i686.rpm
# rpm -ivh postgresql92-9.2.4-1PGDG.rhel6.i686.rpm
# rpm -ivh postgresql92-server-9.2.4-1PGDG.rhel6.i686.rpm
# rpm -ivh postgresql92-contrib-9.2.4-1PGDG.rhel6.i686.rpm
4. 初始化PostgreSQL庫(kù)
PostgreSQL 服務(wù)初次啟動(dòng)的時(shí)候會(huì)提示初始化。
# service postgresql-9.2 initdb
5. 啟動(dòng)服務(wù)
# service postgresql-9.2 start
6. 把PostgreSQL 服務(wù)加入到啟動(dòng)列表
# chkconfig postgresql-9.2on
# chkconfig --list|grep postgres
7. 修改PostgreSQL數(shù)據(jù)庫(kù)用戶(hù)postgres的密碼(注意不是linux系統(tǒng)帳號(hào))
PostgreSQL數(shù)據(jù)庫(kù)默認(rèn)會(huì)創(chuàng)建一個(gè)postgres的數(shù)據(jù)庫(kù)用戶(hù)作為數(shù)據(jù)庫(kù)的管理員,默認(rèn)密碼為空,我們需要修改為指定的密碼,這里設(shè)定為’postgres’。
# su - postgres
$ psql
# ALTERUSER postgres WITH PASSWORD ‘postgres‘;
# select*from pg_shadow ;
B. yum 安裝
1. 將剛才安裝的PostgreSQL 卸載
# /etc/init.d/postgresql-9.2 stop? //停止PostgreSQL服務(wù)
//查看已安裝的包
# rpm -qa|grep postgres
//卸載
# rpm -e postgresql92-server-9.2.4-1PGDG.rhel6.i686
# rpm -e postgresql92-contrib-9.2.4-1PGDG.rhel6.i686
# rpm -e postgresql92-9.2.4-1PGDG.rhel6.i686
# rpm -e postgresql92-libs-9.2.4-1PGDG.rhel6.i686
2. yum 安裝
如果是默認(rèn)yum 安裝的話(huà),會(huì)安裝較低版本的PostgreSQL 8.4,這不符合我們的要求。
我們使用PostgreSQL Yum Repository 來(lái)安裝最新版本的PostgreSQL。
2.1 安裝PostgreSQL yum repository
# rpm -i http://yum.postgresql.org/9.2/RedHat/rhel-6-x86_64/pgdg-redhat92-9.2-7.noarch.rpm
2.2 安裝新版本PostgreSQL
# yum install postgresql92-server postgresql92-contrib
2.3 查看安裝
3. 初始化并啟動(dòng)數(shù)據(jù)庫(kù)
配置文件:/var/lib/pgsql/data/pg_hba.conf
4. 測(cè)試
其他步驟如A方式。
C. 源碼包安裝
1、下載Postgresql源代碼
2、解壓該文件
tar xjvf postgresql-9.0.3.tar.bz2
3、進(jìn)入解壓后的目錄
cd postgresql-9.0.3/
4、查看INSTALL
INSTALL文件中Short Version部分解釋了如何安裝postgresql的命令,Requirements部分描述了安裝postgresql所依賴(lài)的lib,比較長(zhǎng),先 configure試一下,如果出現(xiàn)error,那么需要檢查是否滿(mǎn)足了Requirements的要求。
Short Version
./configuregmakesugmake installadduser postgresmkdir /usr/local/pgsql/datachown postgres /usr/local/pgsql/datasu - postgres/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile?2>&1?&/usr/local/pgsql/bin/createdb test/usr/local/pgsql/bin/psql test
5、執(zhí)行INSTALL文件中Short Version的命令,開(kāi)始編譯安裝postgrepsql數(shù)據(jù)庫(kù)。
./configure ??--prefix=/usr/local/pgsql --with-perl --with-python --with-libxml --with-libxslt
configure: error: readline library not found
If you have readline already installed, see config.log for details on the
failure. It is possible the compiler isnt looking in the proper directory.
yum?install?-y?readline-devel
(sudo apt-get install libreadline5-dev &&?sudo apt-get install zlib1g-dev)
configure:?error:?library?‘xslt‘?is?required?for?XSLT?support
yum?install?libxslt?libxslt-devel
configure:?error:?header?file??is?required?for?Python
yum?install?python?python-devel
configure:?error:?could?not?determine?flags?for?linking?embedded?Perl.
yum install perl-ExtUtils-Embed
安裝readline包之后,重新configure,成功。
6、make
7、make install
8、添加用戶(hù)postgres
useradd postgres
9、創(chuàng)建數(shù)據(jù)庫(kù)文件存儲(chǔ)文件夾
mkdir /usr/local/pgsql/data
#mkdir /data/pgsql
10、改變先前創(chuàng)建的data目錄的文件夾的權(quán)限
chown postgres /usr/local/pgsql/data
#chown postgres ?/data/pgsql
11、切換用戶(hù)
su - postgres
12、綁定數(shù)據(jù)庫(kù)文件存儲(chǔ)目錄
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
#export?PATH=$PATH:/usr/local/pgsql/bin/
#/usr/local/pgsql/bin/initdb -D??/data/pgsql
13、啟動(dòng)數(shù)據(jù)庫(kù)
/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1
[1] 18635
#/usr/local/pgsql/bin/postgres -D ?/data/pgsql ?>logfile 2>&1
[1] 18635
14、創(chuàng)建數(shù)據(jù)庫(kù)test
/usr/local/pgsql/bin/createdb test
15、連接到test數(shù)據(jù)庫(kù)
/usr/local/pgsql/bin/psql test
psql (9.0.3)
Type "help" for help.
test=#
16、創(chuàng)建表table1
test=# create table table1 (
test(# id integer
test(# );
CREATE TABLE
test=#
17、向table1表中插入一條記錄
test=# insert into table1 values(1);
INSERT 0 1
18、查詢(xún)剛剛插入的記錄
test=# select * from table1;
id
----
1
三、客戶(hù)端安裝
因?yàn)閷?duì)于我們來(lái)說(shuō)postgre應(yīng)用范圍很小,單純?nèi)W(xué)他的命令行,對(duì)于我們的時(shí)間管理不是太合適。
所以我們可以去下載一個(gè)客戶(hù)端,進(jìn)行一些簡(jiǎn)單的操作,推薦navicat官網(wǎng)去下載postgresql客戶(hù)端;
----------------------------------------------------------------------------------------
總結(jié)
以上是生活随笔為你收集整理的linux postgresql默认安装目录,postgresql - 三种安装方式(示例代码)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: case是java关键字吗_Java关键
- 下一篇: 浅析Linux开发工具之gcc/g++