银河麒麟桌面操作系统安装 postgreSQL13(源码安装)

2023-11-13

1、首先下载源码postgres

wget http://ftp.postgresql.org/pub/source/v13.1/postgresql-13.1.tar.bz2

2、解压

tar xjvf  postgresql-13.1.tar.bz2

3、进入文件夹

cd postgresql-13.1/

4、 创建安装路径,一般我们都是安装在/opt/文件夹下面
这里一定要用root用户去创建

sudo su
mkdir -p /opt/pgsql-13.1

创建好后一定是root:root 用户:用户组

5、配置

./configure --prefix=/opt/pgsql-13.1 --without-readline

6、编译

make -j8

7、安装

make install

接下来是重点:
我们要创建一个linux用户postgres,用来启动postgres服务,具体如下:
1、创建postgres用户

#登录root用户
sudo su
#如果是ubuntu桌面版的话
su -i 
#添加用户
useradd postgres
#添加密码
passwd postgres

2、用户创建好以后就可以设置刚才/opt/pgsql-13.1的用户属性了

#首先创建一个文件夹,作为数据库的数据存储点
sudo su
mkdir /opt/pgsql-13.1/data
chown -R postgres /opt/pgsql-13.1

3、设置环境变量

sudo su
vim /etc/profile

在末尾打开后增加

PATH=$PATH:/opt/pgsql-13.1/bin
export PATH
LD_LIBRARY_PATH=/opt/pgsql-13.1/lib
export LD_LIBRARY_PATH
export PGDATA=/opt/pgsql-13.1/data

4、添加后source一下

source /etc/profile

5、进入postgres

su - postgres

注意,这时候命令行只有一个$符号,我们只需要输入bash后就可以了

bash
ls -l
postgres --version
#设置数据库存放数据路径的全局变量
export PGDATA=/home/kylin/postgres/data
#或者 initdb -D /home/kylin/postgres/data
#如果export了就不用加-D xxx了
initdb
pg_ctl start
#启动后postgres默认有一个用户postgres超级用户,因为它的密码是随机的,所以我们无法通过密码在其它用户上登录,所以必须通过postgres用户来登录超级用户,然后再创建一个数据库用户和数据库
psql -h 127.0.0.1

如下登录进来了

postgres@kylin-D2000:/opt/pgsql-13.1$ psql -h 127.0.0.1 
psql (12.9 (Ubuntu 12.9-0kylin0.20.04.1k1), 服务器 13.1)
警告:psql 主版本12,服务器主版本为13.
     一些psql功能可能无法正常使用.
输入 "help" 来获取帮助信息.

postgres=#

到这里以后既可以创建数据库用户和database了。
创建用户

postgres=# create user username with password '****';
CREATE ROLE
postgres=#

//修改用户名
alter user name rename to new naem
//修改密码
alter user name with password '123456';

创建数据库

postgres=# create database dbtest owner username; -- 创建数据库指定所属者
CREATE DATABASE
postgres=#

将数据库得权限,全部赋给某个用户

postgres=# grant all on database dbtest to username; -- 将dbtest所有权限赋值给username
GRANT
postgres=#

创建好之后就可退出

postgres=#\q

前面这么多工作主要为接下来做准备,其他linux用户登录数据库

psql -h 10.10.10.10 -U user -d postgres -p 5432

-h:数据库IP
-U:登录用户
-d:登录的数据库
-p:登录端口

这样你就可以在Linux下用你常用的Linux去登录数据库了

kylin@kylin-D2000:~$ psql -U shenyan -d shenyan_f -h 127.0.0.1
psql (12.9 (Ubuntu 12.9-0kylin0.20.04.1k1), 服务器 13.1)
警告:psql 主版本12,服务器主版本为13.
     一些psql功能可能无法正常使用.
输入 "help" 来获取帮助信息.

shenyan_f=> 

注意:
值得注意的是posgres数据库服务在启动的时候必须是Linux postgres用户,这是postgres数据库默认的,所以你不去创建这个用户,postgres服务自己也会去创建,他创建后密码是随机生成的,我们是无法知道的,所以也无法登录postgres,所以还是我们自己手动去创建。

