CentOS 安装PostgreSQL 9.1

PostgreSQL通 常也简称Postgres,是一个关系型数据库管理系统,适用于各种Linux操作系统、Windows、Solaris、BSD和Mac OS X。PostgreSQL遵循PostgreSQL许可,是一个开源软件。PostgreSQL由PostgreSQL全球开发组开发,由极少数的公司志 愿组成并进行监督管理,这些公司有红帽、EnterpriseDB等。

PostgreSQL的知名度越来越大,这是理所当然的:它是如此可靠、高效。与传统企业级关系型数据库相比,PostgreSQL完全基于社区驱动,有着丰富的工具和文档,形成了一个完善的生态系统。

postgresql

下面记录的是CentOS上安装PostgreSQL 9.1的过程:

1.添加PosgreSQL Yum Repository,访问http://yum.pgrpms.org/reporpms/repoview/letter_p.group.html,下载并安装和当前系统对应的rpm文件。

[root@SNDA-192-168-15-161 src]# wget http://yum.pgrpms.org/9.1/redhat/rhel-6-x86_64/pgdg-centos91-9.1-4.noarch.rpm
--2012-08-25 16:56:19--  http://yum.pgrpms.org/9.1/redhat/rhel-6-x86_64/pgdg-centos91-9.1-4.noarch.rpm    
Resolving yum.pgrpms.org... 98.129.198.114    
Connecting to yum.pgrpms.org|98.129.198.114|:80... connected.    
HTTP request sent, awaiting response... 200 OK    
Length: 5124 (5.0K) [application/x-redhat-package-manager]    
Saving to: “pgdg-centos91-9.1-4.noarch.rpmâ€

100%[======================================>] 5,124       18.7K/s   in 0.3s

2012-08-25 16:56:19 (18.7 KB/s) - “pgdg-centos91-9.1-4.noarch.rpmâ€

[root@SNDA-192-168-15-161 src]# ls -l    
total 17644    
drwxr-xr-x  9 1001 1001     4096 Aug 18 19:47 nginx-1.2.1    
-rw-r--r--  1 root root   718161 Jun  5 22:10 nginx-1.2.1.tar.gz    
drwxr-xr-x  8 root root     4096 Aug 18 19:44 nginx_tcp_proxy_module    
-rw-r--r--  1 root root     4164 Dec 19  2011 nodejs-stable-release.noarch.rpm    
-rw-r--r--  1 root root  1484480 Aug 18 21:37 node-v0.9.0.tar.gz    
drwxr-xr-x  7 1169 1169     4096 Aug 18 20:11 pcre-8.20    
drwxr-xr-x  8 1169 1169    12288 Aug 18 20:14 pcre-8.30    
-rw-r--r--  1 root root  1635262 Aug 18 20:13 pcre-8.30.tar.gz    
-rw-r--r--  1 root root     5124 Sep 26  2011 pgdg-centos91-9.1-4.noarch.rpm    
drwxr-x--- 18 1000 1002     4096 Aug 18 20:58 Python-2.7.3    
-rw-r--r--  1 root root 14135620 Apr 10 07:28 Python-2.7.3.tgz    
-rw-r--r--  1 root root      539 Aug 18 21:37 wget-log    
[root@SNDA-192-168-15-161 src]# rpm  -Uvh pgdg-centos91-9.1-4.noarch.rpm    
warning: pgdg-centos91-9.1-4.noarch.rpm: Header V4 DSA/SHA1 Signature, key ID 442df0f8: NOKEY    
Preparing...                ########################################### [100%]    
   1:pgdg-centos91          ########################################### [100%]

修改原始的yum仓库配置,在[base]和[updates]部分的尾部追加exclude=postgresql*用以取消从默认仓库安装和更新PostgreSQL。    
[root@SNDA-192-168-15-161 src]# cd /etc/yum.repos.d    
[root@SNDA-192-168-15-161 yum.repos.d]# vi CentOS-Base.repo

安装或者升级postgresql-libs    
[root@SNDA-192-168-15-161 yum.repos.d]# yum upgrade postgresql-libs    
Loaded plugins: fastestmirror, security    
Loading mirror speeds from cached hostfile    
* base: mirrors.grandcloud.cn    
* extras: mirrors.grandcloud.cn    
* updates: mirrors.grandcloud.cn    
base                                                     | 3.7 kB     00:00    
extras                                                   | 3.0 kB     00:00    
nodejs-stable                                            | 2.9 kB     00:00    
pgdg91                                                   | 2.8 kB     00:00    
pgdg91/primary_db                                        | 119 kB     00:01    
updates                                                  | 3.5 kB     00:00    
updates/primary_db                                       | 2.3 MB     00:09    
Setting up Upgrade Process    
No Match for argument: postgresql-libs    
No package postgresql-libs available.    
No Packages marked for Update

