Ako nainštalovať phpMyAdmin s Apache (LAMP) na Ubuntu 20.04


Tento tutoriál vám ukáže, ako nainštalovať phpMyAdmin s Apache, MariaDB, PHP7.4 (zásobník LAMP) na Ubuntu 20.04 LTS. phpMyAdmin je bezplatný a open source webový nástroj na správu databáz napísaný v PHP. Poskytuje používateľom grafické webové rozhranie na správu databázy MySQL alebo MariaDB.

phpMyAdmin umožňuje administrátorom:

  • prehliadať databázy a tabuľky;
  • vytvárať, kopírovať, premenovávať, meniť a rušiť databázy;
  • vytvárať, kopírovať, premenovávať, meniť a rušiť tabuľky;
  • vykonávať údržbu stola;
  • pridať, upraviť a vypustiť polia;
  • vykonať akýkoľvek príkaz SQL, dokonca aj viacero dotazov;
  • vytvárať, meniť a rušiť indexy;
  • načítať textové súbory do tabuliek;
  • vytvárať a čítať výpisy tabuliek alebo databáz;
  • export dát do formátov SQL, CSV, XML, Word, Excel, PDF a LaTeX;
  • spravovať viacero serverov;
  • spravovať používateľov a privilégiá MySQL;
  • skontrolujte nastavenia servera a informácie o čase spustenia pomocou konfiguračných rád;
  • kontrola referenčnej integrity v tabuľkách MyISAM;
  • vytvárať komplexné dotazy pomocou Query-by-example (QBE), automaticky
  • pripojenie požadovaných stolov;
  • vytvoriť PDF grafiku rozloženia databázy;
  • globálne vyhľadávanie v databáze alebo jej podmnožine;
  • transformovať uložené údaje do ľubovoľného formátu pomocou súboru preddefinovaných funkcií, ako je napríklad zobrazenie údajov BLOB ako obrázku alebo odkazu na stiahnutie;
  • spravovať tabuľky InnoDB a cudzie kľúče;

Predpoklady

Ak chcete postupovať podľa tohto návodu, potrebujete operačný systém Ubuntu 20.04 spustený na vašom lokálnom počítači alebo na vzdialenom serveri.

Ak hľadáte VPS (virtuálny súkromný server), môžete si vytvoriť účet na Vultr prostredníctvom môjho odkazu na sprostredkovanie a získať bezplatný kredit 50 USD (len pre nových používateľov). A ak potrebujete nastaviť phpMyAdmin s názvom domény, odporúčam kúpiť názvy domén od NameCheap, pretože cena je nízka a poskytujú ochranu súkromia whois zadarmo.

Predpokladá sa, že ste už nainštalovali zásobník LAMP na Ubuntu 20.04. Ak nie, pozrite si nasledujúci návod.

  • Ako nainštalovať zásobník LAMP (Apache, MariaDB, PHP7.4) na Ubuntu 20.04 LTS

S tým prekážkou, začnime s inštaláciou phpMyAdmin.

Krok 1: Stiahnite si a nainštalujte phpMyAdmin na Ubuntu 20.04

phpMyAdmin je súčasťou softvérového úložiska Ubuntu 20.04. takže ho môžeme ľahko nainštalovať pomocou príkazu nižšie.

sudo apt update
sudo apt install phpmyadmin

Vyššie uvedený príkaz nainštaluje všetky potrebné závislosti vrátane rozšírení PHP7. Počas inštalácie sa zobrazí výzva na výber webového servera, ktorý chcete nakonfigurovať. Stlačte medzerník a vyberte apache2. (Hviezdička označuje, že položka je vybratá). Potom stlačením klávesu Tab a Enter potvrďte svoj výber.

Na ďalšej obrazovke vyberte Áno na konfiguráciu databázy pre phpMyAdmin pomocou dbconfig-common.

Potom nastavte heslo pre používateľa phpmyadmin v MariaDB/MySQL.

Po vykonaní tohto kroku sa vytvorí nová databáza s názvom phpmyadmin a používateľ databázy phpmyadmin má potrebné oprávnenia na správu tejto databázy. Ak ste zvedaví ako ja, môžete sa prihlásiť do MariaDB a skontrolovať, aké privilégiá má používateľ phpmyadmin udelené.

