ARM系统下的postgis12 和postgis13安装

这篇具有很好参考价值的文章主要介绍了ARM系统下的postgis12 和postgis13安装。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、环境

二、安装

1、安装docker

2、安装postgis(里面包含postgres)

三、测试

四、使用

五、问题


一、环境

linux的系统在终端输入: uname -a 

Linux host-10-208-254-221 4.19.90-2112.8.0.0131.oe1.aarch64 #1 SMP Fri Dec 31 19:53:20 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux
搞不懂是什么系统???

在网上搜索arm下安装postgres12 。流程贼长安装各种问题,白瞎两天postgres安装好了,postgis插件死活安装不了,废了,果断放弃

参考文档:Postgresql 12.2 + PostGIS 3.0.1 安装部署手册_postgis安装教程_运维&晓柏的博客-CSDN博客

以上文档安装postgres还行,不建议安装postgis, 问题太多

果断放弃使用docker安装!

二、安装

1、安装docker

参考文档: ARM架构服务器安装docker_arm安装docker_相约黄昏后007的博客-CSDN博客

参考文档里面的离线安装过程

1)下载安装包:wget https://download.docker.com/linux/static/stable/aarch64/docker-19.03.9.tgz

2)解压安装包:tar -zxvf docker-19.03.9.tgz

