1、Linux云服务器安装
企业用户可以选择租用云服务器。因为PostgreSQL所需的资源很小,一个轻量级的服务器足以支持运 行。
我们需要租赁一个云服务器去运行PostgreSQL数据库: 腾讯云 。
1.1 基础配置
如果是企业中使用或者个人资金充裕且业务稳定的话,可以选择长租使用。期望优惠的话,可以选择竞 价实例。竞价实例,在性能和稳定性上,与按量计费模式没有差别。
竞价实例,只要有人租长期的服务器就有可能把你的服务器踢掉,实例被竞价释放也是有解决办法 的,后续会去讲。

地域选择:没有要求,自己根据需要选即可。
实例配置:根据自己需求选择,无具体要求。这里我选择4核8GB。

镜像:选择CentOS、Ubuntu都可以,这里使用了Ubuntu。选择后点击下一步。
1.2 设置网络和主机
拉满带宽上限,新建安全组,把常用的端口都开启

命名实例,设置密码,进行下一步

开通

1.3 登录(使用Xshell或finalshell或windTerm)

创建好了,通过这个公网IP,端口使用22,账号ubuntu,密码使用你设置的密码。使用你的远程连接工 具XShell 或 final shell 连接即可。
2、安装PostgreSQL
2.1 Ubuntu安装PostgreSQL
这里在windows使用Xshell进行连接
① 安装命令
sudo apt update
sudo apt install acl
② 验证
psql --version
③ 查看状态与端口占用
systemctl status postgresql

查看端口占用:
sudo netstat -tunlp | grep postgres

在Ubuntu安装的PostgreSQL默认监听 5432端口 。
2.2 创建用户和数据库
① 启动客户端
切换到postgres并执行psql命令,客户端即可启动。如下
sudo -u postgres psql
② 创建用户
CREATE USER langchain_user WITH PASSWORD 'abcd1234';
③ 创建数据库
CREATE DATABASE langchain_db OWNER langchain_user;
④ 赋权
GRANT ALL PRIVILEGES ON DATABASE langchain_db TO langchain_user;
⑤ 查看数据表
\l

退出数据库终端:输入 \q 然后回车
2.3 测试URL
开启一个新的连接终端,执行以下命令,将用户名、密码、IP、端口、数据库名称替换为自己的配置
psql "postgresql://langchain_user:abcd1234@localhost:5432/langchain_db?sslmode=disable"

看到日志如上则配置完成
2.4 远程服务器连接额外操作
1 安全组放通 5432 端口
在安全组管理页面添加规则

2 PostgreSQL监听所有IP
默认情况下 PostgreSQL 只允许来自本地的请求,需要更改其 listen_addresses
① 查看相关配置文件路径
sudo -u postgres psql -c "SHOW config_file;"
日志如下
config_file
/etc/postgresql/18/main/postgresql.conf
② 更改配置文件
sudo vim /etc/postgresql/16/main/postgresql.conf
将文件替换为上一步得到的配置文件路径
在60行左右找到
#listen_addresses = 'localhost' # what IP address(es) to listen on;
按下 yy ,然后按下 p 复制一行
打开复制那行的注释,将监听的IP替换为所有,如下
listen_addresses = '*' # what IP address(es) to listen on;
保存退出
3 添加允许规则
上一步我们放通了 PostgreSQL 对网络的限制,这一步放通访问控制
① 查看配置文件路径
sudo -u postgres psql -c "SHOW hba_file;"
hba_file
/etc/postgresql/18/main/pg_hba.conf
(1 row)
② 编辑配置文件
sudo vim /etc/postgresql/16/main/pg_hba.conf
在125行左右新增一行,写入以下内容
host langchain_db langchain_user 0.0.0.0/0 scram-sha-256
这表示放通 所有IP 通过 langchain_user 用户对于 langchain_db 数据库的访问权限
③ 重启服务生效执行命令重启服务
sudo systemctl restart postgresql
看服务状态
sudo systemctl status postgresql
④ 测试连接
命令行执行连接命令
注意:如果用户名、密码、本机IP不同需要相应更改 日志如下则连接成功
psql "postgresql://langchain_user:abcd1234@123.45.67.68:5432/langchain_db?sslmode=disable"
Navicat
| Navicat 字段 | 填写内容 |
|---|---|
| 连接名称 | test-la(随便取) |
| 主机 | 123.45.67.68 |
| 端口 | 5432 |
| 初始数据库 | langchain_db |
| 用户名 | langchain_user |
| 密码 | 创建 langchain_user 时设置的密码 |