Na prihlásenie na server MariaDB môžete použiť nasledujúci príkaz.

sudo mysql -u root

Potom skontrolujte oprávnenia používateľa phpmyadmin.

show grants for phpmyadmin@localhost;

Výkon :

Ako môžete vidieť, používateľ phpmyadmin má všetky privilégiá k databáze phpmyadmin. Teraz môžete skončiť vykonaním:

exit;

Teraz spustite nasledujúci príkaz a skontrolujte, či súbor /etc/apache2/conf-enabled/phpmyadmin.conf existuje.

file /etc/apache2/conf-enabled/phpmyadmin.conf

Ak sa v procese inštalácie nevyskytne žiadna chyba, mali by ste vidieť nasledujúci výstup príkazu.

/etc/apache2/conf-enabled/phpmyadmin.conf: symbolic link to ../conf-available/phpmyadmin.conf

Ak tento súbor na vašom serveri neexistuje, je pravdepodobné, že ste v sprievodcovi nastavením phpMyAdmin nevybrali webový server Apache. Môžete to opraviť pomocou nasledujúcich príkazov.

sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf

sudo a2enconf phpmyadmin

sudo systemctl reload apache2

Krok 2: Prístup k phpMyAdmin z podadresára

Pri inštalácii phpMyAdmin je konfiguračný súbor umiestnený na /etc/apache2/conf-enabled/phpmyadmin.conf, ktorý nám umožňuje prístup k phpMyAdmin cez podadresár. Ak ste na ten istý server Ubuntu 20.04 nainštalovali ďalšie webové aplikácie, ako je WordPress, jednoducho pridajte za názov domény do panela s adresou prehliadača /phpmyadmin.

example.com/phpmyadmin

Ak je phpMyAdmin nainštalovaný na vašom lokálnom počítači Ubuntu, potom môžete získať prístup k webovému rozhraniu phpMyAdmin zadaním nasledujúceho textu do panela s adresou prehliadača.

localhost/phpmyadmin

Ak je pripojenie odmietnuté alebo sa nepodarilo dokončiť, môže existovať brána firewall, ktorá zabraňuje požiadavkám HTTP. Ak používate bránu firewall iptables, na otvorenie portu TCP 80 a 443 musíte spustiť nasledujúce príkazy.

sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT

Ak používate bránu firewall UFW, spustite tento príkaz a otvorte port TCP 80 a 443.

sudo ufw allow 80,443/tcp

Teraz môžete na prihlásenie do phpMyAdmin použiť používateľské meno a heslo MariaDB/MySQL. Ak sa nemôžete prihlásiť ako root, prejdite na krok 5 a vyriešte tento problém.

Krok 3: Prístup k phpMyAdmin zo subdomény

Ak váš server Ubuntu 20.04 nemá iného virtuálneho hostiteľa Apache, možno budete chcieť použiť subdoménu na prístup k webovému rozhraniu phpMyAdmin. Týmto spôsobom môžete povoliť HTTPS na šifrovanie prenosu.

Najprv musíme vytvoriť virtuálneho hostiteľa Apache pre phpMyAdmin. Existujúci konfiguračný útržok phpMyAdmin možno použiť ako šablónu. Skopírujeme to do nového súboru.

sudo cp /etc/apache2/conf-enabled/phpmyadmin.conf /etc/apache2/sites-available/phpmyadmin.conf

Potom upravte nový súbor pomocou textového editora príkazového riadka, ako je napríklad Nano.

sudo nano /etc/apache2/sites-available/phpmyadmin.conf

Tomuto súboru chýbajú značky , takže na začiatok tohto súboru musíme pridať nasledujúce riadky. Nahraďte pma.example.com vašou preferovanou subdoménou pre phpMyAdmin. Nezabudnite vytvoriť DNS A záznam pre túto subdoménu.

<VirtualHost *:80>
    ServerName pma.example.com
    DocumentRoot /usr/share/phpmyadmin

    ErrorLog ${APACHE_LOG_DIR}/pma.error.log
    CustomLog ${APACHE_LOG_DIR}/pma.access.log combined

