利用Termux在安卓手机中安装 PostgreSQL

发布于:2025-02-10 ⋅ 阅读:(49) ⋅ 点赞:(0)

利用Termux在安卓手机中安装 PostgreSQL

⬇️Termux下载

点击下载

在 Termux 中安装 PostgreSQL 可以按照以下步骤进行:

1. 更新 Termux 包管理器

先更新软件包列表和已安装的软件包:

pkg update && pkg upgrade -y

2. 安装 PostgreSQL

使用以下命令安装 PostgreSQL:

pkg install postgresql -y

3. 初始化数据库

安装完成后,需要初始化数据库目录:

initdb $PREFIX/var/lib/postgresql
3.1修改数据库配置文件允许外部链接

要在 Termux 中配置 PostgreSQL 允许外部连接,需要进行以下步骤:

  1. 修改 postgresql.conf 文件

    找到并编辑 PostgreSQL 配置文件 postgresql.conf。这个文件通常位于 $PREFIX/var/lib/postgresql/data/postgresql.conf

    使用 vim 或其他编辑器打开该文件:

    vim $PREFIX/var/lib/postgresql/postgresql.conf
    

    找到并修改以下配置项:

    • listen_addresses
      设置为 '*',表示允许来自任何 IP 的连接。

      listen_addresses = '*'
      
  2. 修改 pg_hba.conf 文件
    接下来,编辑 pg_hba.conf 文件来允许外部连接。文件路径通常是 $PREFIX/var/lib/postgresql/data/pg_hba.conf

    使用 vim 打开该文件:

    vim $PREFIX/var/lib/postgresql/pg_hba.conf
    

    然后在文件末尾添加如下配置,允许来自任何 IP 地址的连接(可根据需要更改为更严格的限制):

    host    all             all             0.0.0.0/0               md5
    host    all             all             ::/0                    md5
    
    

    这个配置表示:

    • host:允许 TCP/IP 连接。
    • all:允许访问所有数据库。
    • all:允许所有用户。
    • 0.0.0.0/0:允许所有 IP 地址访问。
    • md5:使用密码认证。

4. 启动 PostgreSQL

启动 PostgreSQL 服务器:

pg_ctl -D $PREFIX/var/lib/postgresql start

5. 创建数据库用户和数据库(可选)

你的 PostgreSQL 没有默认创建 postgres 用户,所以 psql -U postgres -d postgres 无法连接。可以按照以下方法解决这个问题。


方法 1:尝试使用当前系统用户连接

在 Termux 中,默认的 PostgreSQL 用户名可能与 Termux 用户匹配(如 u0_a201)。尝试:

psql -d postgres

如果成功进入 psql,你可以创建 postgres 用户:

CREATE ROLE postgres WITH SUPERUSER LOGIN PASSWORD 'yourpassword';

创建一个数据库,方便链接

CREATE DATABASE demo;

然后退出:

\q

之后就可以用 psql -U postgres -d postgres 连接。

6. 连接到数据库

使用以下命令连接到数据库:

psql -U myuser -d demo

注意:如果要从外部主机链接数据库,则需要修改数据库配置文件

7. 停止 PostgreSQL 服务器(可选)

如果需要关闭 PostgreSQL 服务器,可以运行:

pg_ctl -D $PREFIX/var/lib/postgresql stop

这样你就可以在 Termux 上运行 PostgreSQL 了!🚀 如果遇到任何问题,欢迎提问。

8.重启 PostgreSQL 服务:

修改配置后,重新启动 PostgreSQL 服务使设置生效。

你可以通过以下命令重启 PostgreSQL:

pg_ctl -D $PREFIX/var/lib/postgresql start

完成以上步骤后,PostgreSQL 应该就能够接受外部连接了。确保防火墙规则允许数据库端口(通常是 5432)的连接。


网站公告

今日签到

点亮在社区的每一天
去签到