实验环境

操作系统:centos 7.6

PostgreSQL:14.6

timescaledb:2.8.1

网络:本地无网络

1 编译源码安装

1.1 准备工作

useradd postgres
mkdir /usr/pgsql12/
chown -R postgres:postgres /usr/pgsql12/
mkdir /pgsqlData
chown -R postgres:postgres /pgsqlData

/usr/pgsql12用于放置二进制文件

/pgsqlData挂载数据盘放置数据,可以通过SHOW data_directory;查询

1.2 安装依赖包

依赖包可以在 http://www.rpmfind.net/ 预先下载

1.2.1 readline-devel

rpm -ivh ncurses-devel-5.9-14.20130511.el7_4.x86_64.rpm
rpm -Uvh readline-6.2-11.el7.x86_64.rpm
rpm -ivh readline-devel-6.2-11.el7.x86_64.rpm

1.2.2 gcc

rpm -ivh mpfr-3.1.1-4.el7.x86_64.rpm
rpm -ivh libmpc-1.0.1-3.el7.x86_64.rpm
rpm -ivh cpp-4.8.5-44.el7.x86_64.rpm
rpm -Uvh libgomp-4.8.5-44.el7.x86_64.rpm
rpm -Uvh libgcc-4.8.5-44.el7.x86_64.rpm
rpm -ivh kernel-headers-3.10.0-1160.el7.x86_64.rpm
rpm -Uvh glibc-common-2.17-317.el7.x86_64.rpm glibc-2.17-317.el7.x86_64.rpm
rpm -ivh glibc-headers-2.17-317.el7.x86_64.rpm
rpm -ivh glibc-devel-2.17-317.el7.x86_64.rpm
rpm -ivh gcc-4.8.5-44.el7.x86_64.rpm

1.2.3 zlib

rpm -ivh zlib-devel-1.2.7-18.el7.x86_64.rpm

1.3 postgresql

1.3.1 准备工作

下载源码文件

chown -R postgres:postgres postgresql-14.6
tar -zxvf postgresql-14.6.tar.gz

1.3.2 编译

进入postgresql-14.6目录

./configure --prefix=/usr/pgsql12/
make
make install

2 rpm安装

2.1 准备工作

useradd postgres
mkdir /pgsqlData
chown -R postgres:postgres /pgsqlData

2.2 安装

rpm包可以在有网络环境下参考 https://www.postgresql.org/download/linux/redhat/ 预先下载完成

rpm -ivh libicu-50.2-4.el7_7.x86_64.rpm
rpm -ivh postgresql14-libs-14.6-1PGDG.rhel7.x86_64.rpm
rpm -ivh postgresql14-14.6-1PGDG.rhel7.x86_64.rpm
rpm -ivh postgresql14-server-14.6-1PGDG.rhel7.x86_64.rpm

2.3 添加环境变量

在/etc/profile.d目录下新增postgres-env.sh文件,内容为:

export PG_HOME=/usr/pgsql-14
export PATH=$PATH:$PG_HOME/bin
export PGDATA=/pgsqlData

source /etc/profile立即生效

2.4 初始化

切换至postgres用户

initdb -D /pgsqlData/ -k -E utf8

2.5 修改配置文件

修改/pgsqlData/postgresql.conf中

listen_addresses = '*'
port = 15432
max_connections = 512
data_directory = '/pgsqlData'
hba_file = '/pgsqlData/pg_hba.conf'
ident_file = '/pgsqlData/pg_ident.conf

2.6 修改socket目录权限

chown postgres:postgres /var/run/postgresql

2.7 启动

使用postgres用户

pg_ctl start

2.8 登录

2.8.1 socket登录

psql -p15432

即可通过socket直接登录

2.8.2 网络登录

/pgsqlData/pg_hba.conf新增:

host    all             postgres        192.168.145.135/32         scram-sha-256

意为允许192.168.145.135/32以postgres访问所有数据库

重启PG

pg_ctl restart

socket登录后:

