phpMyAdmin je webový administrační nástroj s otevřeným zdrojovým kódem pro správu serverů MySQL a MariaDB. Jedná se o jeden z nejpopulárnějších nástrojů pro správu databází, který používají hostitelské společnosti a správci systémů pro provádění databázových činností, jako je vytváření, mazání, dotazování na tabulky, sloupce, vztahy, indexy, uživatelé, oprávnění atd.
phpMyAdmin je přenosná webová aplikace napsaná v PHP. Je vydán pod GNU GPL v2.
V tomto příspěvku uvidíme, jak nainstalovat phpMyAdmin s Apache na CentOS 8 / RHEL 8.
Předpoklady
Nainstalujte server MySQL / MariaDB
Před instalací phpMyAdmin musíte mít na vašem systému spuštěnou jednu instanci databáze (MySQL nebo MariaDB), abyste se mohli připojit. Může se jednat o samostatnou instanci databáze nebo o instalaci jako součást zásobníku LAMP.
Samostatná databáze
ČTĚTE: Jak nainstalovat MariaDB na CentOS 8 / RHEL 8
ČTĚTE: Jak nainstalovat MySQL 8.0 na CentOS 8 / RHEL 8
Nainstalujte do svého systému PHP, balíček podpory MySQL pro PHP a další balíčky PHP, aby se phpMyAdmin mohl připojit k databázi.
dnf install -y wget php php-pdo php-pecl-zip php-json php-common php-fpm php-mbstring php-cli php-mysqlnd php-xml tar
Sada LAMP
ČTĚTE: Jak nainstalovat LAMP Stack na CentOS 8 / RHEL 8
Níže nainstalujte balíčky PHP pro phpMyAdmin pro připojení k databázi.
dnf install -y php-json php-mbstring
Nainstalujte phpMyAdmin
Balíček phpMyAdmin zatím není k dispozici v úložišti OS pro CentOS 8 / RHEL 8. Musíme ho tedy stáhnout z oficiálních stránek.
wget https://files.phpmyadmin.net/phpMyAdmin/5.1.1/phpMyAdmin-5.1.1-all-languages.tar.gz
Nainstalujte phpMyAdmin pomocí následujícího příkazu.
tar -zxvf phpMyAdmin-5.1.1-all-languages.tar.gz
Přesuňte nastavení phpMyAdmin na požadované místo.
mv phpMyAdmin-5.1.1-all-languages /usr/share/phpMyAdmin
Nakonfigurujte phpMyAdmin
Zkopírujte ukázkový konfigurační soubor.
cp -pr /usr/share/phpMyAdmin/config.sample.inc.php /usr/share/phpMyAdmin/config.inc.php
Upravte konfigurační soubor a přidejte tajný kód blowfish.
vi /usr/share/phpMyAdmin/config.inc.php
Vygenerujte tajemství blowfish a umístěte jej do níže uvedeného řádku.
$cfg['blowfish_secret'] = 'bo95yavJ;V,1PzSlxyFwtyMJ}WmG98-6'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Importujte soubor create_tables.sql a vytvořte nové tabulky pro phpMyAdmin.
mysql < /usr/share/phpMyAdmin/sql/create_tables.sql -u root -p
Vytvořte alias na webovém serveru Apache, aby byl phpMyAdmin přístupný pomocí http://your-ip-add-dress/phpmyadmin.
vi /etc/httpd/conf.d/phpMyAdmin.conf
Zkopírujte a vložte níže uvedený obsah do výše uvedeného souboru.
Alias /phpMyAdmin /usr/share/phpMyAdmin Alias /phpmyadmin /usr/share/phpMyAdmin <Directory /usr/share/phpMyAdmin/> AddDefaultCharset UTF-8 <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> Require all granted </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 </IfModule> </Directory> <Directory /usr/share/phpMyAdmin/setup/> <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> Require all granted </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 </IfModule> </Directory>
Vytvořte adresář tmp pro phpMyAdmin a změňte oprávnění.
mkdir /usr/share/phpMyAdmin/tmp chmod 777 /usr/share/phpMyAdmin/tmp
Nastavte vlastnictví phpMyAdmin, jak je uvedeno níže.
chown -R apache:apache /usr/share/phpMyAdmin
Restartujte službu.
systemctl restart httpd
SELinux
Vytvořte zásady SELinux, aby phpMyAdmin fungoval správně.
yum install -y policycoreutils-python-utils semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/phpMyAdmin/' semanage fcontext -a -t httpd_sys_rw_content_t "/usr/share/phpMyAdmin/tmp(/.*)?" restorecon -Rv '/usr/share/phpMyAdmin/'
Firewall
Vytvořte pravidlo brány firewall pro povolení požadavků HTTP z externích sítí.
firewall-cmd --permanent --add-service=http firewall-cmd --reload
Důležité poznámky
Před přístupem k phpMyAdmin s rootem nebo běžnými uživateli databáze si přečtěte důležité poznámky.
MySQL 8.x
MySQL 8.0 nainstalovaný z úložiště MySQL Dev Community používá pro autentizaci mechanismus caching_sha2_password, který v tuto chvíli brání starším aplikacím v přístupu k databázím, včetně phpMyAdmin. Jednoduše řečeno, do phpMyAdmin se nepřihlásíte, dokud tento nový mechanismus hesel nezakážeme.
Nový mechanismus hesla můžete globálně zakázat umístěním default-authentication-plugin=mysql_native_password do /etc/my.cnf (Uživatelé vytvoření po této změně budou mít mechanismus autentizace mysql_native_password), nebo se můžete vrátit ke starému nativnímu ověřování (mysql_native_password) pro jednotlivým uživatelům (např. root) spuštěním ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '
Přístup k phpMyAdmin
Nyní otevřete phpMyAdmin z prohlížeče, URL bude:
http://localhost/phpMyAdminNEBO
http://your-ip-addr-ess/phpMyAdminPřihlaste se pomocí root (administrátor DB) nebo libovolného uživatele databáze.
Získáte stránku databáze, kde můžete provádět všechny databázové aktivity.
Závěr
Doufám, že jste se naučili, jak nainstalovat phpMyAdmin s Apache CentOS 8 / RHEL 8 pro správu MariaDB a databáze MySQL. Kromě toho se můžete podívat na to, jak zabezpečit instalaci phpMyAdmin.