Scripts2026年5月11日·1 分钟阅读

Adminer — Full-Featured Database Management in a Single PHP File

Adminer is a lightweight, single-file PHP database management tool that supports MySQL, PostgreSQL, SQLite, MS SQL, Oracle, and MongoDB. It provides a clean web UI for browsing tables, running queries, managing users, importing and exporting data, all from one deployable PHP file under 500 KB.

Introduction

Adminer is a minimalist database management tool distributed as a single PHP file. It replaces heavier tools like phpMyAdmin with a faster, more secure, and more portable alternative that supports multiple database engines out of the box. You deploy it by dropping one file into a web server directory.

What Adminer Does

  • Provides a web-based UI for MySQL, PostgreSQL, SQLite, MS SQL, Oracle, and MongoDB
  • Lets you browse, search, insert, update, and delete rows through a clean interface
  • Runs SQL queries with syntax highlighting and result export
  • Manages database structure: tables, columns, indexes, foreign keys, and views
  • Imports and exports data in SQL, CSV, TSV, and compressed formats

Architecture Overview

Adminer is a single PHP file that handles authentication, connection management, schema introspection, and query execution. It uses PDO and native database extensions to communicate with different database engines. The UI is server-rendered HTML with minimal JavaScript, keeping the footprint tiny. Plugins and themes extend functionality through a simple PHP hook system, and custom CSS themes change the look without modifying core code.

Self-Hosting & Configuration

  • Deploy by copying one PHP file to any web server with PHP 5.6+ or PHP 8
  • Run in Docker with the official adminer image: docker run -p 8080:8080 adminer
  • Restrict access via web server authentication or IP whitelisting for production use
  • Install plugins for features like login without password field, export to XML, or JSON editor
  • Apply community themes for dark mode or branded appearances

Key Features

  • Entire application is a single PHP file under 500 KB
  • Supports six database engines without separate drivers or extensions
  • Plugin architecture for custom login pages, editors, and export formats
  • Built-in security features: CSRF protection, rate limiting, and brute-force login prevention
  • Available as a Docker image with multi-architecture support

Comparison with Similar Tools

  • phpMyAdmin — MySQL only, much larger codebase; Adminer supports multiple databases in one file
  • DBeaver — Desktop Java application; Adminer is a web-based single-file solution
  • pgAdmin — PostgreSQL specific; Adminer covers multiple database engines
  • Beekeeper Studio — Desktop Electron app; Adminer requires only a PHP runtime
  • CloudBeaver — Web-based and feature-rich; Adminer is far lighter and simpler to deploy

FAQ

Q: Is Adminer secure enough for production use? A: Adminer includes CSRF protection, rate limiting, and login brute-force prevention. For production, always add web server authentication and HTTPS.

Q: Can Adminer connect to remote databases? A: Yes. Enter the remote host and port on the login screen. Ensure network connectivity and firewall rules allow the connection.

Q: How do I add themes to Adminer? A: Download a CSS theme file and compile it with adminer using the provided build script, or use the adminer-custom Docker variant that supports theme mounting.

Q: Does Adminer support stored procedures and triggers? A: Yes. Adminer lets you create, edit, and execute stored procedures, functions, triggers, and events for supported database engines.

Sources

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产