在 Linux 上安装 PostgreSQL




在 Linux 上安装 PostgreSQL

2022-07-20 20:34:13 网络知识 官方管理员

说实在的,我的这个LAMP网站,其实是不能遗忘这头大象的。MySQL是一条轻快的小海豚,但是缺少很多现代关系数据库应有的特色,例如:引用完整性,视图,触发器等。因此,如果你需要开发一个电子商务的网站,需要这些功能的话,你或许应该考虑PostgreSQL了。本文将通过其在RedHat7.1上安装过程,简要介绍其用法。

PostgreSQL的官方下载地址为:

ftp://ftp.postgresql.org/pub/v7.1.3/postgresql-7.1.3.tar.gz

http://www.postgresql.org/

如果下载最新的开发版本,你需要下载并安装flex(版本号大于2.5.4)以及bison(版本号大于1.28)

设计人员为了安全考虑,PostgreSQL不能以root用户运行,所以必须建立对应的用户和组。

#useraddpostgre(自动建立postgre组)

安装的过程并不复杂和其他源码版本的安装方法类似:

解压到/usr/local/src:

#tarxvfzpostgresql-7.1.3.tar.gz

#cdpostgresql-7.1.3

#./configure--prefix=/usr/local/pgsql

#make

#makeinstall

#chown-Rpostgre.postgre/usr/local/pgsql

这样安装完毕后,并不是万事大吉了,还有一些收尾工作要做:

#vi~postgre/.bash_profile

添加:

PGLIB=/usr/local/pgsql/lib

PGDATA=$HOME/data

PATH=$PATH:/usr/local/pgsql/bin

MANPATH=$MANPATH:/usr/local/pgsql/man

exportPGLIBPGDATAPATHMANPATH

以postgres用户登录,

#su-postgre

建立数据库目录:

$mkdirdata

启动数据库引擎:

$initdb

[postgre@wwwpostgre]$initdb

Thisdatabasesystemwillbeinitializedwithusername"postgre".

Thisuserwillownallthedatafilesandmustalsoowntheserverprocess.

Fixingpermissionsonpre-existingdatadirectory/home/postgre/data

Creatingdatabasesystemdirectory/home/postgre/data/base

CreatingdatabaseXLOGdirectory/home/postgre/data/pg_xlog

Creatingtemplatedatabasein/home/postgre/data/base/template1

Creatingglobalrelationsin/home/postgre/data/base

Addingtemplate1databasetopg_database

Creatingviewpg_user.

Creatingviewpg_rules.

Creatingviewpg_views.

Creatingviewpg_tables.

Creatingviewpg_indexes.

Loadingpg_description.

Vacuumingdatabase.

Success.Youcannowstartthedatabaseserverusing:

/usr/local/pgsql/bin/postmaster-D/home/postgre/data

or

/usr/local/pgsql/bin/pg_ctl-D/home/postgre/datastart

$postmaster-i-D~/data&

[1]22603

[postgre@wwwpostgre]$DEBUG:DataBaseSystemisstartingupatThuJan3102:00:442002

DEBUG:DataBaseSystemwasshutdownatThuJan3101:57:582002

DEBUG:DataBaseSystemisinproductionstateatThuJan3102:00:442002

这样PostgreSQL使用位于/usr/local/pgsql/data的数据库,允许Internet用户的连接(-i),并在后台运行。

建立数据库

$createdbmydb

PostgreSQL会返回CREATEDDATABASE的信息,表明数据库建立完成。

$psqlmydb

进入交互psql工具,建立表:

CREATETABLEmytable(

idvarchar(20),

namevarchar(30));

建立完成后,会得到一条CREATED的信息,表示建立成功。现在插入一条数据:

INSERTINTOmytablevalues('Author','XuYongjiu');

psql返回INSERT187321,查询插入是否成功:

SELECT*FROMMYTABLE;

退出psql,用\q命令


发表评论:

最近发表
网站分类
标签列表