本文涉及CentOS7下PostgreSQL9.6的yum安装,访问配置及简单使用。

一.验证环境

1. 操作系统

CentOS-7-x86_64-Everything-1511

2. PostgresSQL版本

PostgreSQL 9.6.3:https://www.postgresql.org/download/linux/RedHat/

二.安装

1. 安装rpm

2. 安装客户端

[root@psql_master ~]# yum install -y postgresql96

3. 安装服务器端

#yum安装postgresql,默认会建一个名为”postgres”的系统账号,用于执行PostgreSQL;
#同时数据库中也会生成一个名为”postgres”的数据库用户,且密码已自动生成,需要进入数据库后修改;
#PostgreSQL在数据库用户同名的系统账号下登录免密。
[root@psql_master ~]# yum install -y postgresql96-server

4. 初始化

[root@psql_master bin]# /usr/pgsql-9.6/bin/postgresql96-setup initdb

5. 设置开机启动

[root@psql_master ~]# systemctl enable postgresql-9.6

6. 启动

[root@psql_master ~]# systemctl start postgresql-9.6

三.配置使用

1. 修改用户密码

#yum安装postgresql,默认会建一个名为”postgres”的系统账号,用于执行PostgreSQL;
[root@psql_master ~]# su - postgres #切换用户后,提示符变更为“-bash-4.2$”;
#同时数据库中也会生成一个名为”postgres”的数据库用户,且密码已自动生成;
#PostgreSQL在数据库用户同名的系统账号下登录免密;
-bash-4.2$ psql -U postgres #进入数据库后修改密码;
postgres=# alter user postgres with password 'postgres'

2. 允许远程访问

修改postgreSQL的配置文件/var/lib/pgsql/9.6/data/postgresql.conf
#配置文件中,默认只能本机访问postgresql;
#修改listen_addresses = 'localhost'为listen_addresses = '*',允许所有远程访问;
#修改配置文件需要重启服务。
[root@psql_master ~]# sed -i "s|#listen_addresses = 'localhost'|listen_addresses = '*'|g" /var/lib/pgsql/9.6/data/postgresql.conf

3. 主机认证

#在第82行之后,”IPv4 local connections”下新增允许的客户端;
#“host” 代表主机类型,第一个“all”代表db ,第二个“all”代表user ,“172.29.3.67/32” 代表client ip,“trust”代表认证方式;
#认证方式除“trust”外,还有“peer”, “ident”, “md5”, “password”等,具体可参考pg-hba文件: https://www.postgresql.org/docs/current/static/auth-pg-hba-conf.html
#修改pg.hba文件需要重启服务。
[root@psql_master ~]# vim /var/lib/pgsql/9.6/data/pg_hba.conf
host all all 172.29.3.67/32 trust

4. 设置环境变量

[root@psql_master ~]# vim /etc/profile
export PATH=$PATH:/usr/pgsql-9.6/bin [root@psql_master ~]# source /etc/profile

5. 重启服务

[root@psql_master ~]# systemctl restart postgresql-9.6

6. iptables

#postgresql默认开启tcp5432端口
[root@psql_master ~]# vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT [root@psql_master ~]# service iptables restart

四.使用验证

1. 查看端口

[root@psql_master ~]# netstat -tunlp

2. 简单使用

1)创建用户

postgres=# create user postuser1 with password 'user1@123';

2)创建数据库

#同时指定数据库的所有者
postgres=# create database postdb1 owner postuser1;

3)数据库赋权

#未赋权则账户只能登录控制台
postgres=# grant all privileges on database postdb1 to postuser1;

4)登录新建数据库

#在操作系统层使用新建的账号登录新建的数据库,登录后提示符为“postdb1=>”;
#如果在postgres账户下直接使用“postgres=# \c postdb1;”登录,则登录用户依然是postgres,
-bash-4.2$ psql -U postuser1 -d postdb1 -h 127.0.0.1 -p 5432

5)创建表

postdb1=> create table tb1(
id int primary key,
name VARCHAR(20),
salary real
);

6)插入数据

postdb1=> insert into tb1(
id, name, salary)
values(
101, 'Mike', 5000.00
);

7)查询

postdb1=>select * from tb1;

3. pgadmin连接postgresql

pgadmin下载地址:https://www.pgadmin.org/download/

截至2017-05-19的版本是:pgAdmin 4 v1.5

1)添加服务器

打开pgadmin—>添加新的服务器—>(通常标签)名称自定义—>(connection标签)主机名称与postgresql用户密码按需填写,其余可采用默认配置—>保存。

2)图形化查看

PostgreSQL 设置允许访问IP

PostgreSQL安装后默认只能localhost:5432访问
检验方法:

curl localhost:
# 访问成功提示
curl: () Empty reply from server

curl 127.0.0.1:
# 访问不成功提示
curl: () Failed to connect to 172.17.201.227 port : Connection refused

修改pg_hba.conf

pg_hba.confpostgresql.conf的存放目录都在(9.5版本)/etc/postgresql/9.5/main

host  all    all    192.168.1.0/    trust

表示允许网段192.168.1.0上的所有主机使用所有合法的数据库用户名访问数据库,
其中,数字24是子网掩码,表示允许192.168.1.0–192.168.1.255的计算机访问

修改postgresql.conf