安装PostgreSQL Server    
[root@SNDA-192-168-15-161 yum.repos.d]# yum install postgresql91-server    
Loaded plugins: fastestmirror, security    
Loading mirror speeds from cached hostfile    
* base: mirrors.grandcloud.cn    
* extras: mirrors.grandcloud.cn    
* updates: mirrors.grandcloud.cn    
Setting up Install Process    
Resolving Dependencies    
--> Running transaction check    
---> Package postgresql91-server.x86_64 0:9.1.5-1PGDG.rhel6 will be installed    
--> Processing Dependency: postgresql91 = 9.1.5-1PGDG.rhel6 for package: postgresql91-server-9.1.5-1PGDG.rhel6.x86_64    
--> Processing Dependency: libpq.so.5()(64bit) for package: postgresql91-server-9.1.5-1PGDG.rhel6.x86_64    
--> Running transaction check    
---> Package postgresql91.x86_64 0:9.1.5-1PGDG.rhel6 will be installed    
---> Package postgresql91-libs.x86_64 0:9.1.5-1PGDG.rhel6 will be installed    
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================    
Package                  Arch        Version                 Repository   Size    
================================================================================    
Installing:    
postgresql91-server      x86_64      9.1.5-1PGDG.rhel6       pgdg91      3.6 M    
Installing for dependencies:    
postgresql91             x86_64      9.1.5-1PGDG.rhel6       pgdg91      990 k    
postgresql91-libs        x86_64      9.1.5-1PGDG.rhel6       pgdg91      188 k

Transaction Summary    
================================================================================    
Install       3 Package(s)

Total download size: 4.7 M    
Installed size: 20 M    
Is this ok [y/N]: y    
Downloading Packages:    
(1/3): postgresql91-9.1.5-1PGDG.rhel6.x86_64.rpm         | 990 kB     00:06    
(2/3): postgresql91-libs-9.1.5-1PGDG.rhel6.x86_64.rpm    | 188 kB     00:02    
(3/3): postgresql91-server-9.1.5-1PGDG.rhel6.x86_64.rpm  | 3.6 MB     00:43    
--------------------------------------------------------------------------------    
Total                                            90 kB/s | 4.7 MB     00:54    
Running rpm_check_debug    
Running Transaction Test    
Transaction Test Succeeded    
Running Transaction    
Warning: RPMDB altered outside of yum.    
  Installing : postgresql91-libs-9.1.5-1PGDG.rhel6.x86_64                   1/3    
  Installing : postgresql91-9.1.5-1PGDG.rhel6.x86_64                        2/3    
  Installing : postgresql91-server-9.1.5-1PGDG.rhel6.x86_64                 3/3    
  Verifying  : postgresql91-libs-9.1.5-1PGDG.rhel6.x86_64                   1/3    
  Verifying  : postgresql91-server-9.1.5-1PGDG.rhel6.x86_64                 2/3    
  Verifying  : postgresql91-9.1.5-1PGDG.rhel6.x86_64                        3/3

Installed:    
  postgresql91-server.x86_64 0:9.1.5-1PGDG.rhel6

Dependency Installed:    
  postgresql91.x86_64 0:9.1.5-1PGDG.rhel6    
  postgresql91-libs.x86_64 0:9.1.5-1PGDG.rhel6

Complete!

初始化数据库,默认路径为/var/lib/pgsql/9.1/data    
[root@SNDA-192-168-15-161 yum.repos.d]# service postgresql-9.1 initdb    
Initializing database:                                     [  OK  ]

启动服务    
[root@SNDA-192-168-15-161 yum.repos.d]# service postgresql-9.1 start    
Starting postgresql-9.1 service:                           [  OK  ]

[root@SNDA-192-168-15-161 yum.repos.d]# vi /var/lib/pgsql/9.1/data/pg_hba.conf    
[root@SNDA-192-168-15-161 yum.repos.d]# psql -U postgres    
psql: FATAL:  Peer authentication failed for user "postgres"

重启服务    
[root@SNDA-192-168-15-161 yum.repos.d]# service postgresql-9.1 restart    
Stopping postgresql-9.1 service:                           [  OK  ]    
Starting postgresql-9.1 service:                           [  OK  ]

(这里需要先修改配置文件/var/lib/pgsql/9.1/data/pg_hba.conf 将peer或别的改为trust,否则会提示错误Peer authentication failed for user “postgres”),修改客户端认证配置文件,将METHOD由默认的ident改为md5    
[root@SNDA-192-168-15-161 yum.repos.d]# psql -U postgres    
psql (9.1.5)    
Type "help" for help.

postgres=# ALTER USER postgres WITH PASSWORD 'admin'    
postgres-# \q

 

Engine Yard:PostgreSQL是我们的第一选择

PostgreSQL接口编程二:.NetDataProvider--Npgsql驱动

http://blog.csdn.net/beiigang/article/details/7051625

http://www.codeproject.com/Articles/30989/Using-PostgreSQL-in-your-C-NET-application-An-intr

http://datachomp.com/archives/getting-started-with-postgres-and-mvc3/

http://www.pgadmin.org/


你可能感兴趣的:(CentOS 安装PostgreSQL 9.1)