银河麒麟V10-ARM架构-postgresql安装与部署指南

news/2024/7/9 20:15:45 标签: postgresql, 数据库

提示:本人长期接收外包任务。

前言

本文详细介绍应用源码进行pgsql的安装步骤,本文以postgresql-12.0为例。

一、下载并解压安装包

下载地址:https://ftp.postgresql.org/pub/source/

解压安装包,创建安装路径:

[root@localhost ~]# tar -zvxf postgresql-12.0.tar.gz
[root@localhost ~]# mkdir -p /export/servers/app/postgresql-12.0 

二、配置并安装

 进入解压文件,执行pgsql编译安装:

[root@localhost ~]# cd postgresql-12.0
[root@localhost postgresql-12.0]# ./configure --prefix=/export/servers/app/postgresql-12.0 && make && make install  

如果命令窗中提示“PostgreSQL installation complete.”,则表示安装成功。

如果出现“readline library”等相关错误,则需要进行依赖库安装 :

[root@localhost postgresql-12.0]# sudo apt install libreadline-dev

三、添加环境变量

在系统环境变量文件中添加pgsql相关路径,并刷新配置。

[root@localhost postgresql-12.0]#vim /etc/profile
export PGHOME=/export/servers/app/postgresql-12.5
export PGDATA=/export/servers/data/pgsql/
export PATH=$PGHOME/bin:$PATH
export LANG=en_US.utf8
export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
 [root@localhost postgresql-12.0]#source /etc/profile

四、初始化数据库

1.创建用户和数据中心,并设置文件所有权。

 [root@localhost postgresql-12.0]#useradd postgres
 [root@localhost postgresql-12.0]#mkdir -p /export/servers/data/pgsql/
 [root@localhost postgresql-12.0]#chown postgres:postgres /export/servers/data/pgsql/

2.初始化数据库

以postgres的身份进行数据库初始化:

[root@localhost postgresql-12.0]#su - postgres  
[postgres@localhost bin]$/export/servers/app/postgresql-12.0/bin/initdb -D /export/servers/data/pgsql/

 如果命令窗中提示“Success.You can now start the database server using...”,则表示初始化成功。

 五、数据库连接配置

1.修改监听地址

postgresql.conf文件中的配置项修改为listen_addresses='*',若主机有多张网卡,也可将其修改为指定网卡的IP

[postgres@localhost bin]$ vim /export/servers/data/pgsql/postgresql.conf

2.允许远程连接

在pg_hba.conf文件末尾处添加一行“host        all        all        0.0.0.0/0        md5”。修改配置文件后需要重启服务。

[postgres@localhost bin]$vim /export/servers/data/pgsql/pg_hba.conf
[postgres@localhost bin]$/export/servers/app/postgresql-12.0/bin/pg_ctl -D /export/servers/data/pgsql/ -l logfile restart

 注意:最后一项如果设置为“md5”,表示使用密码登录。如果为“trust”,则表示无密码登录。

 六、启动数据库服务

先后执行如下两条指令来启动数据库服务:

[postgres@localhost bin]$/export/servers/app/postgresql-12/bin/pg_ctl -D /export/servers/data/pgsql/ -l logfile start
waiting for server to start..../bin/sh: logfile: Permission denied
stopped waiting
pg_ctl: could not start server
Examine the log output.

[postgres@localhost bin]$ pg_ctl start
waiting for server to start....2023-03-03 11:27:58.887 CST [41939] LOG: starting PostgreSQL 12.5 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 7.3.0, 64-bit
2023-03-03 11:27:58.888 CST [41939] LOG: listening on IPv4 address "0.0.0.0", port 5432
2023-03-03 11:27:58.888 CST [41939] LOG: listening on IPv6 address "::", port 5432
2023-03-03 11:27:58.890 CST [41939] LOG: listening on Unix socket "/tmp/.s.PGSQL.5432"
2023-03-03 11:27:58.908 CST [41940] LOG: database system was shut down at 2023-03-03 11:12:37 CST
2023-03-03 11:27:58.911 CST [41939] LOG: database system is ready to accept connections
done
server started

 验证5432端口是否开启:

[postgres@localhost bin]$netstat -anp | grep 5432

如下图所示,则表示成功开启。 

 七、登录并修改postgres密码

 1.将postgres的密码修改为postgres。建议账号和密码设置为一致,方便记忆。

[postgres@localhost pgsql]# psql  
postgres=#alter user postgres with password 'postgres';  
ALTER ROLE
postgres=#exit

 2.验证密码是否修改成功

[postgres@localhost pgsql]$ psql
Password for user postgres:        # 输入修改的密码:这里是postgres

输入正确密码后命令窗如下所示:

八、执行SQL语句

至此,pgsql数据库安装完毕。在上图中的postgres=#处即可执行SQL语句。 

总结

银河麒麟系统安装程序比较繁琐,潜在问题比较多,个人建议均通过源码自定义编译安装。

国产系统还需努力啊!


http://www.niftyadmin.cn/n/5207285.html

相关文章

GitHub桌面版

GitHub桌面版 一、GitHub 桌面版二、clone 仓库三、更新仓库 一、GitHub 桌面版 二、clone 仓库 三、更新仓库

【读懂AUTOSAR规范】PduR 缓存分配(Buffer allocation)

1. 前言 PDU路由器模块支持将I-PDU从一个源总线网关到一个或多个目标总线。与从/到本地模块的传输和接收不同,PDU路由器模块必须同时充当接收器和发射器,并且在某些情况下还提供I-PDU的缓冲。网关需求被有意地分离,以便在不需要网关的情况下高效实现PDU路由器模块。如果PDU…

意图交易:为用户思考,而不是让用户思考

意图叙事 在前不久,知名加密投资机构 Paradigm 的 CTO 、研究员 Georgios Konstantopoulos 曾在推特上对现有 ChainAsset 模式的糟糕且割裂的体验进行了吐槽,这也道出了很多链上用户的痛点。同时他也认为现有加密基建设施需要为用户思考,而不…

BUG-@Test`和@Transactional一起使用,不管有没有抛出错误,都会回滚。

BUG信息 如题。 来源 单元测试下,测试开启事务管理回滚。 解决 Rollback回滚属性关闭 Test Transactional// 当该注解标注的方法抛出 Exception 类型的异常时,Spring 会回滚当前的事务。 Rollback(value false)// 关闭回滚 public void insertT…

【带头学C++】----- 八、C++面向对象编程 ---- 8.1 面向对象编程概述

目录 8.1 面向对象编程概述 8.1.1 面向对象概念(OOP) 8.1.2 面向过程概念 8.1 面向对象编程概述 8.1.1 面向对象概念(OOP) 面向对象(Object-Oriented)是一种编程范式,它将程序设计中的数据和…

RPC vs. HTTP:谁主沉浮在网络通信的江湖?

🎏:你只管努力,剩下的交给时间 🏠 :小破站 RPC vs. HTTP:谁主沉浮在网络通信的江湖? 前言第一:背景介绍第二:性能对比第三:适用场景第四:总结 前言…