PostgreSQL9.2的Centos下安装

环境:CentOS 6.4 最小化缺省安装,配置好网卡。

安装PostgreSQL前,确认Internet连接正常,以便下载安装文件。

先使用

yum -y update 

指令升级系统到最新版本。

本安装将PostgreSQL的数据文件与执行文件分离,如果你打算设置到不同的路径,注意修改对应的执行命令和数据库初始化脚本。

# 修改防火墙设置,打开5432端口

vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT

# 重启防火墙使新设置生效

service iptables restart

# 新增用户组

groupadd postgres

# 新增用户

useradd postgres -g postgres

# 新建数据库执行文件目录

mkdir -p /usr/local/pgsql

# 新建数据库数据文件目录

mkdir -p /db/pgsql/data

# 修改目录拥有者

chown -R postgres /usr/local/pgsql/.
chown -R postgres /db/pgsql/data
chown -R postgres /db/pgsql/data/.

# 编辑PATH搜索路径

vi /etc/profile

添加下面的两行:

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

# 生效PATH搜索路径

source /etc/profile

# 安装编译源码所需的工具和库

yum -y install wget gcc readline-devel zlib-devel make

# 进入源码压缩包下载目录

cd /usr/src

# 下载源码压缩包

可以在这里输入网址看下最新的安装包版本:http://ftp.postgresql.org/pub/source/v9.2.4/

wget http://ftp.postgresql.org/pub/source/v9.2.4/postgresql-9.2.4.tar.bz2

# 解压缩源码包

tar jxvf ./postgresql-9.2.4.tar.bz2

# 进入解压缩源码目录

cd ./postgresql-9.2.4

# 执行源码编译配置脚本

./configure

# 编译源码、安装

make

make install

 # 变更登录用户

su - postgres

# 执行数据库初始化脚本

/usr/local/pgsql/bin/initdb --encoding=utf8 -D /db/pgsql/data

# 退出变更登录

exit

我是可恶的占位符!

# 复制PostgreSQL执行脚本

cp /usr/src/postgresql-9.2.4/contrib/start-scripts/linux /etc/init.d/postgresql

# 增加执行权限

chmod +x /etc/init.d/postgresql

# 编辑PostgreSQL执行脚本,指定数据库文件目录

vi /etc/init.d/postgresql
PGDATA="/db/pgsql/data"

# 编辑配置文件,配置可访问数据库的网络地址

(注意别忘了去掉#listen_addresses=前面的#)

vi /db/pgsql/data/postgresql.conf
listen_addresses = '*'

# 启动PostgreSQL服务

service postgresql start

# 以postgres用户登录数据库,修改postgres用户的数据库密码

psql -U postgres
postgres=# ALTER USER postgres PASSWORD '123456';
postgres=# \q

# 编辑配置文件,设置密码md5验证

vi /db/pgsql/data/pg_hba.conf
#
"local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
#host all all
127.0.0.1/32 trust
host all all
0.0.0.0/0 md5

# 重启数据库服务

service postgresql restart

# 设置开机自动启动服务

chkconfig postgresql on

你可能感兴趣的:(PostgreSQL)