如果我们用命令行安装了postgres后。默认postgres会启动,同时它自己会建立

如果你嫌麻烦直接采用docker

[root@localhost ~]# docker pull postgres # 载入镜像

[root@localhost ~]# docker run \
--name demo \
--privileged=true \
-e TZ='Asia/Shanghai' \
-e POSTGRES_USER=koji \
-e POSTGRES_DB=koji \
-e POSTGRES_PASSWORD=123456 \
-e PGDATA=/tmp/ \
-v /root/data:/tmp/ \
-p 5432:5432 \
-v /root/pem/psql-run:/docker-entrypoint-initdb.d \
-d \
postgres

然后就可以登录数据库了,登录后创建自己的数据库用户和数据库就可以了。
因为我们已经映射了data,所以只要/root/data在,即使数据库docker删除了,下次启动后,数据还是有的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

银河麒麟桌面操作系统安装 postgreSQL13(源码安装) 的相关文章

  • Discord.net 无法在 Linux 上运行

    我正在尝试让在 Linux VPS 上运行的 Discord net 中编码的不和谐机器人 我通过单声道运行 但我不断收到此错误 Unhandled Exception System Exception Connection lost at
  • SQL查询查找具有特定数量关联的行

    使用 Postgres 我有一个架构conversations and conversationUsers Each conversation有很多conversationUsers 我希望能够找到具有确切指定数量的对话conversati
  • 如何将目录及其子目录中的所有 PDF 文件复制到一个位置?

    如何全部复制PDF文件从目录及其子目录到单个目录 实际上还有更多的文件 并且深度有些任意 假设四个目录的最大深度是公平的 我想这些文件需要重命名 如果a pdf例如 位于多个目录中 因为我会adding https ebooks stack
  • SELECT 在 PL/pgSQL 函数中引发异常

    我想在函数内实现循环 但收到此错误 ERROR 查询没有结果数据的目标 代码 CREATE OR REPLACE FUNCTION my function ill int ndx bigint RETURNS int AS DECLARE
  • 如何查找所有以句号结尾的单词?

    我有一个包含许多以 a 结尾的单词的文件 其中大部分是缩写 例如 etc p s 如何输出一个仅显示一次所有这些单词的列表 所有单词前面都有一个空格 因此可以使用该空格来查找单词的开头 没有一个单词出现在该行的开头 文件中没有句子 因此句点
  • Linux 可执行文件与 OS X“兼容”吗?

    如果您在基于 Linux 的平台上用 C 语言编译一个程序 然后将其移植以使用 MacOS 库 它会工作吗 来自编译器的核心机器代码在 Mac 和 Linux 上兼容吗 我问这个问题的原因是因为两者都是 基于 UNIX 的 所以我认为这是真
  • 安装J语言的JQt IDE,出现错误

    我一直按照这里的说明进行操作 http code jsoftware com wiki System Installation Linux http code jsoftware com wiki System Installation L
  • 如何从 bash 数组中删除元素而不展平数组

    我想创建一个采用 bash 数组的函数 如下所示 a element zero element one element two 并删除一个元素 如 元素一 并留下一个数组 如下所示 a element zero element two 这样
  • 使用 sh 运行 bash 脚本

    我有 bash 脚本 它需要 bash 另一个人尝试运行它 sh script name sh 它失败了 因为 sh 是他的发行版中 dash 的符号链接 ls la bin sh lrwxrwxrwx 1 root root 4 Aug
  • Django 独特的不工作

    我在从查询中过滤掉重复项时遇到问题 我正在使用 Django 1 4 和 Postgres 8 4 13 我在我的模型对象上使用这个查询 它是一个 jquery 自动完成 term request GET get term field re
  • 有谁知道在哪里定义硬件、版本和序列号。 /proc/cpuinfo 的字段?

    我想确保我的 proc cpuinfo 是准确的 目前它输出 Hardware am335xevm Revision 0000 Serial 0000000000000000 我可以在代码中的哪里更改它以给出实际值 这取决于 Linux 的
  • Django 和 PostgreSQL - 值对于类型字符变化来说太长(512)

    我正在从测试 SQLite 数据库迁移到 PostgreSQL 数据库 我有一个插入到数据库中的示例对象 它在 SQLite 上工作 但在 PostgreSQL 中给我一个错误 代码片段是 car CarItem objects creat
  • SSE:跨页边界的未对齐加载和存储

    我在页面边界旁边执行未对齐加载或存储之前读过某处 例如使用 mm loadu si128 mm storeu si128内在函数 代码应首先检查整个向量 在本例中为 16 个字节 是否属于同一页 如果不属于同一页 则切换到非向量指令 我知道
  • 在bash脚本中分割字符串[重复]

    这个问题在这里已经有答案了 我想分割一个字符串并需要其中的一些参数 USER dn uid dfl3030 cn users cn accounts dc tenant dc ycs dc io cn Reb Lena Schmidt kr
  • docker容器大小远大于实际大小

    我正在尝试从中构建图像debian latest 构建后 报告的图像虚拟大小来自docker images命令为 1 917 GB 我登录查看尺寸 du sh 大小为 573 MB 我很确定这么大的尺寸通常是不可能的 这里发生了什么 如何获
  • 在 plpgsql 函数中使用 quote_ident()

    我是创建 plpgsql 函数的新手 我需要一些有关在函数内部执行的动态命令上使用 quote ident 甚至 quote literal 的说明 希望有人能给我一个关于它们如何在函数内部工作的具体解释 TIA 这是一个例子 EXECUT
  • 如何对 JSON 类型列进行分组/选择(PG::UndefinedFunction: 错误: 无法识别 json 类型的等式运算符)

    我想做
  • 我的线程图像生成应用程序如何将其数据传输到 GUI?

    Mandelbrot 生成器的缓慢多精度实现 线程化 使用 POSIX 线程 Gtk 图形用户界面 我有点失落了 这是我第一次尝试编写线程程序 我实际上并没有尝试转换它的单线程版本 只是尝试实现基本框架 到目前为止它是如何工作的简要描述 M
  • bash中的用户名、密码程序

    我有一个程序 要求用户输入用户名和密码 然后将其存储在文本文件中 第一列是用户名 第二列是密码 我需要一个命令 在用户输入用户名和新密码时替换密码 如下我拥有的 bin bash admin menu Register User echo
  • 在脚本内使用不带密码的 sudo

    由于某种原因 我需要作为用户在没有 sudo 的情况下运行脚本 script sh 该脚本需要 root 权限才能工作 我认为将 sudo 放入 script sh 中是唯一的解决方案 让我们举个例子 script sh bin sh su

