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, nii et saame selle hõlpsalt installida järgmise käsuga:
sudo apt update
sudo apt install phpmyadmin
See loob ka uue andmebaasi kasutaja nimega phpmyadmin. Andke sellele kasutajale parool.
Järgmisena palub see teil valida konfigureeritava veebiserveri. Nginxi ei ole loendis, seega vajutage selle sammu vahele jätmiseks klahvi Tab ja vajutage nuppu OK.
Kui see 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:
sudo mysql -u root
show grants for phpmyadmin@localhost;
Nagu näete, on kasutajal phpmyadmin kõik andmebaasi phpmyadmini õigused. Nüüd saate väljuda, käivitades:
exit;
Et pääseda juurde phpMyAdmini veebiliidesele, peame looma Nginxi serveriploki, käivitades järgmise käsu:
sudo nano /etc/nginx/conf.d/phpmyadmin.conf
server { listen 80; listen [::]:80; server_name pma.example.com; root /usr/share/phpmyadmin/; index index.php index.html index.htm index.nginx-debian.html; access_log /var/log/nginx/phpmyadmin_access.log; error_log /var/log/nginx/phpmyadmin_error.log; location / { try_files $uri $uri/ /index.php; } location ~ ^/(doc|sql|setup)/ { deny all; } location ~ \.php$ { fastcgi_pass unix:/run/php/php7.4-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; include snippets/fastcgi-php.conf; } location ~ /\.ht { deny all; } }
sudo nginx -t
sudo systemctl reload nginx
pma.example.com
phpMyadmini veebiliidese turvalisuse tagamiseks saame paigaldada tasuta Let’s Encrypt TLS sertifikaadi. Paigaldage Let’s Encrypt klient Ubuntu 20.04 tarkvarahoidlast:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp -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.
4. phpMyAdmini sisselogimisvea tõrkeotsing
Kui logite sisse MariaDB juurkontoga, võite näha järgmist viga:
#1698 - Access denied for user 'root '@'localhost'
mysqli_real_connect(): (HY000/1698): Access denied for user 'root '@'localhost'
Logige käsurealt sisse MariaDB serverisse:
sudo mariadb -u root
create user admin@localhost identified by 'sisesta-siia-parool';
grant all privileges on *.* to admin@localhost with grant option;
flush privileges;
exit;
TLS sertifikaadi automaatne uuendamine
Let’s Encrypt sertifikaadi automaatseks uuendamiseks muutke lihtsalt juurkasutaja crontab faili:
sudo crontab -e
@daily certbot renew --quiet && systemctl reload nginx