PostgreSQL安装与使用

目录

  • 依赖包的安装
  • 源码编译和安装
  • 初始化数据库集簇
  • 简单配置

依赖包安装

PostgreSQL源码安装依赖以下四个软件包

readline
zlib
flex
bison

在Ubuntu中可是应用以下命令直接进行安装:

sudo apt-get install libreadline6 libreadline6-dev zlib1g-dev flex bison

如果实在redhat系发行版的Linux中可以使用以下命令:

yum install flex bison zlib-devel readline-devel

源码编译和安装

例如:下载的源码包为:

-rwxrw-rw-  1 bingo bingo 19260568 Dec  2 00:27 postgresql-9.6.1.tar.bz2*
tar -jxvf postgresql-9.6.1.tar.bz2  //解压源码包

进入到源码文件夹根目录下执行以下命令:(各项参数可以根据 sudo ./configure --help 获取帮助)

sudo ./configure --prefix=/opt/pgsql --enable-debug CFLAGS=-O0

常用的几个参数如下

sudo make   //或者 make world 编译一切可以编译的东西,包括文档(HTML和手册)以及额外的模块(contrib)
sudo make install
mkdir /usr/local/pgsql/data
useradd -s /bin/bash -m  -p 123456 postgres
chown -R postgres:postgres /usr/local/pgsql/data

初始化数据库集簇

su postgres
cd /usr/local/pgsql/bin
./initdb -D ../data
./pg_ctl -D ../data start

登录数据库

./psql -h IP -p 5432 -U postgres test

清理

make uninstall // 卸载已安装的文件,不会删除掉任何创建出来的目录
make clean  //清理编译过程中生成的文件,并释放磁盘空间
make distclean  // 将源码树恢复成发布的状态

自启动配置

PG自启动脚本postgresql复制到/etc/init.d并在各个启动级别文件夹中创建软连接。如:
ln -s /etc/init.d/postgresql /etc/rc0.d/K02postgresql

#! /bin/sh  # Installation prefix
prefix=/usr/local/pgsql  # Data directory
PGDATA="/usr/local/pgsql/data"  # Who to run the postmaster as, usually "postgres".  (NOT "root")
PGUSER=postgres  # Where to keep a log file
PGLOG="$PGDATA/serverlog"  # It's often a good idea to protect the postmaster from being killed by the
# OOM killer (which will tend to preferentially kill the postmaster because
# of the way it accounts for shared memory).  Setting the OOM_ADJ value to
# -17 will disable OOM kill altogether.  If you enable this, you probably want
# to compile PostgreSQL with "-DLINUX_OOM_ADJ=0", so that individual backends
# can still be killed by the OOM killer.
#OOM_ADJ=-17  ## STOP EDITING HERE  # The path that is to be used for the script
PATH=/usr/local/pgsql/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin  # What to use to start up the postmaster.  (If you want the script to wait
# until the server has started, you could use "pg_ctl start -w" here.
# But without -w, pg_ctl adds no value.)
DAEMON="$prefix/bin/postmaster"  # What to use to shut down the postmaster
PGCTL="$prefix/bin/pg_ctl"  set -e  # Only start if we can find the postmaster.
test -x $DAEMON ||
{  echo "$DAEMON not found"  if [ "$1" = "stop" ]  then exit 0  else exit 5  fi
}  # Parse command line parameters.
case $1 in  start)  echo -n "Starting PostgreSQL: "  test x"$OOM_ADJ" != x && echo "$OOM_ADJ" > /proc/self/oom_adj  su - $PGUSER -c "$DAEMON -D '$PGDATA' &" >>$PGLOG 2>&1  echo "ok"  ;;  stop)  echo -n "Stopping PostgreSQL: "  su - $PGUSER -c "$PGCTL stop -D '$PGDATA' -s -m fast"  echo "ok"  ;;  restart)  echo -n "Restarting PostgreSQL: "  su - $PGUSER -c "$PGCTL stop -D '$PGDATA' -s -m fast -w"  test x"$OOM_ADJ" != x && echo "$OOM_ADJ" > /proc/self/oom_adj  su - $PGUSER -c "$DAEMON -D '$PGDATA' &" >>$PGLOG 2>&1  echo "ok"  ;;  reload)  echo -n "Reload PostgreSQL: "  su - $PGUSER -c "$PGCTL reload -D '$PGDATA' -s"  echo "ok"  ;;  status)  su - $PGUSER -c "$PGCTL status -D '$PGDATA'"  ;;  *)  # Print help  echo "Usage: $0 {start|stop|restart|reload|status}" 1>&2  exit 1  ;;
esac  exit 0 

转载于:https://www.cnblogs.com/bingo711x/p/6145213.html

