CentOs 下安装并配置postgresql

来源:互联网 发布:淘宝好评返现 编辑:程序博客网 时间:2024/04/30 22:13
一、安装并配置数据库:

1.安装:
CentOS 默认yum 安装的话,会安装较低版本的PostgreSQL 8.4,这不符合我们的要求。

(数据库版本过低会导致数据导入异常和数据丢失,建议使用9.1或更高版本数据库)


如果已经安装了Postgresql数据库的话建议先卸载:


*卸载postgresql-8.4*
    #/etc/init.d/postgresql stop       //停止PostgreSQL服务
    # rpm -qa|grep postgres            //查看已安装的包

//卸载
   #rpm -e postgresql-8.4.20-2.el6_6.x86_64
   #rpm -e postgresql-server-8.4.20-2.el6_6.x86_64
   #rpm -e postgresql-libs-8.4.20-2.el6_6.x86_64


*yum 安装*

//下载
我们使用PostgreSQL Yum Repository 来安装稳定版本的PostgreSQL-9.1

访问http://yum.postgresql.org/repopackages.php#pg93
下载并安装和当前系统对应的rpm文件(CentOS 6 - x86_64)


  # rpm -Uvh pgdg-centos91-9.1-4.noarch.rpm

   

//配置
修改原始的yum仓库配置,在[base]和[updates]部分的尾部追加
exclude=postgresql*用以取消从默认仓库安装和更新PostgreSQL。


  # cd /etc/yum.repos.d
  # vim CentOS-Base.repo

安装或者升级postgresql-libs2.初始化数据库以及启动服务:
/* 初始化数据库,默认路径为/var/lib/pgsql/9.1/data */

[root@sil4linux sil4]# service postgresql initdb
Initializing database:                                     [  OK  ]
# service postgresql start
Starting postgresql service:                               [  OK  ]

或:
/etc/init.d/postgresql-9.1 initdb
/etc/init.d/postgresql-9.1 start


  # yum upgrade postgresql-libs

//安装
  # yum list postgres*
  # rpm -qa | grep postgres
  # yum install postgresql91-server postgresql91-contrib


3.配置
yum安装postgresql-9.1后的默认安装路径安装路径为:
/var/lib/pgsql/9.1,主要配置文件在其data文件夹下,
进入data文件夹;

*修改postgresql.conf文件

如果想让PostgreSQL监听整个网络的话,将listen_addresses前的#去掉,
并将listen_addresses = 'localhost'改成listen_addresses = '*'

*修改pg_hba.conf

这个文件最后有一个列表,它决定了分派了每一个用户的权限,以及认证方式。
格式是“Type Database User Address Method”,要注意的是method最好写md5。

在列表后追加一行:host  all  all  192.168.1.0/24  trust*修改postgres用户密码
[root@sil4linux data]# passwd postgres

*切换当前用户为postgres:
[root@sil4linux data]# su postgres

*用psql登录PostgreSQL系统
[root@sil4linux data]# su postgres
bash-4.1$ psql
psql (8.4.20)
输入 "help" 来获取帮助信息.

postgres=# SELECT * FROM pg_shadow;” #发现这个表里的postgres这个
                                      用户根本还没有存储密码;
于是:
postgres=# ALTER USER postgres WITH PASSWORD 'nopasswd';

*重启服务
[root@sil4linux data]# /etc/init.d/postgresql-9.1 restart
停止 postgresql 服务:                                     [确定]
启动 postgresql 服务:                                     [确定]




0 0