centos安装pgsql

安装PostgreSQL源

CentOS 6.x 32bit

sudo rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-6-i386/pgdg-centos94-9.4-1.noarch.rpm

CentOS 6.x 64bit

sudo rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-1.noarch.rpm

CentOS 7 64bit

sudo rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-7-x86_64/pgdg-centos94-9.4-1.noarch.rpm

在添加源的步骤中并没有太多的区别,主要是源的地址有一定的变化。

执行安装命令

sudo yum update
sudo yum install postgresql94-server postgresql94-contrib

验证是否安装成功

sudo rpm -aq| grep postgres

执行结果如下:

postgresql94-libs-9.4.1-1PGDG.rhel7.x86_64
postgresql94-server-9.4.1-1PGDG.rhel7.x86_64
postgresql94-9.4.1-1PGDG.rhel7.x86_64
postgresql94-contrib-9.4.1-1PGDG.rhel7.x86_64

初始化数据库

CentOS 6.x 系统

sudo service postgresql-9.4 initdb

CentOS 7 系统

sudo /usr/pgsql-9.4/bin/postgresql94-setup initdb

在初始化数据库时可以指定参数 –PGDATA=“/data”,该参数是用于指明数据库的数据文件的存放路径,默认是在/var/lib/pgsql/9.4/data路径下。

如果我在CentOS 7下执行 service postgresql-9.4 initdb 将会报如下问题

The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.

启动服务并设置为开机启动

CentOS 6.x 系统

sudo service postgresql-9.4 start
sudo chkconfig postgresql-9.4 on

CentOS 7 系统

sudo systemctl enable postgresql-9.4
sudo systemctl start postgresql-9.4

开放防火墙端口

CentOS 6.x 系统

vi /etc/sysconfig/iptables

按下I进入输入模式,在文件中加入一下语句

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

输入完成后按ESC退出编辑模式,输入:wq退出VI编辑界面。

重启防火墙服务

sudo service iptables restart

CentOS 7 系统

sudo firewall-cmd --permanent --add-port=5432/tcp
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --reload

访问PostgreSQL

su - postgres

输出结果如下:

上一次登录:一 5月 18 15:17:29 CST 2015pts/0 上
-bash-4.2$

输入命令psql将看到PostgrSQL的版本信息。

psql (9.4.1)
输入 “help” 来获取帮助信息.

设置postgres用户密码

postgres=# \password postgres

修改PostgresSQL 数据库配置实现远程访问

修改postgresql.conf 文件

vi /var/lib/pgsql/data/postgresql.conf

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

修改客户端认证配置文件pg_hba.conf

将需要远程访问数据库的IP地址或地址段加入该文件。

vi /var/lib/pgsql/9.2/data/pg_hba.conf

重启服务以使设置生效

service postgresql-9.2 restart


转载请注明: MrLi centos安装pgsql

上一篇
http协议 http协议
简介HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。。HTTP是一个基于TCP/IP通信协议来传
2017-05-22
下一篇
linux的iptables开发mysql端口 linux的iptables开发mysql端口
修改防火墙配置文件: vi /etc/sysconfig/iptables 增加下面一行: -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j
2017-05-15
目录