Linux系统部署Postgres数据库(ubuntu22.04)

步骤 1: 更新系统

首先,确保你的系统是最新的。打开终端并运行以下命令:

复制代码
sudo apt update
sudo apt upgrade

步骤 2: 安装运行 PostgreSQL

在Ubuntu 22.04中,你可以通过APT包管理器安装PostgreSQL。运行以下命令来安装最新版本的PostgreSQL:

复制代码
sudo apt install postgresql postgresql-contrib
复制代码
查看版本
复制代码
sudo -u postgres psql -c "SELECT version();"

:q退出

查看运行状态

复制代码
sudo service postgresql status;

安装完成后,PostgreSQL服务默认启动,如果没有启动可以使用如下命令启动:

sudo systemctl start postgresql

设置PostgreSQL服务在系统启动时自动启动:

复制代码
systemctl enable postgresql

步骤 3: 配置远程访问

如果你需要从远程客户端访问PostgreSQL数据库,你需要修改PostgreSQL的配置文件以允许远程连接。编辑postgresql.conf文件:

复制代码
vim /etc/postgresql/14/main/postgresql.conf

找到第60行并修改以下行:

#listen_addresses = 'localhost' # 将此行取消注释并修改为:

listen_addresses = '*' # 允许所有地址连接或指定一个IP地址,例如 '192.168.1.100'

然后,编辑pg_hba.conf文件以允许密码认证的远程连接:

复制代码
vim /etc/postgresql/14/main/pg_hba.conf 

文件最后添加以下行以允许远程连接:

复制代码
host all all 0.0.0.0/0 md5

重新加载PostgreSQL配置:

复制代码
sudo systemctl reload postgresql;
sudo service postgresql restart;

步骤 4: 创建数据库和用户(可选)

PostgreSQL在Ubuntu中默认使用postgres用户运行。为了安全起见,你应该切换到这个用户来进行后续操作:

复制代码
sudo -i -u postgres

postgres用户下,你可以创建数据库和用户。首先,进入PostgreSQL命令行界面:

复制代码
psql

然后,创建一个新的数据库和用户。例如,创建一个名为mydatabase的数据库和一个名为myuser的用户:

复制代码
CREATE DATABASE postgresdb1;
CREATE USER postgres1 WITH ENCRYPTED PASSWORD 'postgres1';
ALTER ROLE postgres1 SET client_encoding TO 'utf8';
ALTER ROLE postgres1 SET default_transaction_isolation TO 'read committed';
ALTER ROLE postgres1 SET timezone TO 'UTC';
GRANT ALL PRIVILEGES ON DATABASE postgresdb1 TO postgres1;
ALTER USER postgres1 WITH SUPERUSER;

完成数据库和用户的创建后,你可以通过以下命令退出psql和postgres用户:

退出 postgres 用户

复制代码
exit

步骤 5: 测试连接

你可以使用psql命令从远程客户端测试连接:

复制代码
psql -h 127.0.0.1 -U postgres1 -d postgresdb1 -W

# 根据实际情况替换数据库连接参数。系统会提示你输入密码。

也可通过pgadmin或者navicat连接

参考:

【ubuntu22.04安装配置PostgreSQL】_ubuntu安装postgresql-CSDN博客

相关推荐
王志来137944730085 分钟前
聚焦五大核心场景:工控服务器机箱平台的垂直深耕之路
运维·服务器·python
ii_best19 分钟前
手机自动化脚本按键精灵实战:随机布局安全数字键盘的自动化输入方案
android·运维·ios·自动化·手机
鲁邦通物联网21 分钟前
充电站底层脱机DLB引擎解构:基于Linux调度的边缘计算网关并发控制实战
linux·运维·人工智能·边缘计算·边缘计算网关·5g数采·工业级边缘计算网关
隔窗听雨眠22 分钟前
MySQL索引机制深度解析:从B+树原理到高并发查询优化的完整指南
数据库·b树·mysql
数智化管理手记23 分钟前
数据质量无法保障?自动化数据质量规则校验如何搭建方案?
大数据·数据库·自动化
我的xiaodoujiao34 分钟前
使用PyMySQL模块技术操作MySQL数据库
数据库·python·测试工具·mysql
便利店102442 分钟前
边界与远程:墙、洞与加密通道
运维·服务器·防火墙·acl·nat
Zhang~Ling1 小时前
Linux多线程互斥锁:从现象到原理解析
linux·运维·网络
KaiwuDB1 小时前
KaiwuDB 运维实战 03:双副本仲裁节点部署与高可用实践
运维·时序数据库·raft·kaiwudb·数据库运维·双副本高可用·仲裁节点
ambition202424 小时前
操作系统同步:读者-写者问题与读写公平法详解(附每个 PV 操作含义)
linux·开发语言·数据结构·unix