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.pswp.cn/news/252458.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/252458.shtml
英文地址,請注明出處:http://en.pswp.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…