找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

1739

积分

0

好友

225

主题
发表于 12 小时前 | 查看: 2| 回复: 0

你是否想过把闲置的安卓手机变成一台随时可用的数据库服务器?无需电脑,只需一个App,就能让强大的PostgreSQL在你的口袋里运行起来。这听起来可能有些不可思议,但借助Termux这个强大的终端模拟器,完全可行。实际操作下来,我发现整个部署流程非常直接,几条命令就能搞定,非常适合作为移动开发测试环境或轻量级数据存储方案。今天,我们就来一步步实现它。

环境与准备

要在Android手机上运行Linux环境,我们得请出神器——Termux。它是一个Android终端模拟器和Linux环境应用,无需root权限即可运行。不过,它有一些天生的限制需要注意:

  • Android内核 ≠ 标准Linux内核:这意味着一些深度依赖内核特性的操作会受到限制。
  • 能通过proot模拟Linux系统环境。
  • 无法直接安装Docker:因为Android系统通常缺乏完整的cgroups和namespaces支持。
  • 无法执行reboot命令:没有root权限,无法调用底层重启功能。

提示:Termux可以在GitHub或F-Droid等应用商店找到。安装后,建议先执行pkg update && pkg upgrade更新软件包列表。

第一步:开启远程连接(SSH)

为了更方便地在电脑上操作手机里的Termux,我们首先开启SSH服务。在Termux中依次执行以下命令:

# 安装OpenSSH服务器
pkg install openssh

# 启动SSHD服务
sshd

# 为root用户(此处指Termux用户)设置密码
passwd root

# 查看手机在局域网内的IP地址
ifconfig

# 在电脑或其他设备上使用以下命令连接,端口默认为8022
# ssh -p 8022 root@手机IP地址

执行ifconfig后,找到类似于wlan0eth0接口下的inet地址,那就是你的手机IP。

第二步:升级与安装基础工具

一个趁手的Linux环境离不开常用工具。我们可以通过Termux的包管理器pkg来安装它们。

# 安装proot-distro,用于安装更完整的Linux发行版(可选,但推荐)
pkg install proot-distro

# 安装系统监控工具htop
pkg install htop

# 安装一系列常用开发与网络工具
pkg install openssh python vim git wget curl neofetch htop traceroute tcpdump

安装这些工具后,你的手机终端环境就相当强大了,无论是系统管理还是网络调试都能胜任。

核心步骤:安装并启动PostgreSQL

现在进入正题,安装我们的主角——PostgreSQL数据库。

# 1. 使用pkg安装PostgreSQL
pkg install postgresql

# 2. 创建数据库文件存储目录
mkdir -p $PREFIX/var/lib/postgresql

# 3. 初始化数据库集群
initdb $PREFIX/var/lib/postgresql

# 4. 启动PostgreSQL数据库服务
# -D 参数指定数据目录,-l 指定日志文件
pg_ctl -D $PREFIX/var/lib/postgresql start -l logfile

如果一切顺利,你会看到类似 waiting for server to start.... doneserver started 的输出。

第五步:连接与验证

服务启动后,让我们连接进去,验证数据库是否正常运行。

# 连接到默认的postgres数据库
psql -d postgres

成功连接后,你会进入PostgreSQL的交互式命令行(提示符变为 postgres=#)。让我们执行几个基本命令:

-- 查看数据库版本信息
select version();

预期你会看到详细的版本输出,其中包含“PostgreSQL 18.2 on aarch64-unknown-linux-android”等字样,这证明数据库已经在你的Android设备上成功编译并运行了。

-- 列出当前所有数据库
\l

这个命令会显示现有的数据库列表,通常包括 postgres, template0, template1

至此,一个运行在Android手机上的PostgreSQL数据库服务就部署完成了。你可以随时通过psql命令本地连接,或通过配置(如修改pg_hba.confpostgresql.conf)允许远程连接,将其作为一个真正的数据库服务器来使用。

把它当作一个随身携带的、7x24小时在线的开发测试数据库,或者用于存储个人项目的数据,都是非常酷的玩法。如果你在部署过程中遇到问题,或者有更有趣的玩法,欢迎来云栈社区的数据库或运维板块和大家一起交流探讨。




上一篇:RS485转MQTT网关:从粮仓到云端的工业物联网实践与思考
下一篇:Etcd快照机制深度解析:如何实现高效日志压缩与秒级恢复
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-2-26 17:34 , Processed in 0.366679 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表