第一章 第一节 postgresql安装与配置

本次安装环境为Ubuntu18.04 Server,postgresql采用10版本。

postgresql数据库安装可主要分为两种,一种是apt快速安装,一种是二进制安装。本次安装我们将一一记录这两种安装步骤。

1、在Ubuntu18.04中默认库是postgresql-10版本,如果我们要安装历史版本可以增加源库
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ YOUR_UBUNTU_VERSION_HERE-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
这里有一个参数需要根据实际情况进行填写:YOUR_UBUNTU_VERSION_HERE-pgdg

ubuntu18.04 对应的是bionic-pgdg
ubuntu16.04 对应的是xenial-pgdg
ubuntu14.04 对应的是trusty-pgdg

不要填错,一旦填写错误,可以打开/etc/apt/sources.list.d/pgdg.list进行修改里面的参数进行解决。

2、源库更新完成,开始正式安装,apt快速安装。
sudo apt-get install postgresql-10 -y

查看安装状态

$ dpkg -l |grep postgresql
ii  postgresql-10                         10.4-0ubuntu0.18.04               amd64        object-relational SQL database, version 10 server
ii  postgresql-client-10                  10.4-0ubuntu0.18.04               amd64        front-end programs for PostgreSQL 10
ii  postgresql-client-common              190                               all          manager for multiple PostgreSQL client versions
ii  postgresql-common                     190                               all          PostgreSQL database-cluster manager
3、安装完成,我们可以使用服务操作命名进行操作:
sudo service postgresql start/stop/restart

使用ps -aux|grep postgres进行查看当前运行的服务

我们使用以下命令进入数据库进行再次确认安装正常

sudo -u postgres psql
postgres=# select version();
 PostgreSQL 10.4 (Ubuntu 10.4-0ubuntu0.18.04) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 7.3.0-16ubuntu3) 7.3.0, 64-bit
好了第一种安装方式完成,开始进行使用postgresql吧。

初始安装完成后常用的目录如下:

data_directory = '/var/lib/postgresql/10/main'            # 数据存放位置
hba_file = '/etc/postgresql/10/main/pg_hba.conf'          # 身份配置文件,可进行过滤IP、登录方式、登录用户
external_pid_file = '/var/run/postgresql/10-main.pid'     #运行时pid存放位置
config_file=/etc/postgresql/10/main/postgresql.conf       #核心配置文件存放位置

可以根据实际需求进行调整

我是朴实简单的分割线~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

第二种安装方式,编译安装

以下为不同版本的二进制包,这里我们下载postgresql10系列中最高版本,这里我们下载的是tar.gz格式,可根据自己情况进行下载即可。
https://www.postgresql.org/ftp/source/

第一步,下载与解压
wget https://ftp.postgresql.org/pub/source/v10.6/postgresql-10.6.tar.gz
tar -zxf postgresql-10.6.tar.gz

《第一章 第一节 postgresql安装与配置》 image.png

第二步,编译源程序,

注(可使用find ./ -maxdepth 1 -type d进行查看当前符合标准的文件)
./configure –help 可以查看其相关支持的参数,根据其情况进行设置,初期我们只需要使用–prefix参数即可。

cd postgresql-10.6/
./configure --prefix=/pgdata

注意事项:
在使用编译命令过程中可能会出现部分组件缺失的情况,这里如果是Ubuntu系统可执行 sudo apt-get install -y libtool libapr1 make gcc libexpat1-dev readline-devel zlib-devel

《第一章 第一节 postgresql安装与配置》 image.png

第三步,开始进行安装
make
make install

正常情况下make执行完毕后显示为下图所示,这时我们可以执行第二句make install 进行安装即可。

《第一章 第一节 postgresql安装与配置》 image.png

安装完毕后,显示如图所示

《第一章 第一节 postgresql安装与配置》 image.png

这时我们其实已经安装完成postgresql数据库了,如果我们不需要其他组件,则可直接进入第五步开始初始化数据库。

第四步,开始安装常用组件库。postgresql延伸出来的组件非常丰富,这里我建议安装其源码包中的组件,以便后续教程中使用。
cd contrib/
ls

这里我们可以看到有很多的组件,比较常用的有postgres_fdw、dblink等均包含在内。

《第一章 第一节 postgresql安装与配置》 image.png

make
make install

《第一章 第一节 postgresql安装与配置》 image.png

《第一章 第一节 postgresql安装与配置》 image.png

这时组件库已经安装完成。

第五步,创建数据存储目录,并授权postgres用户所属权限。
groupadd postgres
useradd -g postgres postgres
passwd postgres
mkdir /pgdata/data
chown postgres:postgres /pgdata -R
chown postgres:postgres /pgdata/data -R

这里pgdata目录是最初编译安装时我创建的安装目录,可根据自己情况进行自定义安装位置,/pgdata/data是数据存储目录,可与安装目录分属于不同位置,下面在第二节配置参数中有讲到。

第六步,切换用户,并设置基础环境变量。
su - postgres
vim ~/.bash_profile

在其文件最底下追加以下配置:

export PGHOME=/pgdata
export PGDATA=/pgdata/data
export PATH=$PGHOME/bin:$PATH
export MANPATH=$PGHOME/share/man:$MANPATH
export LANG=en_US.utf8
export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH

执行以下命令,使其立即生效。为其下一步初始化数据库做准备,这里也可重启使其生效。

source ~/.bash_profile
第七步,初始化数据库
initdb -D /pgdata/data/

《第一章 第一节 postgresql安装与配置》 image.png

第八步,创建日志存储目录,启动数据库
mkdir /pgdata/logs
pg_ctl -D /pgdata/data/ -l /pgdata/logs/start_logs.log start
psql

至此,编译安装完成,第二节我们将讲解其基础相关配置。请持续关注。

分享一下阿里云活动,有需要的可进入购买,最高¥1888云产品通用代金券
https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=ly7hjnah

双12来了,云产品低至2折!
https://m.aliyun.com/act/team1212/?params=N.pXSn7Hz1ET

    原文作者:cn華少
    原文地址: https://www.jianshu.com/p/58315862a1a9
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