本文是针对CPU为 X86架构,操作系统为Ubuntu22.04环境,Postgresql11.17版本。

本文只在Ubuntu22.04下进行验证,理论上UOS也可使用,但未经验证。

适用于无互联网场景。

1.资源文件

libpq5_14.5-0ubuntu0.22.04.1_amd64.deb

libjson-perl_4.04000-1_all.deb

pgdg-keyring_2018.2_all.deb

postgresql-client-common_244.pgdg2

ssl-cert_1.1.2_all.deb

postgresql-common_244.pgdg22.04+1_

libcommon-sense-perl_3.75-2build1_

libtypes-serialiser-perl_1.01-1_al

libjson-xs-perl_4.030-1build3_amd6

libllvm14_1%3a14.0.0-1ubuntu1_amd6

libsensors-config_1%3a3.6.0-7ubunt

libsensors5_1%3a3.6.0-7ubuntu1_amd

postgresql-client-11_11.17-1.pgdg2

postgresql-11_11.17-1.pgdg22.04+1_

sysstat_12.5.2-2build2_amd64.deb

install.sh

下载地址:CSDN下载链接

2.安装

离线安装

适用于无互联网情况。

安装时,需要root权限。

dpkg -i libpq5_14.5-0ubuntu0.22.04.1_amd64.deb&&
dpkg -i libjson-perl_4.04000-1_all.deb&&
dpkg -i pgdg-keyring_2018.2_all.deb&&
dpkg -i postgresql-client-common_244.pgdg22.04+1_all.deb&&
dpkg -i ssl-cert_1.1.2_all.deb&&
dpkg -i postgresql-common_244.pgdg22.04+1_all.deb&&
dpkg -i libcommon-sense-perl_3.75-2build1_amd64.deb&&
dpkg -i libtypes-serialiser-perl_1.01-1_all.deb&&
dpkg -i libjson-xs-perl_4.030-1build3_amd64.deb&&
dpkg -i libllvm14_1%3a14.0.0-1ubuntu1_amd64.deb&&
dpkg -i libsensors-config_1%3a3.6.0-7ubuntu1_all.deb&&
dpkg -i libsensors5_1%3a3.6.0-7ubuntu1_amd64.deb&&
dpkg -i postgresql-client-11_11.17-1.pgdg22.04+1_amd64.deb&&
dpkg -i postgresql-11_11.17-1.pgdg22.04+1_amd64.deb&&
dpkg -i sysstat_12.5.2-2build2_amd64.deb;

或执行目录内 install.sh 脚本

检查

systemctl status postgresql

若能看到服务处于活动状态,则表示安装完成。

root@docker1:/home/yeqiyu/11.17# systemctl status postgresql
● postgresql.service - PostgreSQL RDBMSLoaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)Active: active (exited) since Wed 2022-10-19 14:00:41 UTC; 17s agoMain PID: 1761 (code=exited, status=0/SUCCESS)CPU: 872usOct 19 14:00:41 docker1 systemd[1]: Starting PostgreSQL RDBMS...
Oct 19 14:00:41 docker1 systemd[1]: Finished PostgreSQL RDBMS.

在线安装

仅限于有互联网的情况。

#创建仓库配置
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-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
#安装
#若需要指定版本,可使用 "postgresql-11"、"postgresql-12"等
sudo apt-get -y install postgresql

3.迁移数据文件

安装完成后,数据文件默认保存在/usr/lib/postgresql中,生产环境我们需要调整数据文件位置。

3.1.停止服务

使用root用户

systemctl stop postgresql

3.2.调整数据目录

使用postgres用户

新建目录(根据具体空间分析)

mkdir /data

chown postgres:postgres /data

#切换用户

su - postgres

#初始化数据库 切换用户后执行。

/usr/lib/postgresql/11/bin/initdb -D /data

执行样例

postgres@docker1:~$ /usr/lib/postgresql/11/bin/initdb -D /data
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".Data page checksums are disabled.fixing permissions on existing directory /data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default timezone ... Etc/UTC
selecting dynamic shared memory implementation ... posix
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... okWARNING: enabling "trust" authentication for local connections
You can change this by editing pg_hba.conf or using the option -A, or
--auth-local and --auth-host, the next time you run initdb.Success. You can now start the database server using:/usr/lib/postgresql/11/bin/pg_ctl -D /data -l logfile start

3.3.修改配置文件

使用postgres用户

修改文件posstgresql.conf

vi /etc/postgresql/11/main/postgresql.conf

1.增加 listen_adresses='*'

2.修改数据文件路径

data_directory="/data"

3.修改最大连接数。将max_connections = 100,将该值改为500,保存后重新启动数据库。

修改配置文件pg_hba.conf

vi /etc/postgresql/11/main/pg_hba.conf

在末尾增加

host all all 0.0.0.0/0 md5

3.4.启动postgres

使用postgres用户

注意:此过程只进行一次,使其在/data下生成相应文件

/usr/lib/postgresql/11/bin/pg_ctl -D /data -l logfile start

/usr/lib/postgresql/11/bin/pg_ctl -D /data -l logfile stop

验证

下图是迁移前后数据文件的情况,可重点关注文件的更新时间,从而验证数据迁移是否完成。

此时,可以删除掉原有目录的数据文件,避免日后被误导。

4.安装插件

使用postgres用户

登录至postgres数据库

psql

修改用户密码

