PostgreSQL安装和简单配置

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/252458.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

1.App瘦身经验总结

为什么apk越来越大? 1.项目不断发展,功能越多,代码量增加的同时,资源文件也在不断的增多2.app支持的主流dpi越来越多,如ldpi、mdpi、hdpi、xh xxh xxxh等等,间接导致资源增多3.引入的第三方sdk或开源库越来…

研究相机和IMU坐标系变换

刚开始录制的数据时没有考虑相机和IMU之间的坐标变换,但是后来发现跟踪效果不好,去查验imu数据时,发现,我采集保存的imu数据格式没有和euroc数据集中的imu数据保存格式统一,所以需要研究的是在euroc用于数据采集的设备…

第五天:Swift拖动 item 重排 CollectionView

参考链接:https://www.jianshu.com/p/96f956f1479e 1 import UIKit2 3 enum VC: String {4 case ViewController5 case CollectionViewController6 7 func segueIdentifier() -> String {8 switch self {9 case .ViewController:10 …

MIT Kimera阅读笔记

这两天在调研SLAM的最新算法,找到了2019CVPR上的一篇文章,出自于MIT,因为要给其他同事讲解,所以就把文章的重点内容在我个人理解的情况下翻译了出来,有理解不到位的还请各位大佬多多批评指正。 最后附上了Delaunay Tri…

C#中的ForEach

public void ForEach(Action<T> action) 针对List<T>集合中的每个元素执行操作Action<T> action,Action<T>是只接受一个类型为T的传入参数返回值为void的委托,对于泛型List<T>来说,Action<T>中的类型与List<T>中的类型是相同的.acti…

哈希映射

哈希来源问题&#xff1a;关于统计一个字符串集合中&#xff0c;求出现次数最多的字符串思路&#xff1a;建立一个哈希映射&#xff08;HashMap&#xff09;&#xff0c;其键为"字符串"&#xff0c;值为"字符串出现次数"&#xff0c;然后遍历字符串集合&am…

1月28日云栖精选夜读 | 终于等到你!阿里正式向 Apache Flink 贡献 Blink 源码

如同我们去年12月在 Flink Forward China 峰会所约&#xff0c;阿里巴巴内部 Flink 版本 Blink 将于 2019 年 1 月底正式开源。今天&#xff0c;我们终于等到了这一刻。 热点热议 终于等到你&#xff01;阿里正式向 Apache Flink 贡献 Blink 源码 作者&#xff1a;技术小能手 发…

ZOJ-3537

题目大意&#xff1a;给你一个n (n<300) 边形&#xff0c;给出它所有的顶点坐标&#xff0c;让你把它划分成n-2个三角形的花费最小值&#xff0c;顶点 a 和 b 相连的花费为 abs(a.xb.x)*abs(a.yb.y)。 如果是凹多边形输出无解。 思路&#xff1a;先跑个凸包判断是不是凸多边…

你会等待还是离开(大理)---写的一个推文

你会等待还是离开 -----出发和遇见大理 上关花闹 下关风薰 苍山雪寂 洱海月迟 但闻肆季弦雀起 才吹小雨又需晴 现实很调皮&#xff0c;很容易就让人没有力气&#xff0c;就像变与不变&#xff0c;并不复杂&#xff0c;也不遥远&#xff0c;一个寒假的距离&#xff0c;一句话的力…

sudo rosdep init ERROR: cannot download default sources list from: https://raw.githubusercontent.com

安装上ros无法进行rosdep init.解决方法如下&#xff1a;https://zhuanlan.zhihu.com/p/77483614 因此&#xff0c;在/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py中顶部直接插入两行代码取消SSL验证 import ssl ssl._create_default_https_context ssl._crea…

YodaOS: 一个属于 Node.js 社区的操作系统

开发四年只会写业务代码&#xff0c;分布式高并发都不会还做程序员&#xff1f; >>> 大家好&#xff0c;很开心在这里宣布 YodaOS开源了。他将承载 Rokid 4年以来对于人工智能和语音交互领域的沉淀&#xff0c;并选择 Node.js 作为操作系统的一等开发公民&#xff0…

Android顶部粘至视图具体解释

不知从某某时间開始&#xff0c;这样的效果開始在UI设计中流行起来了。让我们先来看看效果&#xff1a;大家在支付宝、美团等非常多App中都有使用。要实现这个效果&#xff0c;我们能够来分析下思路&#xff1a;我们肯定要用2个一样的布局来显示我们的粘至布局。一个是正常的、…

在实际项目开发中keil的调试方法

转载2015-06-14 20:23:04 一.在keilc的调试状态下&#xff0c;如何观察各个片内外设的运行状态&#xff1f;如何修改它们的设置&#xff1f;​ 在调试状态下&#xff0c;点击Peripherals菜单下的不同外设选项命令&#xff0c;就会显示或隐藏对应外设的观察窗口。 在程序运行时&…

slam 常用数据集的帧率

1. kitti数据集的帧率约约为10fps,图像分辨率为1241x376 2. Euroc数据集的帧率约为20fps,图像分辨率为752x480 3.TUM数据集的帧率约为30fps, 图像分辨率为640x360 zed相机获取的HD图像的分辨率为1280x720p,获取的VGA图像分辨率为672x376,mynt相机获取的VGA图像的分辨率为640x…

小李飞刀:用python刷题ing....

叨逼叨 默认每天都要刷两道题。今天目标已完成。 第一题 26. 删除排序数组中的重复项难度&#xff1a;简单类型&#xff1a;数组 给定一个排序数组&#xff0c;你需要在原地删除重复出现的元素&#xff0c;使得每个元素只出现一次&#xff0c;返回移除后数组的新长度。不要使用…

【Log4J】

学习mybatis中用到了Log4J 在此记录下 引入 引入Maven配置 <!-- https://mvnrepository.com/artifact/log4j/log4j --><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></de…

VI-ORB环境配置

参考博客:https://blog.csdn.net/qq_38589460/article/details/82559816 https://blog.csdn.net/Robot_Starscream/article/details/90245456 本机安装的是opencv3.0 在Examples/ROS/ORB-VIO以及/VI-ORB/src/LearnVIORB-RT下的CMakeLists.txt都要进行修改 将find_package(O…

.NET Core 3.0中的数据库驱动框架System.Data

虽然没有得到很多关注&#xff0c;但System.Data对于.NET中任何关系型数据库的访问都至关重要。因为其前身是ActiveX Data Objects&#xff0c;所以它也被称为ADO.NET。System.Data提供了一个通用框架&#xff0c;是构建.NET数据库驱动程序的基础。该框架提供了数据库驱动可以遵…

linux vg lv pv

pv由物理卷或者分区组成 pv可以组成一个或者多个vg vg可以分成多个lv 方便扩展 pvs vgs lvs 可以查看当前存在的pv vg lv 我的centos硬盘20g 使用了一段时间 加了100g 这时候 我们可以使用扩展来扩展我们的分区大小 查看自己拥有多少个硬盘 ls /dev/sd* | grep -v [0-9] …

mynt product model: D1000-IR-120标定相机和IMU外参

1. 首先是安装相应的mynt SDK. http://www.myntai.com/mynteye/depth小觅官网,在sdk下拉菜单中点击MYNT EYE Depth SDK,然后选择Linux Installation安装安装步骤说明一步步的安装,安装sample后,测试一下安装是否成功.我的电脑上安装了ROS,所以可以点击上面第一幅图中的ROS Ins…