Pridajte nasledujúci riadok na koniec tohto súboru, aby ste zatvorili značku .

</VirtualHost>

Uložte a zatvorte súbor. (Ak chcete uložiť súbor v textovom editore Nano, stlačte Ctrl+O, potom potvrďte stlačením klávesu Enter. Ak chcete ukončiť, stlačte Ctrl+X.) Potom povoľte tohto virtuálneho hostiteľa.

sudo a2ensite phpmyadmin.conf

Znova načítajte webový server Apache, aby sa táto zmena prejavila.

sudo systemctl reload apache2

Teraz by ste mali mať prístup k webovému rozhraniu phpMyAdmin cez

pma.example.com

Pred zadaním prihlasovacích údajov používateľa do prihlasovacieho formulára povoľme HTTPS.

Krok 4: Povoľte HTTPS na phpMyAdmin s Apache

Pre zabezpečenie webového rozhrania phpMyadmin môžeme nainštalovať bezplatný certifikát Let’s Encrypt TLS. Spustite nasledujúci príkaz a nainštalujte klienta Let’s Encrypt (certbot) zo softvérového úložiska Ubuntu 20.04.

sudo apt install certbot python3-certbot-apache

Python3-certbot-apache je doplnok Apache pre Certbot. Teraz spustite nasledujúci príkaz na získanie a inštaláciu certifikátu TLS.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --must-staple -d pma.example.com --email [email 

Kde :

  • -apache: Použite autentifikátor a inštalačný program Apache
  • -agree-tos: Súhlaste so zmluvnými podmienkami Let's Encrypt
  • -presmerovanie: Vynútite HTTPS pridaním trvalého presmerovania 301.
  • -hsts: Pridajte hlavičku Strict-Transport-Security do každej odpovede HTTP.
  • -staple-ocsp: Povolí zošívanie OCSP.
  • -must-staple: Pridá do certifikátu rozšírenie OCSP Must Staple.
  • Za príznakom -d nasleduje zoznam názvov domén oddelených čiarkou. Môžete pridať až 100 názvov domén.
  • -e-mail: E-mail používaný na registráciu a kontakt na obnovenie.

Zobrazí sa otázka, či chcete dostávať e-maily od EFF (Electronic Frontier Foundation). Po výbere Y alebo N sa váš certifikát TLS automaticky získa a nakonfiguruje za vás, čo je uvedené v správe nižšie.

Krok 5: Riešenie problémov s chybou prihlásenia phpMyAdmin

Ak sa pokúsite prihlásiť do phpMyAdmin pomocou root účtu MariaDB, môže sa vám zobraziť nasledujúca chyba.

#1698 - Access denied for user 'root '@'localhost'

alebo

mysqli_real_connect(): (HY000/1698): Access denied for user 'root '@'localhost'

Ak sa prihlásite pomocou používateľa phpmyadmin, vyššie uvedená chyba sa vám nezobrazí. Používateľa phpmyadmin však možno použiť iba na správu databázy phpmyadmin. Príčinou chyby je, že používateľ root MariDB je štandardne overený prostredníctvom zásuvného modulu unix_socket namiesto použitia zásuvného modulu mysql_native_password. Na vyriešenie tohto problému môžeme vytvoriť ďalšieho administrátora a udeliť mu všetky privilégiá.

Prihláste sa na server MariaDB z príkazového riadku.

sudo mysql -u root

Vytvorte administrátora s overením hesla.

create user admin@localhost identified by 'your-preferred-password';

Udeľte všetky privilégiá pre všetky databázy.

grant all privileges on *.* to admin@localhost with grant option;

Vyprázdniť oprávnenia a ukončiť;

flush privileges;

exit;

Teraz sa môžete prihlásiť do phpMyAmin pomocou účtu admin a spravovať všetky databázy.

Zabaliť sa

Dúfam, že vám tento návod pomohol nainštalovať phpMyAdmin s LAMP na Ubuntu 20.04. Ako vždy, ak ste považovali tento príspevok za užitočný, prihláste sa na odber nášho bezplatného bulletinu a získajte ďalšie tipy a triky. Opatruj sa 🙂

Súvisiace články