随机推荐

  • 深度学习------CNN实现验证码和猫狗数据集

    1 卷积神经网络基本操作 import tensorflow as tf import numpy as np import os import matplotlib pyplot as plt import random def read
  • AI标注工具Labelme和LabelImage Labelme和LabelImage集成工具

    在AI数据标注过程中 难免会使用到标注工具 常用的工具无非是Labelme和LabelImage Labelme是标注目标轮廓 而LabelImage则是标注目标的区域 然而使用原生态的工具 需要用到python命令行 十分麻烦 为了方便大
  • C++ ——Qt的信号和槽的详解

    1 概述 信号槽是 Qt 框架引以为豪的机制之一 所谓信号槽 实际就是观察者模式 当某个事件发生之后 比如 按钮检测到自己被点击了一下 它就会发出一个信号 signal 这种发出是没有目的的 类似广播 如果有对象对这个信号感兴趣 它就会使用
  • pycharm安装需要java_安装pycharm遇到的坑

    第三周开始接触python了 结果第一步装pycharm时就遇到了坑 正常安装完成后点运行时出现错误 No JVM installation found 助教说这是缺少jdk java程序支持包 需要在网上找个最新的安装并配置下path路径
  • 【第24篇】CenterNet2论文解析,COCO成绩最高56.4mAP

    文章目录 摘要 1 简介 2 相关工作 3 准备工作 4 两阶段检测的概率解释 5 构建一个概率两级检测器 6 结果 6 1 消融研究 6 2 大词汇检测 七 结论 摘要 https arxiv org abs 2103 07461 我们开
  • 开源License的类型

    如今 Stallman率先推出的GPL已经进入到第三个版本 GNU GPLv3 且这只是几十种开源License类型中的一种 开源组织OSI 是一个在1998年成立的 为了推广开源程序和规范术语使用的组织 它已经批准了80多种开源许可证 这
  • JS数组方法&&es5数组新增方法

    1 unshift 给数组的开头添加一个或多个元素 数组名 unshift 一个值或多个值 返回添加以后的新数组的长度 2 push 给数组的末尾添加一个或多个元素 数组 push 一个值或多个值 返回新数组的长度 3 shift 给数组的
  • C++的Json库的简单实现

    我的Json库实现 Json 实现Json 我的源码 点这里 https github com jo qzy MyJson 和效果图 Json库中的类实现 JSON Value类 JSON Reader JSON Writer FastWr
  • 第十二章 Ambari二次开发之集成Alluxio

    1 Alluxio高可用部署 生产环境 使用具有高可用性的模式来运行Alluxio masters 1 1 Alluxio架构 Alluxio可以被分为三个部分 masters workers以及clients 一个典型的设置由一个主服务器
  • MySQL 过滤重复数据

    方法1 加关键字 DISTINCT 在mysql中 可以利用 SELECT 语句和 DISTINCT 关键字来进行去重查询 过滤掉重复的数据 语法 SELECT DISTINCT 字段名 FROM 数据表名 DISTINCT 关键字的语法格
  • HTML+CSS+JavaScript写计算器

    思维导图 代码 HTML div div div div div div
  • TestNg多线程—— 并行执行测试

    多线程并行执行测试 可以通过参数设置来实现不同级别的多线程配置测试 1 test级别的多线程测试 每个
  • 第二章:25+ Python 数据操作教程(第十八节如何使用 Matplotlib 库在 python 中执行绘图和数据可视化)持续更新中

    本教程概述了如何使用 Matplotlib 库在 python 中执行绘图和数据可视化 这篇文章的目的是让您熟悉该库的基础知识和高级绘图功能 它包含几个示例 将为您提供使用 Python 生成绘图的实践经验 目录 什么是 Matplotli
  • phpshe v1.7漏洞复现(Sql injection+XXE)

    前几天研究了一下xss的绕过 这两天准备深入研究下sql注入的审计 首先自动审计一波 看到疑似的一个变量覆盖点 点进去看原来是 register globals的隐患消除 简单来说如果这个配置设置为On的话 从客户端传输过来的任意参数值会被
  • jboss 热部署

    文章目录 JBoss EAP 6 4 0 GA AS 7 5 0 Final redhat 21 JBoss EAP 6 4 0 GA AS 7 5 0 Final redhat 21
  • 一文学会动态规划

    系列文章目录 注意 在学习理论之前 希望读者能看如下几个例子 有助于理解 算法导论 学习 十七 动态规划之钢条切割 C语言 算法导论 学习 十八 动态规划之矩阵链乘 C语言 算法导论 学习 十九 动态规划之最长公共子序列 C语言 文章目录
  • 浅谈数据挖掘——频繁模式、序列挖掘与搜索优化算法

    本系列将从下面几方面谈谈最近的一点点收获 令声明 本文主要是对我找到的一个莫名其妙国外英文pdf文件的学习与解读 因为我也没有找到他的出处 也没作者也没学校 所以我仅以此段文字向这个未知的作者致敬 本文主要处于科普类的理解 列出的主要算法并
  • SpringBoot学习之单点登录

    SpringBoot学习之单点登录 单点登录 登录 注销 部署 实现 主要功能 重要步骤 sso client拦截未登录请求 sso server拦截未登录请求 sso server验证用户登录信息 sso server创建授权令牌 sso
  • 直播运营岗

    一 理论知识 直播基础知识 直播团队构成 直播工作流程 中控工作流程 中控话术 二 界面操作 电商罗盘 巨量百应 直播伴侣 发单打单 产品链接 三 进阶学习 千川投放 直播复盘 四 面试规划 简历制作 职业生涯规划 1 直播基础知识 1 1
  • 银河麒麟桌面操作系统安装 postgreSQL13(源码安装)

    1 首先下载源码postgres wget http ftp postgresql org pub source v13 1 postgresql 13 1 tar bz2 2 解压 tar xjvf postgresql 13 1 tar