CentOS实验十四:安装PostgreSQL

CentOS 6.4当前软件源中的postgresql-server版本为8.4.13。

 

1. 安装PostgreSQL Server:

$ yum groupinstall "PostgreSQL Database server"

默认的安装目录是/var/lib/pgsql。安装过程中会创建postgres用户和群组。安装完成后可以将服务postgresql设置成自启动:

$ chkconfig postgresql on

 

2. 启动postgresql服务,在此之前需要先初始化:

$ service postgresql initdb

Initializing database:                                     [  OK  ]



$ ls /var/lib/pgsql/data/

total 76

drwx------. 5 postgres postgres  4096 May 25 09:53 base

drwx------. 2 postgres postgres  4096 May 25 10:07 global

drwx------. 2 postgres postgres  4096 May 25 09:53 pg_clog

-rw-------. 1 postgres postgres  3411 May 25 09:53 pg_hba.conf

-rw-------. 1 postgres postgres  1631 May 25 09:53 pg_ident.conf

drwx------. 2 postgres postgres  4096 May 25 10:06 pg_log

drwx------. 4 postgres postgres  4096 May 25 09:53 pg_multixact

drwx------. 2 postgres postgres  4096 May 25 10:07 pg_stat_tmp

drwx------. 2 postgres postgres  4096 May 25 09:53 pg_subtrans

drwx------. 2 postgres postgres  4096 May 25 09:53 pg_tblspc

drwx------. 2 postgres postgres  4096 May 25 09:53 pg_twophase

-rw-------. 1 postgres postgres     4 May 25 09:53 PG_VERSION

drwx------. 3 postgres postgres  4096 May 25 09:53 pg_xlog

-rw-------. 1 postgres postgres 16886 May 25 09:53 postgresql.conf

-rw-------. 1 postgres postgres    57 May 25 10:06 postmaster.opts



$ service postgresql start

Starting postgresql service:                               [  OK  ]

 

3. 修改postgresql.conf监听地址和端口:

$ cat /var/lib/pgsql/data/postgresql.conf

... ...

# - Connection Settings -

listen_addresses = '*'                # what IP address(es) to listen on;

                    # comma-separated list of addresses;

                    # defaults to 'localhost', '*' = all

                    # (change requires restart)

port = 5432                # (change requires restart)

... ...

 

4. 修改pg_hba.conf,配置客户端连接权限。详细的pg_hba.conf配置方法参考《pg_hba.conf 文件简析》。

$ cat /var/lib/pgsql/data/pg_hba.conf

# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD

# "local" is for Unix domain socket connections only

local   all         all                               ident

# IPv4 local connections:

host    all         all         127.0.0.1/32          ident

# IPv6 local connections:

host    all         all         ::1/128               ident

host    all         all         192.168.12.0/24       md5

 

5. 切换到postgres用户,修改数据库默认角色postgres的密码(默认密码为空):

$ su - postgres



$ psql

postgres=# \password postgres

Enter new password: 

Enter it again: 

 

6. 设置完所有posgresql服务参数后,重新载入配置参数:

$ pg_ctl reload

 

7. 修改iptables规则,允许远程连接5432端口:

$ cat /etc/sysconfig/iptables

# Firewall configuration written by system-config-firewall

# Manual customization of this file is not recommended.

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

COMMIT



$ service iptables restart

 

8. 最后,就可以在其它Windows客户端安装pgAdmin,使用postgres角色远程管理服务器了:

CentOS实验十四:安装PostgreSQL

你可能感兴趣的:(PostgreSQL)