欢迎光临
我们一直在努力

在Linux上应用PostgreSQL

建站超值云服务器,限时71元/月

PostgreSQL是一个在Unix世界被广泛应用的免费数据库管理系统(DBMS),无论是它支持的特性,还是它的性能都可以和其它的商业数据库一比高低。由于它采用C语言编写,在不同的Unix之间互相移植非常方便,于是PostgreSQL能够在众多的平台上运行,包括:Solaris、AIX、SCO Unix、HP Unix、Linux、FreeBSD等。

   PostgreSQL起源于美国加州大学伯克莱分校计算机科学系的一个数据库研究项目——Postgres。从最初的雏形到现在,PostgreSQL已经发展15年了,新的特性、新的组织方法不断被加进来,其中最重要的要算它对SQL-92标准的完全支持及扩展。目前,PostgreSQL已离开校园,由一个全球性的核心开发队伍维护,并走上了开放源代码的道路。

   我现在就介绍一下在RedHat Linux6.1上如何应用 PostgreSQL。

   Linux上的安装

   在RedHat Linux6.1的光盘上已经带有PostgreSQL的RPM包,安装很方便。这些RPM包有:

   postgresql-6.5.2-1.i386.rpm ①

   postgresql-server-6.5.2-1.i386.rpm ②

   这两个是最基本的,一定要安装。

   postgresql-devel-6.5.2-1.i386.rpm ③

   postgresql-jdbc-6.5.2-1.i386.rpm ④

   postgresql-odbc-6.5.2-1.i386.rpm ⑤

   postgresql-perl-6.5.2-1.i386.rpm ⑥

   postgresql-python-6.5.2-1.i386.rpm ⑦

   postgresql-tcl-6.5.2-1.i386.rpm ⑧

   如果你要在Linux上开发基于PostgreSQL的应用,那么你就还得安装以上6项。④和⑤顾名思义是(Linux平台的)JDBC和ODBC驱动;⑥是PERL的接口;⑦和⑧是用python和tcl写的GUI数据库前端访问工具,工作在X Window下,初学者肯定会喜欢用。

   postgresql-test-6.5.2-1.i386.rpm ⑨

   这是提供给用户测试PostgreSQL运行是否正常的样例,一般可以不安装。

   如果没有RPM包,我们就要先进行编译才能继续安装,具体步骤请参阅有关的文档,这里限于篇幅不再详细介绍。

   准备创建数据库

   用rpm -i postgresql-xxxx-xxxx-x.i386.rpm命令安装所有需要的文件后,我们便要为创建数据库作准备了。检查一下目录:

   /usr/lib/pgsql/目录里面有数据库的模板、样例文件;

   /var/lib/pgsql/这是PostgreSQL默认存放数据库的目录,由于我们不用它存放数据,所以不用理会。

   接下来的这一步很重要——创建数据库拥有者。由于数据库监听进程postmaster(后面将会详细说明)不能由root用户启动,否则会存在安全漏洞,所以我们必须创建一个用户(暂且称为数据库拥有者,以dbms表示),由它来启动postmaster:

   #useradd dbms

   #passwd dbms

   一般我们会把同一个数据库的文件放在一个统一的目录下,例如/database:

   #mkdir /database

   别忘了赋予dbms对/database的全部权限:

   #chown dbms.dbms /database

   为了更好地进行维护、备份,建议在硬盘单独划分一个区用来专门存放/database目录的内容(也就是整个数据库的数据及配置文件),我也是这样做的。在我的硬盘里,划分了一个500MB的分区(/dev/hda10),在赋予权限之前修改/etc/fstab文件。仿照其它硬盘分区加入类似下面的一项:

   /dev/hda10   /database       ext2  defaults  1 2

   当然,别忘了要用mkfs命令把/dev/hda10格式化为ext2类型的分区。

   好,重启机器,在新配置生效后(可用mount查看)再赋予dbms对/database的权限。然后用dbms登录。

   运行数据库初始化程序,我们需要告诉它至少两样东西:一样是原始模板的目录(用“-l”指出,在这里是/usr/lib/pgsql/);另一样是存放初始化后的数据库文件的目录(用“-r”指出,在这里是/database/):

   $initdb -r /database/ -l /usr/lib/pgsql/

   应用PostgreSQL

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 在Linux上应用PostgreSQL
分享到: 更多 (0)