PostgreSQL安装和简单配置相关推荐

  1. python环境的搭建以及pycharm的安装和简单配置

    python环境的搭建以及pycharm的安装和简单配置 Python的环境搭建 PIP工具的使用 pip介绍 pip的使用 查看pip版本 普通安装 pip升级 指定版本安装 卸载已安装的库 列出已 ...

  2. 「macOS」我的终端我做主——iTerm2+Homebrew+oh-my-zsh+Powerline安装及简单配置

    「macOS」我的终端我做主--iTerm2+Homebrew+oh-my-zsh+Powerline安装及简单配置 一.iTerm2安装和简单配置 01.下载iTerm2 02.安装iTerm2 0 ...

  3. Nginx下载安装及简单配置

    Nginx下载安装及简单配置 下载 配置Nginx 下载 Nginx官网下载路径 解压后目录如下: 配置Nginx 打开 conf/nginx.conf 配置文件 添加一个server,进行简单的测试 ...

  4. CentOS7 下MariaDB安装与简单配置(最新)

    前言 MySQL和MariaDB的区别: LAMP架构盛极一时,这离不开MySQL的免费与易用,但是在Oracle收购了Sun之后,很多公司开始担忧MySQL的开源前景,而最近Oracle进一步闭源的 ...

  5. Webpack4 学习笔记 - 01:webpack的安装和简单配置

    安装 webpack 新建一个Demo文件夹,执行初始化: npm init 在Demo文件夹里安装 webpack 和 webpack-cli : npm install webpack webpa ...

  6. LNMP架构环境搭建之PHP、Nginx源码编译安装及其简单配置应用

    LNMP架构中的Mysql见上一篇博文"LNMP架构环境搭建之mysql源码编译安装" 一.PHP简介 PHP(外文名:PHP: Hypertext Preprocessor,中文 ...

  7. Centos7下Mysql 安装及简单配置

    本文主要介绍,centos7下,用二进制包安装mysql,并进行简单配置.分为如下几步: 权限配置 具体安装 简单配置,主要修改密码和解决远程连接问题 常用命令,开启关闭服务 参考文章 1. 权限配置 ...

  8. 【win7/win10】虚拟机安装与简单配置教程

    win7虚拟机安装(win10类似) 下载与安装 1.下载系统镜像文件 推荐下载地址:https://msdn.itellyou.cn/ 选择操作系统,选择windows7 2.选择SP1 x64版本 ...

  9. Ubuntu desktop amd64 安装及简单配置

    一.安装篇: 1.iso 文件下载. 2.Grub4dos可启动U盘. 3.menu.lst中添加如下内容: title 安装ubuntu8.10简体中文64位 find --set-root /Ub ...

最新文章

  1. 解读MySQL事务的隔离级别和日志登记模式选择技巧
  2. F1.4大光圈专业相机-海鸥CF100
  3. Ubuntu 系统安装APACHE PHP MYSQL
  4. CISCO安全 ×××技术
  5. Spark standalone 模式下的集群部署
  6. python查询手机号码归属地
  7. 定制10kV变压器感应雷直击雷击变压器加避雷器atp-emtp模型
  8. siteweaver android动易客户端,动易SiteFactory实现SiteWeaver置顶功能
  9. 弥补性能鸿沟,傲腾在企业应用中加速普及
  10. python爬虫验证码的处理(云打码)_python爬虫验证码的处理(云打码)
  11. python中idle什么意思_python中idle是什么意思
  12. 秀!搭建一个永久运行的个人服务器!
  13. xml和html的区别和联系
  14. Android 实现仿微信朋友圈九宫格图片+NineGridView+ImageWatcher(图片查看:1.预览,2.拖动,3.放大,4.左右滑动,5.长按保存到手机)的功能
  15. Wireshark 4.0.0 新版本发布
  16. html怎么添加背景图片
  17. [网摘]深入浅出解读微软云计算:让云触手可及
  18. 新浪微博SDKdemo
  19. 题目整理---Excel表的操作
  20. 田子坊行程5月11周六

热门文章

  1. 安装mysql准备执行页面_mysql 安装
  2. 表格布局页面_对于表格布局管理器的回顾以及接下来的目标
  3. 『设计模式』80年代的人们就已经领悟了设计模式-- 发布者/订阅者模式 (包括发布者/订阅者模式和观察者模式的区别)
  4. 混合精度训练-Pytorch
  5. 开放性32位RISC处理器IP核的比较与分析(Z)
  6. 有关糖尿病模型建立的论文_预测糖尿病结果的模型比较
  7. 梯度下降法_梯度下降
  8. sql 12天内的数据_想要在12周内成为数据科学家吗?
  9. 直线回归数据 离群值_处理离群值:OLS与稳健回归
  10. 查看-增强会话_会话式人工智能-关键技术和挑战-第2部分