1.下载源码安装包

[root@test2019030517 ~]# wget https://ftp.postgresql.org/pub/source/v10.5/postgresql-10.5.tar.gz

2.创建pg的用户主、组

[root@test2019030517 postgresql-10.5]# useradd postgres
[root@test2019030517 postgresql-10.5]# groupadd postgres
[root@test2019030517 postgresql-10.5]# passwd postgres

3.解压、进入目录

[root@test2019030517 postgresql-10.5]# tar zxvf postgresql-10.5.tar.gz
[root@test2019030517 postgresql-10.5]# cd postgresql-10.5

4.创建postgreSQL的安装目录

[root@test2019030517 postgresql-10.5]# mkdir /usr/local/postgresql

5.下载依赖包

[root@test2019030517 postgresql-10.5]# yum -y install -y readline-devel

6.预编译#-prefix是指定postgreSQL安装路径

[root@test2019030517 postgresql-10.5]# ./configure --prefix=/usr/local/postgresql

7.编译安装

[root@test2019030517 postgresql-10.5]# make
[root@test2019030517 postgresql-10.5]# make install

显示这个说明成功

8.安装contrib目录下的一些工具,是第三方组织的一些工具代码,建议安装

[root@test2019030517 postgresql-10.5]# cd contrib
[root@test2019030517 contrib]# make && make install

9.创建相关目录

♦数据目录

[root@test2019030517 contrib]# mkdir -p /usr/local/postgresql/data

♦日志目录

[root@test2019030517 contrib]# mkdir -p /usr/local/postgresql/logs

9. 赋予postgres用户相关文件夹权限

[root@test2019030517 postgresql-10.5]# chown -R postgres:postgres /usr/local/postgresql

10.配置环境变量

[root@test2019030517 postgresql-10.5]# cat /etc/profile.d/pgsql.sh
export PATH=$PATH:/usr/local/postgresql/bin/

[root@test2019030517 postgresql-10.5]# source /etc/profile.d/pgsql.sh

11.启动数据库

[root@test2019030517 postgresql-10.5]# su postgres
初始化数据库
[postgres@test2019030517 postgresql-10.5]$ initdb -D /usr/local/postgresql/data/
启动服务
pg_ctl -D /usr/local/postgresql/data -l /usr/local/postgresql/logs/logfile start
连接数据库
[postgres@test2019030517 postgresql-10.5]$ psql
创建数据库
postgres=# create database test;
创建表
postgres=# create table t_user (id integer, name text);
插入测试数据
postgres=# insert into t_user values (1,'joke');
查询数据
postgres=# select * from t_user;
退出psql窗口
postgres-# \q

12.修改监听所有网络以及数据库连接数

[postgres@test2019030517 postgresql-10.5]$ vim /usr/local/postgresql/data/postgresql.conf
 60 listen_addresses = '*'          # what IP address(es) to listen on;
 65 max_connections = 100                   # (change requires restart)

13.修改远程访问

[postgres@test2019030517 postgresql-10.5]$ vim /usr/local/postgresql/data/pg_hba.conf
#在文件的最下方加上下面的这句话
host    all         all         0.0.0.0/0             trust

如下

[postgres@test2019030517 postgresql-10.5]$ tail -n 6 /usr/local/postgresql/data/pg_hba.conf
# replication privilege.
local   replication     all                                     trust
host    replication     all             127.0.0.1/32            trust
host    replication     all             ::1/128                 trust
host    all             all             0.0.0.0/0               trust

14.防火墙开启端口

# 切换root用户
su - root
# 防火墙 允许5432 端口iptables -I INPUT -p tcp --dport 5432 -j ACCEPT

15.重启postgreSQL服务

[root@test2019030517 postgresql-10.5]# su - postgres
[postgres@test2019030517 ~]$ pg_ctl -D /usr/local//postgresql/data/ -l /usr/local/postgresql/logs/logfile restart

停止服务命令

[postgres@test2019030517 ~]$ pg_ctl -D /usr/local//postgresql/data/ -l /usr/local/postgresql/logs/logfile stop

16.设置开机自启动

切换到root用户
[postgres@test2019030517 ~]$ su root
找到解压后源码包里面的一个linux文件
[root@test2019030517 postgres]# chmod a+x /data/postgresql-10.5/contrib/start-scripts/linux
复制linux文件到/etc/init.d目录下,更名为postgresql
[root@test2019030517 postgres]# cp /data/postgresql-10.5/contrib/start-scripts/linux /etc/init.d/postgresql

17.修改/etc/init.d/postgresql文件的两个变量

31 # Installation prefix32 prefix=/usr/local/postgresql
33
34 # Data directory
35 PGDATA="/usr/local/postgresql/data"
37 # Who to run the postmaster as, usually "postgres".  (NOT "root")
38 PGUSER=postgres

18.执行service postgresql start,可以启动PostgreSQL服务

启动
[root@database2019030517 postgresql]# service postgresql start
停止
[root@database2019030517 postgresql]# service postgresql stop
查看状态
[root@database2019030517 postgresql]# service postgresql status

19.设置postgresql服务开机自启动

[root@test2019030517 postgres]# chkconfig --add postgresql
[root@test2019030517 postgres]# chkconfig --level 2345 postgresql on
[root@test2019030517 postgres]# chkconfig --list

最新文章

  1. node-webkit 环境搭建与基础demo
  2. Lind.DDD.Manage项目核心技术分享
  3. Unity5中的MetaPass
  4. iOS设备的尺寸
  5. androidStudio 改包名
  6. nodeschool.io 10
  7. jquery validate使用
  8. mysqldump原理5
  9. 安装mongodb后启动报错libstdc++
  10. iOS开源加密相册Agony的实现(二)
  11. asp.net core系列 54 IS4用客户端凭据保护API
  12. 18 章 CSS 链接、光标、 DHTML 、缩放
  13. Java中CountDownLatch和CyclicBarrier的使用和比较
  14. C# 委托简单例子
  15. selenium java 文件上传、下载
  16. 【Java】线程转储分析 ThreadDump
  17. 图片Bitmap在本地的存储与读取 File
  18. HashMap Hashtable LinkedHashMap TreeMap
  19. Spark学习笔记3:键值对操作
  20. hg 添加用户

热门文章

  1. 浏览器解析JavaScript原理
  2. elementUI vue tree input 懒加载 输入下拉树型示例 点击其他区域关闭自定义div
  3. 洛谷P4591 [TJOI2018]碱基序列(hash dp)
  4. Git .gitignore文件简介及使用
  5. 【软件需求工程与建模 - 小组项目】第6周 - 成果展示3 - 软件设计规格说明书V4.1
  6. [20190101]块内重整.txt
  7. 洗礼灵魂,修炼python(69)--爬虫篇—番外篇之feedparser模块
  8. MongoDB添加仲裁节点报错replica set IDs do not match办法
  9. Linux下1号进程的前世(kernel_init)今生(init进程)----Linux进程的管理与调度(六)
  10. Flask中的CBV