参考资料

  1. rspamd 是一个快速、开源的垃圾邮件过滤系统
  2. Nginx 是一款高性能的开源 Web 服务器
  3. docker镜像源配置详细说明以及案例
  4. Alpine Linux 是一个轻量级的 Linux 发行版
  5. OrientDB 是一个开源的 多模型数据库
  6. 能否用Docker替代虚拟化?
  7. Go(又称 Golang)是 Google 开发的一种静态强类型、编译型、并发型编程语言
  8. Redmine 是一个开源的、基于 Web 的项目管理和问题跟踪工具

Adminer 详细简介

Adminer(原名 phpMinAdmin)是一个轻量级、开源的数据库管理工具,采用 PHP 编写。它支持多种数据库系统,包括 MySQL、PostgreSQL、SQLite、MS SQL、Oracle 等。相比 phpMyAdmin,Adminer 更加简洁高效,适合开发者和系统管理员快速管理数据库。


Adminer 特点

  1. 单文件部署:仅需一个 PHP 文件即可运行,无需复杂安装。

  2. 多数据库支持:兼容 MySQL、MariaDB、PostgreSQL、SQLite、MS SQL、Oracle 等。

  3. 轻量级:体积仅约 500KB,资源占用低。

  4. 多语言支持:提供多种语言界面(包括中文)。

  5. 开源免费:采用 Apache 或 GPL 许可证。

  6. 安全性高:支持 HTTPS、防止 SQL 注入等安全机制。

  7. 插件扩展:可通过插件增强功能(如主题、导出优化等)。


最新更新内容及时间

2023年11月 - v4.8.1  

  • 修复 SQLite 兼容性问题

  • 改进 Oracle 数据库支持

  • 安全补丁更新


镜像下载地址


官网地址

https://www.adminer.org/  


文档地址


Docker 安装示例

docker run -d \
  -p 8080:8080 \
  -e ADMINER_DESIGN='pepa-linha' \  # 可选主题
  --name adminer \
  adminer:latest

Docker Compose(YAML 配置)

version: '3'
services:
  adminer:
    image: adminer
    restart: always
    ports:
      - 8080:8080
    environment:
      ADMINER_DESIGN: "pepa-linha"  # 可选主题
      ADMINER_PLUGINS: "tables-filter"  # 可选插件

常见错误及解决方法

  1. 连接数据库失败

    • 检查数据库服务是否运行(如 MySQL、PostgreSQL)。

    • 确保用户名、密码、主机地址正确。

    • 如果使用 Docker,确保网络配置正确(如 --link 或自定义网络)。

  2. PHP 报错(如 PDO 扩展缺失)

    • 确保 PHP 已安装对应数据库的扩展(如 pdo_mysqlpdo_pgsql)。

    • 在 Docker 中,可使用官方镜像 adminer,默认已包含常用扩展。

  3. 403 Forbidden(权限问题)

    • 检查 Web 服务器(如 Nginx/Apache)权限设置。

    • 确保 adminer.php 文件可执行(chmod +x adminer.php)。

  4. HTTPS 问题(混合内容警告)

    • 如果 Adminer 运行在 HTTPS 下,确保数据库连接也使用 SSL(如 MySQL 的 ssl=1 参数)。

  5. 插件或主题不生效

    • 检查 ADMINER_PLUGINSADMINER_DESIGN 环境变量是否正确。

    • 确保插件文件存在于 /var/www/html/plugins/(Docker 默认路径)。


总结

Adminer 是一个高效、轻量的数据库管理工具,适合替代 phpMyAdmin。通过 Docker 部署可快速搭建,遇到问题时检查网络、权限和 PHP 扩展即可解决。