修改listen_addresses=’localhost’, 并放开注释(默认监听localhost)

# 192.168.1.111 为postgresql本机内网地址
listen_addresses='192.168.1.111'

重启postgresql

sudo /etc/init.d/postgresql restart

在本机

curl 192.168.1.111:
# 访问成功提示
curl: () Empty reply from server

在内网其他机器

curl 192.168.1.111:
# 访问成功提示
curl: () Empty reply from server


CentOS7安装配置PostgreSQL9.6的更多相关文章

  1. Centos7安装配置gitlab

    Centos7安装配置gitlab 这篇文字我会介绍在Centos7上安装gitlab,配置gitlab的smtp,并且创建项目demo. sudo yum install openssh-serve ...

  2. Centos7安装配置Apache+PHP+Mysql+phpmyadmin

    转载自: Centos7安装配置Apache+PHP+Mysql+phpmyadmin 一.安装Apache yum install httpd 安装成功后,Apache操作命令: systemctl ...

  3. Centos7安装配置JDK8

    Centos7安装配置JDK8 一.准备工作 第一步,去甲骨文官网下载Jdk相应的版本,我这里下载的是jdk1.8. 第二步将你从官网上下载下来的jdk使用FTP工具上传到云服务器上的相应目录,我的是 ...

  4. centos7命令行和图形界面的相互切换(附centos7安装配置教程)

    一.最近安装了centos7,发现在命令行和图形界面的相互切换命令上,与centos以往版本有很大不同,先整理如下,加深记忆. 1,centos7默认安装后,跟其他版本一样,启动默认进入图形界面: 2 ...

  5. (转)Centos7安装配置NFS服务和挂载

    Centos7安装配置NFS服务和挂载 原文:https://www.u22e.com/601.html NFS简介 NFS(Network File System)即网络文件系统,是FreeBSD支 ...

  6. CentOS7 安装配置笔记

    CentOS7 安装配置笔记 1.通过镜像安装 CentOS7 ==============================* 使用 UltraISO 9.7 或者 rufus-3.5p 制作ISO的 ...

  7. Centos7安装配置jenkins(Tomcat)

    Centos7安装配置jenkins(Tomcat) 一.准备工作 1.1 安装JDK1.8 具体安装过程不在赘述. 1.2 下载jenkins的war包 jenkins官网下载地址:https:// ...

  8. CentOS7 安装配置rsync

    centos7自带rsync,今天简单记录下. rsync安装配置步骤 服务器端: 1.修改默认配置文件/etc/rsyncd.conf,该成如下: # /etc/rsyncd: configurat ...

  9. centos7安装配置zabbix4.0

    zabbix01    198.8.8.211    zabbix-server4.0 zabbix02    198.8.8.212    zabbix-agent4.0 一:zabbix服务端环境 ...

随机推荐

  1. 浅谈STM32L071硬件I2C挂死

    STM32的IIC问题一直存在,在网上也被很多人吐槽,然而FAE告诉我,硬件IIC的问题在F1,F3,F4系列单片机存在,而在L0上已经解决了,然而这几天调试加密芯片和显示芯片,都是IIC芯片,却再一 ...

  2. Linux命令对应英文全称

    https://blog.csdn.net/yrc_note/article/details/72598780 拓展:https://blog.csdn.net/u010613363/article/ ...

  3. JavaScript 缓存基本原理

    // 这是个闭包函数,接收一个函数,可以把接收的函数转换成具有缓存能力的函数 var memoize = function(f) { // 使用一个 cache 对象来进行缓存 var cache = ...

  4. LeetCode - Daily Temperatures

    Given a list of daily temperatures, produce a list that, for each day in the input, tells you how ma ...

  5. LG4781 【模板】拉格朗日插值

    题意 题目描述 由小学知识可知,$n$个点$(x_i,y_i)$可以唯一地确定一个多项式 现在,给定$n$个点,请你确定这个多项式,并将$k$代入求值 求出的值对$998244353$取模 输入输出格 ...

  6. 关于Spring IOC的学习和理解

    面向对象——三层架构(表现层.业务层.持久层) 三层架构:即表现层.业务层.持久层. ① 持久层:采用DAO模式,建立实体类和数据库表映射(ORM映射).也就是哪个类对应哪个表,哪个属性对应哪个列.持 ...

  7. centos7 用yum安装java8

    1.查看yum源中是否有相关套件yum -y list java* 2.上图中可以看到有两个自己想用的套件,经过试验发现用yum install java-1.8.0-openjdk 时最后 /usr ...

  8. Packet for query is too large (1660 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.

    原因是mysql 默认允许的 数据报包 是 1M  设置大一些就可以了 centos 下面  /ect/my.cnf 文件里面 加入或者修改 下面的参数 [mysqld] max_allowed_pa ...

  9. SqlServer :利用快捷键快速查看 字段说明查询及表结构 (小技巧)

    1.自定义4个常用的存储过程: sp_select :select * from sp_helpremark :查表的列,列的类型,备注(这里只查询有备注的列) sp_columns1 : 查表所有的 ...

  10. PHP遍历一个文件夹下所有文件和子文件夹的函数

    <?php function my_dir($dir) { $files = array(); if(@$handle = opendir($dir)) { //注意这里要加一个@,不然会有wa ...