set password_encryption="scram-sha-256";
alter user postgres password '123';

即可通过 psql -h192.168.145.135 -Upostgres -p15432 -W postgres 登录

3 timescaledb插件

3.1 rpm包安装

rpm包可以参考 https://packagecloud.io/timescale/timescaledb/packages/el/7/timescaledb-2-postgresql-14-2.8.1-0.el7.x86_64.rpm?distro_version_id=140 预先下载

rpm -ivh timescaledb-tools-0.14.2-0.el7.x86_64.rpm
rpm -ivh timescaledb-2-loader-postgresql-14-2.8.1-0.el7.x86_64.rpm
rpm -ivh timescaledb-2-postgresql-14-2.8.1-0.el7.x86_64.rpm
timescaledb-tune --pg-config=/usr/pgsql-14/bin/pg_config

全部yes即可

重启postgres

4 导入数据

登录PG

create database zabbix;
create user zabbix with password '123';
GRANT ALL PRIVILEGES ON DATABASE zabbix TO zabbix;
\c zabbix;
create EXTENSION IF NOT EXISTS timescaledb;

下载zabbix源码并解压,按照postgres用户设置允许zabbix用户通过ip登录

cd database/postgresql
psql -h192.168.145.135 -Uzabbix -p15432 -W -dzabbix -f ./schema.sql
psql -h192.168.145.135 -Uzabbix -p15432 -W -dzabbix -f ./images.sql
psql -h192.168.145.135 -Uzabbix -p15432 -W -dzabbix -f ./data.sq
psql -h192.168.145.135 -Uzabbix -p15432 -W -dzabbix -f ./timescaledb.sql

即可使用

pg常用命令

列举数据库:\l

切换数据库:\c dbname

列举表:\dt

查看表结构:\d tblname

退出postgresql:\q

