FreeBSD下安装PostgreSQL新手教程
2024-07-21 02:07:16
供稿:网友
freebsd下安装postgresql新手教程
作者: heiyeluren
qq群: 5415735 (freebsd安装维护群)
日期: 2004/9/17
-- 特别感谢qq群好友阿南,本文在他的耐心指导下才产生 --
postgresql是一个开源的数据库管理系统,postgresql 是一种非常复杂的对象-关系型数据库管理系统(ordbms), 也是目前功能最强大,特性最丰富和最复杂的自由软件数据库系统。它的很多特性正是当今许多商业数据库的前身,有些特性甚至连商业数据库都不具备。 相对mysql来讲,postgresql是个非常彻底的有众多黑客所开发的开源程序,目前它是redhat等linux操作系统上的标配。 :-)
今天我们就来说说postgresql在freebsd平台上的安装过程,没有什么复杂的,只是我这两天安装过程的一个总结,希望能够安装的新手一个提示。( 我们使用的freebsd系统是5.2.1版,其他安装平台应该类似,我们以下安装postgresql全部手工,你也可以使用ports)
首先去postgresql的官方ftp服务器上把安装程序下载回来,我使用的版本是 7.4.5 ,大小是11.9mb。(毕竟是源代码,不是很大,呵呵)
下载地址: ftp://ftp.postgresql.org/pub/v7.4.5/postgresql-7.4.5.tar.gz
下载回来以后,我们放到 /usr/src 目录下,首先把程序解压:
# tar zxvf postgresql-7.4.5.tar.gz
解压后生成postgresql-7.4.5目录,进入目录:
# cd postgresql-7.4.5
配置程序和安装目录:
# ./configure --prefix=/usr/local/pgsql
我们的安装程序需要使用gmake而不是使用make,所以我们要检查我们的系统有没有gmake:
# gamke
gmake: command not found.
看来我们的系统没有安装gmake,所以我们要先安装gmake,我们就采用freebsd的专长ports来安装,:(如果你的系统安装了gmake就继续安装postgresql)
# whereis gmake # 先找找我们的gmake的ports在哪里
gmake: /usr/ports/devel/gmake # 哦,在这里呀,呵呵
# cd /usr/ports/devel/gmake
# make install # 呵呵,我们开始ports了。。。
一般等十几分钟就行了,我等了十二分钟,根据网速等的不同。
安装好gamke,我们就能够在/usr/local/bin里面找到它:
# ls -l /usr/local/bin/gamke
-r-xr-xr-x 1 root wheel 144196 sep 17 11:59 /usr/local/bin/gmake
然后我们就能够使用gmake继续来安装我们的postgresql了,当然,你也能够先把gmake安装好然后再进行postgresql的安装,我们继续:
# cd /usr/src/postgresql-7.4.5 # 进入postgresql的安装目录
# /usr/local/bin/gmake # 执行gmake来编译
# /usr/local/bin/gmake install # 进行安装,程序将安装到/usr/local/pgsql目录下
如果上面操作出错的话,请按照安装步骤检查你是否操作正确。
因为运行postgresql为了安全考虑不能使用root用户,所以我们要建立一个用户来专门运行postgresql:
# pw user add postgres # 添加一个名为postgres的用户
# mkdir /usr/local/pgsql/data # 新建一个用来存放数据库的文件夹
为了让postgres能够完全控制data目录,我们设置权限:
# chown postgres /usr/local/pgsql/data
设置权限后,我们就切换到 postgres用户:
# su postgres
再初始话数据库:
$ /usr/local/pgsql/bin/initdb -d /usr/local/pgsql/data
呵呵,如果到这里没有错的话,我们的postgresql基本上就安装好了,我们就启动postgresql:
$ /usr/local/pgsql/bin/postmaster -d /usr/local/pgsql/data & # 启动postgresql
$ log: could not create socket for statistics collector: protocol not supported
log: database system was shut down at 2004-09-17 14:20:52 cst
log: checkpoint record is at 0/9b6e1c
log: redo record is at 0/9b6e1c; undo record is at 0/0; shutdown true
log: next transaction id: 541; next oid: 17143
log: database system is ready
这时候程序就停在这里了,因为程序已经启动了,不能结束当前的程序,否则数据库会终止运行,这时候我们再另开一个终端以postgres用户
登陆后查看进程:
$ top
pid username pri nice size res state time wcpu cpu command
891 postgres 96 0 13508k 2708k select 0:00 0.00% 0.00% postgres
如果看到上面类似的进程,那么我们的postgresql就启动成功,能够使用了。
最后再建立一个数据库:
$ /usr/local/pgsql/bin/createdb test # 建立一个数据库test
create database
创建数据库成功后,就能够通过postgresql的客户端连接过去:
$ /usr/local/pgsql/bin/psql test
welcome to psql 7.4.5, the postgresql interactive terminal.
type: /copyright for distribution terms
/h for help with sql commands
/? for help on internal slash commands
/g or terminate with semicolon to execute query
/q to quit
test=#
最后的,test=#是终端提示符,那么你就能够这里管理postgresql和执行sql语句,具体请参考postgresql手册。
参考资料:
postgresql中文手册 http://www.pgsqldb.org/pgsqldoc-7.4/index.html
postgresql中文网站 http://www.pgsqldb.org
writetime: 2004-9-17 下午