Termux предоставляет полноценную Linux‑среду на Android‑устройствах, позволяя запускать серверные сервисы прямо на смартфоне или планшете. В этой статье мы рассмотрим, как установить и настроить две самые популярные СУБД — MySQL (в виде MariaDB) и PostgreSQL. После выполнения всех шагов вы сможете использовать их для разработки, тестирования API или в качестве небольшого локального сервера.
Подготовка окружения
Прежде чем приступить к установке, обновим пакеты Termux и установим базовые утилиты.
apt update && apt upgrade -y
apt install -y wget curl vim git gnupg
Для удобства работы рекомендуется настроить ~/.profile и добавить путь к установленным сервисам:
echo 'export PATH=$PATH:$HOME/.local/bin' >> ~/.profile && source ~/.profile
Установка MariaDB (MySQL)
В официальных репозиториях Termux MySQL заменён на совместимый MariaDB. Выполняем установку:
apt install -y mariadb
После установки необходимо инициализировать базу данных:
mysqld --initialize-insecure --user=$(whoami)
Запускаем сервер в фоновом режиме:
mysqld_safe &
Проверяем, что процесс работает:
ps aux | grep mysqld
Подключаемся к серверу без пароля (режим --initialize-insecure создаёт пользователя root без пароля):
mysql -u root
Сразу после первого входа рекомендуется задать пароль для root и создать обычного пользователя:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'StrongRootPass!23';
CREATE USER 'dev'@'%' IDENTIFIED BY 'DevPass#2026';
GRANT ALL PRIVILEGES ON . TO 'dev'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
Для автоматического запуска сервера при старте Termux создаём скрипт ~/.termux/boot/start-mariadb.sh (если у вас установлен плагин termux-services):
mkdir -p ~/.termux/boot && cat > ~/.termux/boot/start-mariadb.sh <<'EOF'
#!/data/data/com.termux/files/usr/bin/sh
mysqld_safe &
EOF
chmod +x ~/.termux/boot/start-mariadb.sh
Установка PostgreSQL
PostgreSQL доступен в репозитории unstable. Включим репозиторий и установим пакет.
apt install -y postgresql
Инициализируем кластер базы данных (обычно делается автоматически, но на всякий случай):
initdb -D $HOME/.local/var/postgres
Запускаем сервер в фоне:
pg_ctl -D $HOME/.local/var/postgres -l $HOME/.local/var/postgres/logfile start
Создаём роль и базу данных для разработки:
createuser -s dev && createdb -O dev devdb
Устанавливаем пароль для новой роли:
psql -U dev -c "ALTER USER dev WITH PASSWORD 'DevPass#2026';"
Для удобства добавим в ~/.profile переменные окружения, указывающие путь к каталогу данных:
echo 'export PGDATA=$HOME/.local/var/postgres' >> ~/.profile && source ~/.profile
Автозапуск PostgreSQL через termux-services:
mkdir -p ~/.termux/boot && cat > ~/.termux/boot/start-pg.sh <<'EOF'
#!/data/data/com.termux/files/usr/bin/sh
pg_ctl -D $HOME/.local/var/postgres -l $HOME/.local/var/postgres/logfile start
EOF
chmod +x ~/.termux/boot/start-pg.sh
Тестирование соединения
Проверим, что обе СУБД отвечают на запросы.
# MySQL
mysql -u dev -pDevPass#2026 -e "SELECT VERSION();"
# PostgreSQL
psql -U dev -d devdb -c "SELECT version();"
Если команды выводят версии СУБД, значит всё настроено корректно.
Оптимизация и безопасность
- Ограничение доступа. По умолчанию Termux слушает только локальный интерфейс (
127.0.0.1). Для доступа из сети следует настроить проброс портов черезssh -Rили использоватьtermux-tunnel. - Регулярные бэкапы. Для MariaDB используйте
mysqldump, а для PostgreSQL —pg_dumpall. Пример автоматического бэкапа в cron (Termux поддерживаетcrontabчерез пакетcronie). - Настройка памяти. На мобильных устройствах объём RAM ограничен. Для MariaDB уменьшите
innodb_buffer_pool_sizeдо 64M, а для PostgreSQL —shared_buffersдо 32M. - Обновления. Периодически обновляйте пакеты:
apt update && apt upgrade -y.
Заключение
Termux — мощный инструмент, позволяющий превратить Android‑устройство в полноценный сервер разработки. Мы рассмотрели установку и базовую настройку как MySQL (MariaDB), так и PostgreSQL, а также рекомендации по безопасности и автоматизации. Теперь вы можете разрабатывать и тестировать свои приложения без необходимости в отдельном ПК или облаке.
Если вам нужен профессиональный аудит инфраструктуры, настройка CI/CD, миграция данных или консультация по оптимизации баз данных, команда RybinskLab готова помочь. Свяжитесь с нами через контактную форму и получите индивидуальное решение под ваш проект.