一、安装(以root身份进行)
1、检出最新的postgresql的yum配置从http://yum.pgsqlrpms.org/reporpms/repoview/pgdg-centos.html
然后根据版本选择需要的rpm后执行下列命令
rpm -Uvh http://yum.pgsqlrpms.org/reporpms/8.3/pgdg-centos-8.3-6.noarch.rpm
yum upgrade postgresql-libs
3、安装postgresql
yum install postgresql postgresql-server
4、初始化数据库以及启动服务
service postgresql initdb
service postgresql start
二、配置
在配置之前需将postgresql的端口号5432在iptables下开放。
开放方法参考:http://blog.csdn.net/ivan820819/archive/2009/02/03/3860163.aspx
yum安装postgresql后的安装路径为:/var/lib/pgsql下,主要配置文件在其data文件夹下,进入data文件夹
如果想让Postgresql监听整个网络的话,将listen_addresses前的#去掉,并将listen_addresses = 'localhost'改成listen_addresses = '*'
2、修改pg_hba.conf
这个文件最后有一个列表,它决定了分派了每一个用户的权限,以及认证方式。格式是“Type Database User Address Method”,要注意的是method最好写md5。
在列表后追加一行:host all all 192.168.1.0/24 password
3、修改postgres用户密码:passwd postgres
4、暂时将pg_hba.conf中,本机的认证方式改为trust,切换当前用户为postgres:su postgres
5、用psql登录Postgresql系统,“SELECT * FROM pg_shadow;”,发现这个表里的postgres这个用户根本还没有存储密码;于是,再“ALTER USER postgres PASSWORD '它的密码';
6、重启服务/etc/init.d/postgresql restart,连接成功。
参考
http://www.surfybeach.net/blog/archives/29
http://blog.csdn.net/nicky_zs/archive/2008/12/27/3618705.aspx
https://public.commandprompt.com/projects/pgcore/wiki
2。 Linux iptables 开放postgresql端口5432
修改防火墙配置文件:
vi /etc/sysconfig/iptables
增加下面一行:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT
如果想开通21等端口,只需要将5432换成21等要开放的端口就可以了。
配置后,重新启动iptable
service iptables restart
这时就可以从外网访问postgresql了
参考:http://blog.csdn.net/ivan820819/archive/2009/02/03/3860163.aspx
3. postgresql启动失败
service postgresql start 只有[faild],没提示错误信息,查看一下日志less /var/lib/pgsql/pgstartup.log 有了错误不要害怕,查看日志就可以发现问题 参考:http://www.cnblogs.com/leajon-first/archive/2012/08/01/2617813.html http://hi.baidu.com/gispdr/item/e0ccea043b1a5b3ea3332a8d
参考:http://www.PHP100.com/manual/Postgresql8/auth-methods.html
原文链接:https://www.f2er.com/postgresql/196272.html