See õpetus näitab, kuidas paigaldada phpMyAdmin koos Apache, MariaDB ja PHP7.4 (LAMP Stack) Ubuntu 20.04 LTS-i. phpMyAdmin on tasuta ja avatud lähtekoodiga veebipõhine andmebaasihaldustööriist, mis on kirjutatud programmeerimiskeeles PHP. See pakub kasutajatele MySQL-i või MariaDB andmebaasi haldamiseks graafilist veebiliidest.
phpMyAdmin võimaldab administraatoritel:
1. Laadige alla ja paigaldage phpMyAdmin versioonile Ubuntu 20.04
phpMyAdmin sisaldub Ubuntu 20.04 tarkvarahoidlas, et saaksime selle hõlpsalt paigaldada alloleva käsuga:
Ülaltoodud käsk paigaldab kõik vajaliku, sealhulgas PHP7 laiendused. Paigaldamise ajal palub see teil valida konfigureeritava veebiserveri. Apache2 valimiseks vajutage tühikuklahvi. (Tärn näitab, et üksus on valitud). Seejärel vajutage oma valiku kinnitamiseks tabeldusklahvi (tab) ja sisestusklahvi.
Järgmisel ekraanil valige Yes, et konfigureerida andmebaasi phpMyAdmini jaoks koos dbconfig-common.
Seejärel määrake MariaDB/MySQL-is phpmyadmini kasutaja parool:
Kui see samm on tehtud, luuakse uus andmebaas nimega phpmyadmin ja andmebaasi kasutajal phpmyadmin on selle andmebaasi haldamiseks vajalikud õigused. Kui olete uudishimulik, saate sisse logida MariaDB ja kontrollida, millised õigused on phpmyadmini kasutajale antud.
MariaDB serverisse sisselogimiseks saate kasutada järgmist käsku:
Seejärel kontrollige phpmyadmini kasutaja õigusi:
Väljund:
Nagu näete, on kasutajal phpmyadmin kõik andmebaasi phpmyadmini õigused. Nüüd saate väljuda, käivitades:
Nüüd käivitage järgmine käsk, et kontrollida, kas fail /etc/apache2/conf-enabled/phpmyadmin.conf on olemas.
Kui paigaldusprotsessis pole viga, peaksite nägema järgmist käsuväljundit:
Kui seda faili teie serveris ei ole, on tõenäoline, et te ei valinud phpMyAdmini häälestusviisardis Apache veebiserverit. Saate selle parandada järgmiste käskudega:
2. Juurdepääs phpMyAdminile alamkataloogist
phpMyAdmini paigaldamisel asetatakse konfiguratsioonifail aadressile /etc/apache2/conf-enabled/phpmyadmin.conf, mis võimaldab meil pääseda phpMyAdminile alamkataloogi kaudu. Kui olete samasse Ubuntu 20.04 serverisse paigaldanud muid veebirakendusi, näiteks WordPress, siis lisage brauseri aadressiribale oma domeeninime järele lihtsalt /phpmyadmin.
Kui teie kohalikku Ubuntu arvutisse on paigaldatud phpMyAdmin, pääsete phpMyAdmini veebiliidesele juurde, sisestades brauseri aadressiribale järgmise teksti:
Kui ühenduse loomisest keeldutakse või seda ei õnnestu luua, võib HTTP päringuid takistada tulemüür. Kui kasutate iptablesi tulemüüri, peate TCP pordi 80 ja 443 avamiseks käivitama järgmised käsud:
Kui kasutate UFW tulemüüri, käivitage see käsk TCP pordi 80 ja 443 avamiseks.
Nüüd saate phpMyAdmini sisselogimiseks kasutada MariaDB/MySQL-i kasutajanime ja parooli.
3. Juurdepääs phpMyAdminile alamdomeenilt
Kui teie Ubuntu 20.04 serveril ei ole teist Apache virtuaalset hosti, võiksite phpMyAdmini veebiliidesele juurdepääsuks kasutada alamdomeeni. Nii saate lubada HTTPS liikluse krüpteerimiseks.
Esiteks peame phpMyAdmini jaoks looma Apache virtuaalse hosti. Mallina saab kasutada olemasolevat phpMyAdmini seadistusjuppi. Kopeerime selle uude faili:
Seejärel redigeerige uut faili käsurea tekstiredaktoriga, näiteks Nano:
Sellel failil puuduvad sildid <VirtualHost>, seega peame selle faili algusesse lisama järgmised read. Asendage pma.example.com oma eelistatud phpMyAdmini alamdomeeniga. Ärge unustage luua selle alamdomeeni jaoks ka DNS-i kirjet.
Salvestage ja sulgege fail. (Faili salvestamiseks Nano tekstiredaktoris vajutage klahvikombinatsiooni Ctrl+O, seejärel vajutage kinnitamiseks sisestusklahvi. Väljumiseks vajutage klahvikombinatsiooni Ctrl+X.) Seejärel lubage see virtuaalne host:
Selle muudatuse jõustumiseks laadige uuesti Apache veebiserver:
Nüüd peaksite saama juurdepääsu phpMyAdmini veebiliidesele:
Enne kasutaja mandaatide sisestamist sisselogimisvormile lubage HTTPS.
4. Luba HTTPS phpMyAdminis Apache-ga
phpMyadmini veebiliidese turvalisuse tagamiseks saame paigaldada tasuta Let’s Encrypt TLS sertifikaadi. Käivitage järgmine käsk, et paigaldada Let’s Encrypt klient (certbot) Ubuntu 20.04 tarkvarahoidlast:
Python3-certbot-apache on Certboti Apache'i pistikprogramm. Nüüd käivitage TLS sertifikaadi hankimiseks ja paigaldamiseks järgmine käsk:
Kus:
–apache2: kasutage Apache autentimist ja paigaldajat
–agree-tos: nõustuge Let’s Encrypt teenusetingimustega
–redirect: jõustage HTTPS, lisades 301 ümbersuunamise.
–staple-ocsp: lubage OCSP klammerdamine.
–e-mail: e-posti aadress, mida kasutatakse registreerimiseks ja kontakti taastamiseks.
-d järgneb domeeninimede loend, mis on eraldatud komaga. Saate lisada kuni 100 domeeninime.
Teilt küsitakse, kas soovite EFF-lt (Electronic Frontier Foundation) e-kirju saada. Pärast Y või N valimist hangitakse ja konfigureeritakse teie jaoks automaatselt teie TLS sertifikaat, millele viitab allolev teade.
5. phpMyAdmini sisselogimisvea tõrkeotsing
Kui proovite phpMyAdmini sisse logida MariaDB juurkontoga, võite näha järgmist viga:
või
Kui logite sisse kasutajaga phpmyadmin, siis ülaltoodud viga ei näe. Kasutajat phpmyadmin saab aga kasutada ainult phpmyadmini andmebaasi haldamiseks. Vea põhjuseks on see, et vaikimisi autentitakse MariaDB juurkasutaja pistikprogrammi unix_socket kaudu, selle asemel, et kasutada pistikprogrammi mysql_native_password. Selle probleemi lahendamiseks saame luua teise administraatori kasutaja ja anda kõik õigused uuele administraator kasutajale.
Logige käsurealt sisse MariaDB serverisse:
Looge parooliga administraator:
Andke kõikidele andmebaasidele kõik õigused:
Lõpetage ja sulgege:
Nüüd saate phpMyAmini sisse logida administraatori kontoga ja hallata kõiki andmebaase.
phpMyAdmin võimaldab administraatoritel:
- sirvida andmebaase ja tabeleid;
- andmebaaside loomine, kopeerimine, ümbernimetamine, muutmine ja liigutamine;
- luua, kopeerida, ümber nimetada, muuta ja liigutada tabeleid;
- teostada hooldust;
- väljade lisamine, muutmine ja liigutamine;
- käivitada mis tahes SQL lause, isegi mitu päringut;
- luua, muuta indekseid;
- tekstifailide laadimine tabelitesse;
- luua ja lugeda tabelite või andmebaaside dumpe;
- eksportida andmeid SQL, CSV, XML, Word, Excel, PDF ja LaTeX vormingusse;
- hallata mitut serverit;
- hallata MySQL-i kasutajaid ja õigusi;
- kontrollige serveri sätteid ja käitusaja teavet konfiguratsioonivihjetega;
- kontrollige MyISAM-i tabelites viidete terviklikkust;
- luua keerulisi päringuid näitepõhise päringu (QBE) abil automaatselt
- luua andmebaasi paigutuse PDF graafikat;
- otsida globaalselt andmebaasist või selle alamhulgast;
- teisendada salvestatud andmed mis tahes vormingusse, kasutades eelnevalt määratletud funktsioonide komplekti, näiteks kuvades BLOB-andmeid pildi või allalaadimislingina;
- hallata InnoDB tabeleid ja võõrvõtmeid;
1. Laadige alla ja paigaldage phpMyAdmin versioonile Ubuntu 20.04
phpMyAdmin sisaldub Ubuntu 20.04 tarkvarahoidlas, et saaksime selle hõlpsalt paigaldada alloleva käsuga:
Kood:
sudo apt update
Kood:
sudo apt install phpmyadmin
Järgmisel ekraanil valige Yes, et konfigureerida andmebaasi phpMyAdmini jaoks koos dbconfig-common.
Seejärel määrake MariaDB/MySQL-is phpmyadmini kasutaja parool:
Kui see samm on tehtud, luuakse uus andmebaas nimega phpmyadmin ja andmebaasi kasutajal phpmyadmin on selle andmebaasi haldamiseks vajalikud õigused. Kui olete uudishimulik, saate sisse logida MariaDB ja kontrollida, millised õigused on phpmyadmini kasutajale antud.
MariaDB serverisse sisselogimiseks saate kasutada järgmist käsku:
Kood:
sudo mysql -u root
Kood:
show grants for phpmyadmin@localhost;
Nagu näete, on kasutajal phpmyadmin kõik andmebaasi phpmyadmini õigused. Nüüd saate väljuda, käivitades:
Kood:
exit;
Kood:
file /etc/apache2/conf-enabled/phpmyadmin.conf
HTML kood:
/etc/apache2/conf-enabled/phpmyadmin.conf: symbolic link to ../conf-available/phpmyadmin.conf
Kood:
sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
Kood:
sudo a2enconf phpmyadmin
Kood:
sudo systemctl reload apache2
phpMyAdmini paigaldamisel asetatakse konfiguratsioonifail aadressile /etc/apache2/conf-enabled/phpmyadmin.conf, mis võimaldab meil pääseda phpMyAdminile alamkataloogi kaudu. Kui olete samasse Ubuntu 20.04 serverisse paigaldanud muid veebirakendusi, näiteks WordPress, siis lisage brauseri aadressiribale oma domeeninime järele lihtsalt /phpmyadmin.
HTML kood:
example.com/phpmyadmin
Kui teie kohalikku Ubuntu arvutisse on paigaldatud phpMyAdmin, pääsete phpMyAdmini veebiliidesele juurde, sisestades brauseri aadressiribale järgmise teksti:
HTML kood:
localhost/phpmyadmin
Kood:
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
Kood:
sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT
Kood:
sudo ufw allow 80,443/tcp
3. Juurdepääs phpMyAdminile alamdomeenilt
Kui teie Ubuntu 20.04 serveril ei ole teist Apache virtuaalset hosti, võiksite phpMyAdmini veebiliidesele juurdepääsuks kasutada alamdomeeni. Nii saate lubada HTTPS liikluse krüpteerimiseks.
Esiteks peame phpMyAdmini jaoks looma Apache virtuaalse hosti. Mallina saab kasutada olemasolevat phpMyAdmini seadistusjuppi. Kopeerime selle uude faili:
Kood:
sudo cp /etc/apache2/conf-enabled/phpmyadmin.conf /etc/apache2/sites-available/phpmyadmin.conf
Kood:
sudo nano /etc/apache2/sites-available/phpmyadmin.conf
HTML kood:
<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 Märgendi <VirtualHost> sulgemiseks lisage selle faili lõppu järgmine rida. </VirtualHost>
Salvestage ja sulgege fail. (Faili salvestamiseks Nano tekstiredaktoris vajutage klahvikombinatsiooni Ctrl+O, seejärel vajutage kinnitamiseks sisestusklahvi. Väljumiseks vajutage klahvikombinatsiooni Ctrl+X.) Seejärel lubage see virtuaalne host:
Kood:
sudo a2ensite phpmyadmin.conf
Kood:
sudo systemctl reload apache2
HTML kood:
pma.example.com
Enne kasutaja mandaatide sisestamist sisselogimisvormile lubage HTTPS.
4. Luba HTTPS phpMyAdminis Apache-ga
phpMyadmini veebiliidese turvalisuse tagamiseks saame paigaldada tasuta Let’s Encrypt TLS sertifikaadi. Käivitage järgmine käsk, et paigaldada Let’s Encrypt klient (certbot) Ubuntu 20.04 tarkvarahoidlast:
Kood:
sudo apt install certbot python3-certbot-apache
Kood:
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --must-staple -d pma.example.com --email you@example.com
–apache2: kasutage Apache autentimist ja paigaldajat
–agree-tos: nõustuge Let’s Encrypt teenusetingimustega
–redirect: jõustage HTTPS, lisades 301 ümbersuunamise.
–staple-ocsp: lubage OCSP klammerdamine.
–e-mail: e-posti aadress, mida kasutatakse registreerimiseks ja kontakti taastamiseks.
-d järgneb domeeninimede loend, mis on eraldatud komaga. Saate lisada kuni 100 domeeninime.
Teilt küsitakse, kas soovite EFF-lt (Electronic Frontier Foundation) e-kirju saada. Pärast Y või N valimist hangitakse ja konfigureeritakse teie jaoks automaatselt teie TLS sertifikaat, millele viitab allolev teade.
5. phpMyAdmini sisselogimisvea tõrkeotsing
Kui proovite phpMyAdmini sisse logida MariaDB juurkontoga, võite näha järgmist viga:
HTML kood:
#1698 - Access denied for user 'root '@'localhost'
HTML kood:
mysqli_real_connect(): (HY000/1698): Access denied for user 'root '@'localhost'
Logige käsurealt sisse MariaDB serverisse:
Kood:
sudo mysql -u root
Kood:
create user admin@localhost identified by 'your-preferred-password';
Kood:
grant all privileges on *.* to admin@localhost with grant option;
Kood:
flush privileges;
Kood:
exit;