银河麒麟V10-ARM架构-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
c 复制代码
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语句。

总结

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

国产系统还需努力啊!

相关推荐
指尖下的技术13 分钟前
Mysql面试题----为什么B+树比B树更适合实现数据库索引
数据结构·数据库·b树·mysql
数据馅18 分钟前
python自动生成pg数据库表对应的es索引
数据库·python·elasticsearch
峰子201236 分钟前
B站评论系统的多级存储架构
开发语言·数据库·分布式·后端·golang·tidb
浏览器爱好者2 小时前
如何使用MongoDB进行数据存储?
数据库·mongodb
yuanpan2 小时前
MongoDB中的横向扩容数据分片
数据库·mongodb
草明2 小时前
Mongodb 慢查询日志分析 - 1
数据库·python·mongodb
yuanpan2 小时前
MongoDB的事务机制
数据库·mongodb
SelectDB3 小时前
Apache Doris 2.1.8 版本正式发布
大数据·数据库·数据分析
云和恩墨5 小时前
云计算、AI与国产化浪潮下DBA职业之路风云变幻,如何谋破局启新途?
数据库·人工智能·云计算·dba
明月看潮生5 小时前
青少年编程与数学 02-007 PostgreSQL数据库应用 11课题、视图的操作
数据库·青少年编程·postgresql·编程与数学