3)移动解压文件: sudo cp -p docker/* /usr/bin/

4)将docker注册为系统服务在/usr/lib/systemd/system/目录下,创建docker.service文件:
        sudo touch /usr/lib/systemd/system/docker.service
5)编辑docker.service文件:sudo vim /usr/lib/systemd/system/docker.service

 [Unit] 

    Description=Docker Application Container Engine 

    Documentation=http://docs.docker.com 

    After=network.target docker.socket 

    [Service] 

    Type=notify 

    EnvironmentFile=-/run/flannel/docker 
    
    WorkingDirectory=/usr/local/bin 

    ExecStart=/usr/bin/dockerd  -H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock --selinux-enabled=false --log-opt max-size=1g 

    ExecReload=/bin/kill -s HUP $MAINPID 

    # Having non-zero Limit*s causes performance problems due to accounting overhead 

    # in the kernel. We recommend using cgroups to do container-local accounting. 

    LimitNOFILE=infinity 

    LimitNPROC=infinity 

    LimitCORE=infinity 

    # Uncomment TasksMax if your systemd version supports it. 

    # Only systemd 226 and above support this version. 

    #TasksMax=infinity 

    TimeoutStartSec=0 

    # set delegate yes so that systemd does not reset the cgroups of docker containers 
    
    Delegate=yes 
    
    # kill only the docker process, not all processes in the cgroup 

    KillMode=process 
    
    Restart=on-failure 
    
    [Install] 

    WantedBy=multi-user.target

6)重载unit配置文件:sudo systemctl daemon-reload

7)启动docker:sudo systemctl start docker

8)设置开机自启动:sudo systemctl enable docker

9)查看状态:

        查看docker状态:sudo systemctl status docker
        查看docker系统信息:docker info
        查看docker版本:docker -v

------------------------------------------------------------------------------------------------------------------------------

2、安装postgis(里面包含postgres)

如果想使用12的版本使用镜像 : nickblah/postgis:12-bullseye-postgis-3 

如果想使用13的版本使用镜像:  gangstead/postgis:13-arm

1) 拉取镜像: docker  pull  gangstead/postgis:13-arm

2) 启动镜像: 

docker run -it \
--name postgres \
--restart always \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=123456 \
-e POSTGRES_DBNAME=postgres \
-e ALLOW_IP_RANGE=0.0.0.0/0 \
-p 5432:5432 \
-v /home/postgres/data:/var/lib/postgresql \
-d gangstead/postgis:13-arm

3) 查看启动: docker ps  # 查看容器 是否启动

4)本地链接 : psql -h localhost -U postgres -d postgres   密码:123456
        jdbc链接:

jdbc.url=jdbc:postgresql://localhost:5432/postgres
jdbc.username=postgres
jdbc.password=123456

5) 导入备份的数据

/home/postgres/pg/bin/pg_restore \
--host localhost \
--port 5432 \
--username "postgres" \
--password  \
--role "postgres" \
--dbname "postgres" \
--verbose /root/data/file.backup"

三、测试

四、使用

1、创建extension

create extension postgis;
create extension plpgsql;e
create extension fuzzystrmatch;
create extension tablefunc;
create extension "uuid-ossp" schema "my";
CREATE EXTENSION pgcrypto schema "aa";
CREATE EXTENSION pg_stat_statements;
CREATE EXTENSION  postgres_fdw;

2、在终端使用pg数据库命令

# 数据库
create database aa;
drop database aa;

# 用户
create user "user_aa" with password "123456";
GRANT ALL ON database aa TO "user_aa";

# 模式 (schema)
create schema "user_aa";
ALTER SCHEMA "user_aa" OWNER TO "user_aa";

# 扩展(extension)
create extension  postgis;
ALTER extension  "uuid-ossp" OWNER TO "user_aa";

# 查看扩展
select * from pg_extension;
select * from pg_available_extensions;

 
# 设置用户为超级用户
alter role "user_aa" superuser;
alter database aa owner to "user_aa";
 
# 查看链接数
show max_connections;
select count(*) from pg_stat_activity;
 

# -----------------------------------------------------
\l          # 查看数据库
\c          # 查看用户
\c db       # 切换数据库
\c - user   # 切换用户
\dt         # 查看表
\dh         # 查看方法

五、问题

1、其他模式不能使用扩展方法

例如: select gen_random_uuid()  可以执行。
但是有一个模式aa,我执行select aa.gen_random_uuid() 不能执行。

解决: 创建扩展的时候指定模式:CREATE EXTENSION pgcrypto schema "aa";文章来源地址https://www.toymoban.com/news/detail-783739.html

到了这里,关于ARM系统下的postgis12 和postgis13安装的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ARM & Linux 基础学习 / Ubuntu 下的包管理 / apt工具

    编辑整理 by Staok。 注:在 Github 上的原版文章日后可能会更新,在其它位置发的不会跟进。文章的 Gitee 仓库地址,Gitee 访问更流畅。 Ubuntu 下的包管理 / apt工具 包管理系统的功能和优点大致相同,但打包格式和工具会因平台(不同的 Linux 发行版)而异,如下表所示。 操作系

    2024年02月05日
    浏览(48)
  • mujoco相关环境在MacOs Arm芯片下的安装

    借鉴了Macbook M1 安装 mujoco 和 mujoco-py - KylinChen | Blog ,并补充了一些安装中的细节与错误fix办法 我的环境:Macbook M2 pro; Mac OS 14.1.1 (23B81); python==3.8.18 这里主要讲按照上文安装时出现的问题与解决办法,并假设gym已经装了。 1. 安装homebrew  没什么问题 2. 安装miniforge 没什么问题

    2024年01月23日
    浏览(45)
  • Qt5.12.6配置Android Arm开发环境(Linux)

    1.安装jdk 2.安装android studio 3.安装sdk 与ndk  设置代理  安装SDK工具  安装SDK Platform 安装QT   选择JDK 1.8安装路径,SDK与NDK路径  如出现Platform SDK或者Platform Build Tools未安装,点击Update Installed  配置成功后可看到ARMv7与AMD-v8a kits Qt Version也可看到ARMv7与AMD-v8a   如果 有安装了CMake,也

    2024年01月21日
    浏览(51)
  • Linux 利用 qemu-system-aarch64 实现 x86 机器安装 arm64 的操作系统

    qemu-system-aarch64 启动的虚拟机,无法受到 kvm 的管理,也无法在后台运行 终端一旦断开了,虚拟机就被关掉了,想再次进入目前没找到方法,都会回到安装操作系统的步骤 可能是 centos 有某些特殊性吧,暂时没太多时间研究,后期有时间了再看看有没有解决的方案 qemu-5.2.0 和

    2024年02月06日
    浏览(53)
  • 银河麒麟高级服务器操作系统V10SP2离线安装postgres12+postgis3.1.4步骤

    银河麒麟高级服务器操作系统V10SP2离线安装postgres12+postgis3.1.4步骤 所需安装包: 链接:https://pan.baidu.com/s/14DbNQ6kPIFOfVRhwkLCXnQ 提取码:i80i 1、Ncurses安装 Ncurses是一个能提供功能键定义(快捷键),屏幕绘制以及基于文本终端的图形互动功能的动态库。 rpm –ivh ncurses-devel-6.2-1.ky10.x

    2024年02月08日
    浏览(50)
  • Linux操作系统下Docker和Docker Compose的安装教程(包含x86和arm64平台离线一键安装资源包)

    本文章将详细介绍Linux下Docker和Docker Compose的安装教程。 目录3为x86和arm64平台Docker离线安装资源包,包含Docker Compose、一键安装脚本使用教程。 相关文章参考: Docker常用基础命令 Docker批量清理删除镜像和容器常用命令 版本如下 名称 版本 CentOS 7.6+ openEuler等其他操作系统可以使

    2024年02月06日
    浏览(50)
  • Linux安装配置ARM交叉编译器arm-linux-gnueabihf-gcc

    ARM交叉编译器是一种用于在一种架构(通常是x86或x86-64)上生成在另一种架构(如ARM)上运行的程序的工具。这种情况称为交叉编译,因为编译器和相关工具在不同的体系结构之间进行交叉工作。 主要用途如下: 嵌入式开发: ARM交叉编译器通常用于嵌入式系统开发,其中

    2024年02月01日
    浏览(42)
  • arm鲁班猫lubanCat rk3588 ubuntu20.04下源码编译安装qt5.12.5

    ubuntu-18.04上通过源码来编译及安装Qt-5.12库 QT官方线上文档for linux qt源码下载地址 进入下面目录下载 【new_archive/qt/5.12/5.12.5/single/qt-everywhere-src-5.12.5.tar.xz】 将压缩包放到Ubuntu某目录,并进入解压: 初步解压出:qt-everywhere-src-5.12.5.tar 最终得到:qt-everywhere-src-5.12.5 或者【右键】

    2024年04月11日
    浏览(59)
  • linux arm64 安装 ELK

    前言:本篇文章主要介绍如何在 linux 环境下安装 ELK 栈,包括 es、kibana 和 logstash 1.1 下载es linux aarch64 rpm 包 运行命令 rpm -ivh elasticsearch-7.17.4-aarch64.rpm 1.2 创建 es 数据和日志目录 1.3 对数据和日志目录授权 1.4 修改 es 配置文件 vi /etc/elasticsearch/elasticsearch.yml 完整配置文件 1.5 设置

    2024年02月14日
    浏览(26)
  • arm-linux-gcc安装

    1. 压缩交叉编译器工具,命令为 注意:C 后面有个空格,并且 C 是大写的,它是英文单词“Change”的第一个字母, 在此是改变目录的意思。 2. 修改PATH环境变量,将arm-linux-gcc可执行文件目录添加到PATH环境变量中。 运行命令 编辑/root/.bashrc 文件,注意“bashrc”前面有一个“

    2024年02月07日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包