postgres=# ALTER USER postgres WITH PASSWORD 'postgres';

启用特性uuid-ossp

postgres=# create extension "uuid-ossp";
CREATE EXTENSION

验证特性是否启用成功

postgres-# \dx已安装扩展列表名称 | 版本 | 架构模式 | 描述
-----------+------+------------+-------------------------------------------------plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural languageuuid-ossp | 1.1 | public | generate universally unique identifiers (UUIDs)

截图

5.常用操作

在root下运行

查看服务状态

systemctl status postgresql

停止服务

systemctl stop postgresql

启动服务

systemctl start postgresql

重启服务

systemctl restart postgresql

至此,postgres安装完成。


关键词:pg11、安装、迁移。

PostgreSQL11.17离线安装过程(X86+Ubuntu)相关推荐

  1. Python IDE专用编辑器PyCharm下载及配置安装过程(Ubuntu环境)

    这几天在折腾Python环境,显示把笔记本安装Ubuntu Linux环境系统,然后基本的Python环境都安装完毕之后需要安装传说中在其平台中最好的代码编辑和管理工具PyCharm,于是就根据网上的 ...

  2. MinGW-w64 离线安装过程记录

    在线安装 如果在墙外或者有办法出墙的话可以选择在线安装.参考大神的文章:MinGW-w64安装教程 离线安装 如果尝试在线安装失败,可以尝试离线安装,方法如下: 打开官方网站 点击下面的SourceF ...

  3. mysql5.7下载,离线安装过程

    本篇文章主要是记录一下自己的安装过程及安装中遇到的问题. 文章目录 一.可能遇到的问题 二.下载 三.安装 四.配置环境 一.可能遇到的问题 首先说一下安装过程可能遇到的问题,因为安装的电脑是处于无法 ...

  4. ELK7.17离线安装

    ElasticSearch安装 版本:Centos7.ElasticSearch7.17.6 节点列表 es1:27.196.38.200 master.data es2:27.196.38.201 ...

  5. linux离线安装snap应用,Ubuntu使用snap安装常用软件

    1,snap简介 什么是snap,snap是一种全新的软件包管理方式,它类似一个容器拥有一个应用程序所有的文件和库,各个应用程序之间完全独立.所以使用snap包的好处就是它解决了应用程序之间的依赖问题 ...

  6. 使用UltraISO软碟通离线安装Centos8.3.2011过程中遇到的问题

    使用UltraISO软碟通离线安装Centos8.3.2011过程中遇到的问题 2022年08月19日更新 2022年06月20日更新 FedorMediaWriter 前言 以下是在本次软碟通离线安 ...

  7. SharePoint 2016 必备组件离线安装介绍

    前言 SharePoint 必备组件安装,一直以来都是SharePoint安装过程中的最大的坑,尤其是不能联网的服务器.博主在这里简单介绍一下离线安装过程,并附组件包下载以及安装命令,并且在windo ...

  8. Jenkins集成Sonar(3/3)- 安装SonarQube Scanner进行扫描(离线安装)

    安装方式选择: 在线安装:直接在Jenkins>系统管理>插件管理>可选插件,搜索Sonar 离线安装:下载sonar插件,将插件解压放入~/.jenkins/plugins/下即可 ...

  9. python怎么安装pyinstaller_Python离线安装PyInstaller

    PyInstaller--Python的打包工具 一.简单介绍 可以将python程序打包成一个独立的执行文件. pyinstaller 执行完毕后,源文件所在目录将生成dist和build两个文件夹 ...

最新文章

  1. 如何下python 的pⅰl_[Ubuntu] 如何在 Lubuntu 安装 python-spidermonkey
  2. OpenStack安装部署实战——问题集锦
  3. SpringBoot 中常用注解@PathVaribale/@RequestParam/@GetMapping介绍
  4. python 正则表达式 re findall 返回能匹配的字符串
  5. 【Python】Python Mako模板使用
  6. 《C++ Primer》7.5.1节练习
  7. 尝试将WCF映射到Java术语
  8. 瑞星2009:3大拦截2大防御功能主动遏制木马病毒
  9. CNN中的卷积操作与权值共享
  10. Java8之Stream详解
  11. idea2020.1使用Lombok注解,点击运行项目提示找不到get,set方法?
  12. 微信电话本的未来在农村
  13. java精选视频资源,收藏慢慢看!
  14. [CSAPP]Architecture Lab实验笔记
  15. Python制作卡点视频
  16. c语言报错(二)expected initializer before “int“
  17. 如何用python获取文献_[python]eutilities获取文献题录
  18. 横河的DCS系统是服务器结构吗,横河DCS
  19. $vjudge-$基本算法专题题解
  20. oracle数据库的基本教程 pdf,Oracle数据库技术基础教程 PDF 下载

热门文章

  1. Fiddler 4抓取http请求并修改请求进行调试
  2. 苹果截屏快捷键_超薄键盘nice、配苹果很合适,罗技MX Keys使用体验
  3. [转]链接器都干了些什么?
  4. jdk api 1.8
  5. 教你如何自学UI设计
  6. 多态与instanceof关键字
  7. linux 脱机安装包,linux 离线下载rpm安装包
  8. C语言实例:输出各种形式的九九乘法表
  9. 超简单设置右键 VS Code 打开文件
  10. 二级c语言考试真题及答案,全国计算机二级C语言考试真题及答案.doc