postgresql + timescaledb离线安装笔记(zabbix数据库准备工作)的更多相关文章

  1. CDH6.1.0离线安装——笔记

    一. 概述 该文档主要记录大数据平台的搭建CDH版的部署过程,以供后续部署环境提供技术参考. 1.1 主流大数据部署方法 目前主流的hadoop平台部署方法主要有以下三种: Apache hadoop ...

  2. VS2017离线安装与Oracle数据库开发环境搭建

    记得之前使用VS2015打开老的MVC4项目,不能右键创建控制器和添加视图,让我非常不习惯!找遍了网络无果,最后只能回到VS2013,但我就是不喜欢用旧的VS,这是不是病... 1.将VS2017离线 ...

  3. CM5.7.2 yum离线安装笔记

    一.建立yum本地服务源(yum支持http和ftp两种协议,这里使用http协议)  1.启动httpd服务   启动命令:service httpd start   关闭命令:service ht ...

  4. 离线安装部署zabbix

    一. 安装好CentOS安装过程中添加php,mariadb等所需要的依赖 二. 准备好所有所需的rpm压缩文件包在centos中解压,这里放在根目录下zabbix_rpms文件夹下 三. 安装所需r ...

  5. 离线安装Cloudera Manager 5和CDH5

    关于CDH和Cloudera Manager CDH (Cloudera's Distribution, including Apache Hadoop),是Cloudera 完全开源的Hadoop  ...

  6. 离线安装zabbix文档

    为了离线安装需要离线安装包,可以通过这个方式获取. 用yum安装软件默认不保存软件包,要保存需修改配置文件 #  vi   /etc/yum.conf 将keepcache的值改为1 安装版本:rel ...

  7. zabbix的离线安装方法----孙祎晨,如需转载请注明出处,谢谢配合。

    ------------------------zabbix的离线安装步骤--------------------------------------------------------------- ...

  8. RHEL7.0 Docker离线安装以及实战笔记

    1.概述 最近在琢磨一个事--在RHEL 7.0系统上离线安装使用Docker.然后配置JAVAEE环境,发布Web服务.在网上查了资料,大多数是在线安装的,其他的要么是环境不同,要么资料包找不到了. ...

  9. 离线安装mysql数据库

    开源数据库mysql,目前使用很广泛.作为程序员开发项目时,与关系型数据库打交道最多的估计也是mysql了.那么本文首先讲解如何离线安装mysql数据库,毕竟有很多项目部署在内网. 1.离线安装 本人 ...

  10. 离线安装PostgreSQL

    postgresql在线安装很简单,但是很多情况,服务器不能联网,需要离线安装.下面是离线安装的步骤: 1. 首先进入官网: https://www.postgresql.org/ 2. 点击Down ...

随机推荐

  1. DRF的限流组件(源码分析)

    DRF限流组件(源码分析) 限流,限制用户访问频率,例如:用户1分钟最多访问100次 或者 短信验证码一天每天可以发送50次, 防止盗刷. 对于匿名用户,使用用户IP作为唯一标识. 对于登录用户,使用 ...

  2. 看了绝对不会忘的 去中心化金融 - DeFi

    DeFi Decentralized Finance, 去中心化金融,主要就是 以区块链技术为载体的金融模式. 注意:区块链是一种技术,而比特币是一种应用. Terminology fungible ...

  3. 以SQLserver为例的Dapper详细讲解

    Dapper是一种轻量级的ORM(对象关系映射)工具,它提供了高效且易于使用的方式来执行数据库操作.Dapper是由Stack Overflow团队开发并维护的,它的主要目标是提供比EF更快.更直接的 ...

  4. VS 查看引用的DLL/Nuget包源码时,无法看到注释

    一.问题描述 在下面的截图中,我们发现,源码有添加一段注释. 然后通过Nuget包引用,在VS中用Reshaper反编译时,发现没有注释: 原来,DLL是默认不带注释的.即你生成一个DLL,给另一个项 ...

  5. 深度学习-06(PaddlePaddle体系结构与基本概念[Tensor、Layer、Program、Variable、Executor、Place]线性回归、波士顿房价预测)

    文章目录 深度学习-06(PaddlePaddle基础) paddlePaddle概述 PaddlePaddle简介 什么是PaddlePaddle 为什么学习PaddlePaddle PaddleP ...

  6. Azure DevOps(三)Azure Pipeline 自动化将程序包上传到 Azure Bolb Storage

    一,引言 结合前几篇文章,我们了解到 Azure Pipeline 完美的解决了持续集成,自动编译.同时也兼顾了 Sonarqube 作为代码扫描工具.接下来另外一个问题出现了,Azure DevOp ...

  7. PostgreSQL-HA 高可用集群在 Rainbond 上的部署方案

    PostgreSQL 是一种流行的开源关系型数据库管理系统.它提供了标准的SQL语言接口用于操作数据库. repmgr 是一个用于 PostgreSQL 数据库复制管理的开源工具.它提供了自动化的复制 ...

  8. 2022-11-19:第二高的薪水。表结构和数据的sql语句如下,输出200,因为200是第二大的。请问sql语句如何写? DROP TABLE IF EXISTS `employee`; CREAT

    2022-11-19:第二高的薪水.表结构和数据的sql语句如下,输出200,因为200是第二大的.请问sql语句如何写? DROP TABLE IF EXISTS `employee`; CREAT ...

  9. 2022-10-25:在一个 2 * 3 的板上(board)有 5 块砖瓦,用数字 1~5 来表示, 以及一块空缺用 0 来表示。一次 移动 定义为选择 0 与一个相邻的数字(上下左右)进行交换.

    2022-10-25:在一个 2 * 3 的板上(board)有 5 块砖瓦,用数字 1~5 来表示, 以及一块空缺用 0 来表示.一次 移动 定义为选择 0 与一个相邻的数字(上下左右)进行交换. ...

  10. vue全家桶进阶之路40:Vue3父件传值给子件

    在Vue3中,可以通过props将父组件的数据传递给子组件.具体步骤如下: 在父组件中定义要传递给子组件的数据,可以是data属性中的数据或者是计算属性computed中的数据. 在子组件中通过pro ...