Adminer - Adatbázis kezelő
Adminer telepítése és részletes használati útmutató - egyetlen PHP fájl az adatbázisok kezeléséhez, phpMyAdmin alternatíva WordPress fejlesztőknek.
This content is not available in your language yet.
Az Adminer (korábban phpMinAdmin) egy teljes funkcionalitású adatbázis-kezelő eszköz egyetlen PHP fájlban. A phpMyAdmin legnépszerűbb alternatívája, amely egyszerűbb, gyorsabb és biztonságosabb.
Adminer vs phpMyAdmin
Szekció neve “Adminer vs phpMyAdmin”| Szempont | Adminer | phpMyAdmin |
|---|---|---|
| Telepítés | 1 fájl feltöltése | Komplex telepítés |
| Méret | ~470 KB | ~13 MB+ |
| Multi-DB | Igen (8+ motor) | Csak MySQL/MariaDB |
| Biztonság | Prioritás #1 | Gyakoribb sebezhetőségek |
| Felület | Letisztult, modern | Zsúfolt |
| View szerkesztés | Egyszerű, intuitív | Bonyolult |
| Sebesség | Gyorsabb | Lassabb |
Támogatott adatbázisok
Szekció neve “Támogatott adatbázisok”| Adatbázis | Támogatás |
|---|---|
| MySQL | Natív |
| MariaDB | Natív |
| PostgreSQL | Natív |
| SQLite | Natív |
| MS SQL Server | Natív |
| Oracle | Natív |
| Elasticsearch | Natív |
| MongoDB | Natív |
Telepítés
Szekció neve “Telepítés”Egyszerű telepítés
Szekció neve “Egyszerű telepítés”- Töltsd le az Adminer-t: adminer.org
- Nevezd át (ajánlott biztonsági okokból):
adminer.php→db-manager.php - Töltsd fel a webszerveredre
- Nyisd meg böngészőben:
https://example.com/db-manager.php
Letölthető verziók
Szekció neve “Letölthető verziók”| Verzió | Leírás | Méret |
|---|---|---|
| adminer.php | Teljes verzió (minden DB) | ~470 KB |
| adminer-mysql.php | Csak MySQL/MariaDB | ~380 KB |
| adminer-en.php | Csak angol nyelv | ~400 KB |
| adminer-mysql-en.php | MySQL + angol | ~320 KB |
WordPress mellé telepítés
Szekció neve “WordPress mellé telepítés”Ha WordPress mellett használod, a legbiztonságosabb megoldás egy külön, védett mappába helyezni:
# Mappa struktúrapublic_html/├── wp-content/├── wp-admin/├── db-tools/ # Külön mappa az Adminer-nek│ ├── adminer.php│ └── .htaccess # Védelem└── wp-config.php.htaccess védelem:
AuthType BasicAuthName "Database Tools - Restricted Access"AuthUserFile /home/user/.htpasswdRequire valid-user
# Csak bizonyos IP-ről engedélyezés (opcionális)# Order Deny,Allow# Deny from all# Allow from 192.168.1.100.htpasswd generálás:
# Online generátor vagy parancssorból:htpasswd -c /home/user/.htpasswd adminHasználat részletesen
Szekció neve “Használat részletesen”Bejelentkezés
Szekció neve “Bejelentkezés”- Nyisd meg az Adminer URL-t a böngészőben
- A bejelentkezési képernyőn töltsd ki:
| Mező | Leírás | Példa |
|---|---|---|
| Rendszer | Adatbázis típusa | MySQL |
| Szerver | Adatbázis szerver címe | localhost vagy 127.0.0.1 |
| Felhasználó | DB felhasználónév | wp_user |
| Jelszó | DB jelszó | ******** |
| Adatbázis | Adatbázis neve (opcionális) | wordpress_db |
- Kattints a Belépés gombra
Adatbázis műveletek
Szekció neve “Adatbázis műveletek”Adatbázis kiválasztása
Szekció neve “Adatbázis kiválasztása”Bejelentkezés után látod az összes elérhető adatbázist. Kattints a kívánt adatbázis nevére a megnyitáshoz.
Új adatbázis létrehozása
Szekció neve “Új adatbázis létrehozása”- A bal oldali menüben kattints az Adatbázis létrehozása linkre
- Add meg az adatbázis nevét
- Válaszd ki a karakterkészletet (ajánlott:
utf8mb4_unicode_ci) - Kattints a Mentés gombra
Adatbázis törlése
Szekció neve “Adatbázis törlése”- Válaszd ki az adatbázist
- Kattints az Adatbázis eldobása linkre
- Erősítsd meg a törlést
Táblák kezelése
Szekció neve “Táblák kezelése”Táblák listázása
Szekció neve “Táblák listázása”Az adatbázis kiválasztása után látod az összes táblát:
- Tábla neve - Kattintható, megnyitja a tábla tartalmát
- Motor - InnoDB, MyISAM stb.
- Sorok - Rekordok száma
- Méret - Tábla mérete
Új tábla létrehozása
Szekció neve “Új tábla létrehozása”- Kattints a Tábla létrehozása linkre
- Add meg a tábla nevét
- Definiáld az oszlopokat:
| Beállítás | Leírás |
|---|---|
| Oszlop | Oszlop neve (pl. id, name) |
| Típus | Adattípus (INT, VARCHAR, TEXT, DATETIME stb.) |
| Hossz | Maximális hossz (VARCHAR esetén) |
| NULL | Engedélyezett-e a NULL érték |
| AI | Auto Increment (automatikus növelés) |
| Alapértelmezett | Default érték |
- Állítsd be az elsődleges kulcsot (Primary Key)
- Kattints a Mentés gombra
Példa WordPress-szerű tábla:
| Oszlop | Típus | Hossz | NULL | AI | Megjegyzés |
|---|---|---|---|---|---|
id |
BIGINT | 20 | Nem | Igen | Elsődleges kulcs |
title |
VARCHAR | 255 | Nem | - | Cím |
content |
LONGTEXT | - | Igen | - | Tartalom |
status |
VARCHAR | 20 | Nem | - | Állapot |
created_at |
DATETIME | - | Nem | - | Létrehozás dátuma |
Tábla szerkezetének módosítása
Szekció neve “Tábla szerkezetének módosítása”- Kattints a tábla nevére
- Kattints a Szerkezet módosítása linkre
- Itt tudsz:
- Új oszlopot hozzáadni
- Meglévő oszlopot módosítani
- Oszlopot törölni
- Oszlopok sorrendjét változtatni
- Kattints a Mentés gombra
Tábla átnevezése
Szekció neve “Tábla átnevezése”- Kattints a Szerkezet módosítása linkre
- Írd át a tábla nevét a felső mezőben
- Kattints a Mentés gombra
Tábla törlése
Szekció neve “Tábla törlése”- Válaszd ki a táblát
- Kattints a Tábla eldobása linkre
- Erősítsd meg
Tábla ürítése (TRUNCATE)
Szekció neve “Tábla ürítése (TRUNCATE)”- Válaszd ki a táblát
- Kattints a Tábla kiürítése linkre
- Erősítsd meg
Adatok kezelése
Szekció neve “Adatok kezelése”Adatok megtekintése
Szekció neve “Adatok megtekintése”- Kattints a tábla nevére
- Megjelenik az összes rekord táblázatos formában
- Használd a lapozást nagy táblák esetén
Adatok szűrése
Szekció neve “Adatok szűrése”A tábla megtekintésekor a Szűrés gombbal tudsz keresni:
- Válaszd ki az oszlopot
- Válaszd ki az operátort (
=,LIKE,>,<,INstb.) - Add meg az értéket
- Kattints a Szűrés gombra
Gyakori szűrési példák:
| Cél | Oszlop | Operátor | Érték |
|---|---|---|---|
| Publikált bejegyzések | post_status |
= |
publish |
| Cím tartalmazza | post_title |
LIKE |
%wordpress% |
| 2024 után létrehozott | post_date |
> |
2024-01-01 |
| Adott szerző | post_author |
= |
1 |
Adatok rendezése
Szekció neve “Adatok rendezése”Kattints az oszlop fejlécére a rendezéshez:
- Első kattintás: növekvő sorrend (ASC)
- Második kattintás: csökkenő sorrend (DESC)
Új rekord hozzáadása
Szekció neve “Új rekord hozzáadása”- Kattints az Új elem linkre
- Töltsd ki a mezőket
- Kattints a Mentés gombra
Rekord szerkesztése
Szekció neve “Rekord szerkesztése”- Kattints a rekord mellett a szerkesztés linkre
- Módosítsd a mezőket
- Kattints a Mentés gombra
Inline szerkesztés
Szekció neve “Inline szerkesztés”Az Adminer támogatja a gyors, helyben történő szerkesztést:
- Dupla kattintás a cellára
- Módosítsd az értéket
- Enter a mentéshez, Escape a megszakításhoz
Rekordok törlése
Szekció neve “Rekordok törlése”Egyetlen rekord:
- Kattints a rekord mellett a törlés linkre
- Erősítsd meg
Több rekord egyszerre:
- Jelöld be a rekordokat a checkbox-szal
- Válaszd a Törlés műveletet
- Kattints a Végrehajt gombra
SQL lekérdezések futtatása
Szekció neve “SQL lekérdezések futtatása”SQL parancs ablak
Szekció neve “SQL parancs ablak”- Kattints az SQL parancs menüpontra
- Írd be a query-t a szövegmezőbe
- Kattints a Végrehajt gombra
Gyakori WordPress SQL lekérdezések
Szekció neve “Gyakori WordPress SQL lekérdezések”Publikált bejegyzések listázása:
SELECT ID, post_title, post_date, post_authorFROM wp_postsWHERE post_type = 'post' AND post_status = 'publish'ORDER BY post_date DESCLIMIT 20;Felhasználók listázása:
SELECT u.ID, u.user_login, u.user_email, u.display_name, m.meta_value as capabilitiesFROM wp_users uLEFT JOIN wp_usermeta m ON u.ID = m.user_id AND m.meta_key = 'wp_capabilities'ORDER BY u.ID;Bejegyzések száma kategóriánként:
SELECT t.name as category, COUNT(*) as post_countFROM wp_posts pJOIN wp_term_relationships tr ON p.ID = tr.object_idJOIN wp_term_taxonomy tt ON tr.term_taxonomy_id = tt.term_taxonomy_idJOIN wp_terms t ON tt.term_id = t.term_idWHERE tt.taxonomy = 'category' AND p.post_status = 'publish'GROUP BY t.term_idORDER BY post_count DESC;Opciók keresése:
SELECT option_name, option_valueFROM wp_optionsWHERE option_name LIKE '%siteurl%' OR option_name LIKE '%home%';Revíziók törlése (óvatosan!):
DELETE FROM wp_postsWHERE post_type = 'revision';Spam kommentek törlése:
DELETE FROM wp_commentsWHERE comment_approved = 'spam';Tranziens adatok törlése:
DELETE FROM wp_optionsWHERE option_name LIKE '%_transient_%';SQL history
Szekció neve “SQL history”Az Adminer megjegyzi a korábban futtatott lekérdezéseket. A History linkre kattintva visszanézheted és újrafuttathatod őket.
Többsoros lekérdezések
Szekció neve “Többsoros lekérdezések”Több SQL utasítást is futtathatsz egyszerre, pontosvesszővel elválasztva:
-- Először lekérdezésSELECT COUNT(*) FROM wp_posts WHERE post_status = 'draft';
-- Aztán törlésDELETE FROM wp_posts WHERE post_status = 'draft' AND post_date < '2023-01-01';Import és Export
Szekció neve “Import és Export”Adatbázis exportálása
Szekció neve “Adatbázis exportálása”- Válaszd ki az adatbázist
- Kattints az Exportálás linkre
- Állítsd be az opciókat:
| Beállítás | Ajánlott érték |
|---|---|
| Kimenet | mentés (fájlba) |
| Formátum | SQL |
| Adatbázis | CREATE DATABASE + USE |
| Táblák | DROP + CREATE |
| Adatok | INSERT |
- Válaszd ki az exportálandó táblákat (vagy az összeset)
- Kattints az Exportálás gombra
Csak bizonyos táblák exportálása
Szekció neve “Csak bizonyos táblák exportálása”- Jelöld be csak a kívánt táblákat
- Futtasd az exportot
Tábla exportálása CSV formátumban
Szekció neve “Tábla exportálása CSV formátumban”- Nyisd meg a táblát
- Kattints az Exportálás linkre
- Válaszd a CSV formátumot
- Kattints az Exportálás gombra
Adatbázis importálása
Szekció neve “Adatbázis importálása”- Kattints az Importálás linkre
- Válaszd ki az SQL fájlt
- Kattints a Végrehajt gombra
CSV importálása
Szekció neve “CSV importálása”- Válaszd ki a céltáblát
- Kattints az Importálás linkre
- Válaszd ki a CSV fájlt
- Állítsd be az oszlop megfeleltetéseket
- Kattints a Végrehajt gombra
Indexek kezelése
Szekció neve “Indexek kezelése”Indexek megtekintése
Szekció neve “Indexek megtekintése”- Nyisd meg a táblát
- Kattints a Szerkezet módosítása linkre
- Az indexek a tábla alatt láthatók
Új index létrehozása
Szekció neve “Új index létrehozása”- A Szerkezet módosítása oldalon
- Az Indexek szekcióban kattints az Index hozzáadása linkre
- Válaszd ki:
- Típus: INDEX, UNIQUE, PRIMARY, FULLTEXT
- Oszlopok: melyik oszlop(ok)ra
- Kattints a Mentés gombra
Index típusok
Szekció neve “Index típusok”| Típus | Használat |
|---|---|
| PRIMARY | Elsődleges kulcs, egyedi, nem NULL |
| UNIQUE | Egyedi értékek, de lehet NULL |
| INDEX | Gyorsítja a keresést |
| FULLTEXT | Szöveges kereséshez (TEXT oszlopokra) |
View-k kezelése
Szekció neve “View-k kezelése”View létrehozása
Szekció neve “View létrehozása”- Kattints a View létrehozása linkre
- Add meg a view nevét
- Írd be a SELECT lekérdezést:
SELECT p.ID, p.post_title, u.display_name as authorFROM wp_posts pJOIN wp_users u ON p.post_author = u.IDWHERE p.post_status = 'publish'- Kattints a Mentés gombra
View szerkesztése
Szekció neve “View szerkesztése”- Kattints a view nevére
- Kattints a Szerkezet módosítása linkre
- Módosítsd a lekérdezést
- Mentsd el
Stored Procedures és Triggers
Szekció neve “Stored Procedures és Triggers”Tárolt eljárás létrehozása
Szekció neve “Tárolt eljárás létrehozása”- Kattints az Eljárás létrehozása linkre
- Add meg a nevet és a paramétereket
- Írd be az SQL kódot:
CREATE PROCEDURE GetPublishedPosts(IN limit_count INT)BEGIN SELECT ID, post_title, post_date FROM wp_posts WHERE post_status = 'publish' ORDER BY post_date DESC LIMIT limit_count;ENDTrigger létrehozása
Szekció neve “Trigger létrehozása”- Válaszd ki a táblát
- Kattints a Trigger létrehozása linkre
- Állítsd be:
- Név: trigger neve
- Időzítés: BEFORE vagy AFTER
- Esemény: INSERT, UPDATE, DELETE
- Írd be a trigger kódját
Felhasználók és jogosultságok
Szekció neve “Felhasználók és jogosultságok”Felhasználók listázása
Szekció neve “Felhasználók listázása”- Kattints a Jogosultságok linkre
- Látod az összes adatbázis felhasználót
Új felhasználó létrehozása
Szekció neve “Új felhasználó létrehozása”- Kattints a Felhasználó létrehozása linkre
- Add meg:
- Felhasználónév
- Host (
localhostvagy%) - Jelszó
- Állítsd be a jogosultságokat
- Mentsd el
Jogosultságok beállítása
Szekció neve “Jogosultságok beállítása”Elérhető jogosultságok:
| Jogosultság | Leírás |
|---|---|
| SELECT | Adatok olvasása |
| INSERT | Új rekordok |
| UPDATE | Módosítás |
| DELETE | Törlés |
| CREATE | Táblák létrehozása |
| DROP | Táblák törlése |
| ALL PRIVILEGES | Minden jog |
Témák és testreszabás
Szekció neve “Témák és testreszabás”CSS téma használata
Szekció neve “CSS téma használata”- Töltsd le a kívánt témát
- Nevezd el
adminer.css-nek - Tedd az
adminer.phpmellé
Népszerű témák
Szekció neve “Népszerű témák”| Téma | Leírás |
|---|---|
| Hydra Dark | Sötét téma |
| Material Design | Material stílus |
| Dracula | Dracula színséma |
| One Dark | Atom One Dark |
Hivatalos témák
Szekció neve “Hivatalos témák”Az Adminer hivatalos témái: adminer.org/designs
Pluginek
Szekció neve “Pluginek”Plugin rendszer
Szekció neve “Plugin rendszer”Az Adminer bővíthető pluginekkel. Használathoz készíts egy wrapper fájlt:
<?phpfunction adminer_object() { // Pluginek betöltése include_once "./plugins/plugin.php";
// Login szerverek plugin include_once "./plugins/login-servers.php";
return new AdminerPlugin([ new AdminerLoginServers([ 'Localhost' => [ 'server' => 'localhost', 'driver' => 'mysql' ], 'Production' => [ 'server' => 'db.example.com', 'driver' => 'mysql' ], ]) ]);}
include "./adminer.php";Hasznos pluginek
Szekció neve “Hasznos pluginek”| Plugin | Funkció |
|---|---|
| login-servers | Előre definiált szerverek |
| designs | Téma választó |
| dump-alter | ALTER utasítások exportálása |
| edit-calendar | Dátum választó |
| enum-option | ENUM értékek legördülő listában |
| foreign-system | Külső kulcs megjelenítés |
| tables-filter | Tábla szűrő |
Biztonsági tippek
Szekció neve “Biztonsági tippek”Ajánlott védelmi intézkedések
Szekció neve “Ajánlott védelmi intézkedések”-
Használj nehezen kitalálható fájlnevet
❌ adminer.php✅ db-xyz123-manager.php -
Tedd védett mappába
/db-tools/adminer.php + .htaccess védelem -
HTTP Basic Authentication
AuthType BasicAuthName "Restricted"AuthUserFile /path/.htpasswdRequire valid-user -
IP korlátozás
<Files "adminer.php">Order Deny,AllowDeny from allAllow from 192.168.1.100</Files> -
HTTPS kötelező használata
-
Töröld, ha nem használod
- Ne hagyd a szerveren, ha befejeztél
-
Erős adatbázis jelszavak
- Legalább 16 karakter
- Vegyes karakterek
Automatikus törlés
Szekció neve “Automatikus törlés”Készíts egy cron job-ot, ami törli az Adminer-t egy idő után:
# 1 óra múlva törlésecho "rm /var/www/html/db-tools/adminer.php" | at now + 1 hourHibakeresés
Szekció neve “Hibakeresés”Gyakori hibák
Szekció neve “Gyakori hibák”“Login without password is forbidden”
- Az Adminer nem enged üres jelszót
- Megoldás: állíts be jelszót az adatbázis usernek
“Access denied for user”
- Hibás felhasználónév vagy jelszó
- Ellenőrizd a
wp-config.phpfájlt
“Connection refused”
- A szerver nem érhető el
- Ellenőrizd a host nevet (
localhostvs127.0.0.1)
“Maximum execution time exceeded”
- Nagy művelet időtúllépés
- Növeld a
max_execution_timeértéket
Karakter kódolási problémák
- Használj
utf8mb4karakterkészletet - Ellenőrizd az export/import beállításokat
Kapcsolódó eszközök
Szekció neve “Kapcsolódó eszközök”- Query Monitor - WordPress debug
- WP-CLI - Parancssoros WordPress kezelés
- Debug Bar - Debug információk