Jaki jest sposób Ubuntu na skonfigurowanie phpMyAdmina, aby móc go używać do administrowania wieloma serwerami MySQL? Parametry bazy danych są ustawione /etc/dbconfig-common/phpmyadmin.conf
, ale jest tam tylko miejsce na parametry połączenia dla pojedynczego serwera. Mogę go włamać /etc/phpmyadmin/config-db.php
i /etc/phpmyadmin/config.inc.php
, ale zakładam, że musi być bardziej elegancki sposób.
mysql
phpmyadmin
Mike Scott
źródło
źródło
Odpowiedzi:
Dość stare pytanie, ale wciąż aktualne przy wyszukiwaniu.
phpMyAdmin używa zwykłego PHP do plików konfiguracyjnych i
$cfg['Servers']
tablicy, aby uzyskać skonfigurowane serwery.Zatem właściwym sposobem jest dodanie nowego pliku konfiguracyjnego
/etc/phpmyadmin/conf.d
dla każdego serwera, który chcesz dodać. Konieczne jest tylko zakończenie nazwy pliku,.php
aby je uwzględnić, ale warto zachowaćyour_new_server.inc.php
spójność.Minimalna zawartość dla danego pliku konfiguracyjnego to:
Jak podano w innej odpowiedzi, możesz sprawdzić plik /usr/share/doc/phpmyadmin/examples/config.manyhosts.inc.php , aby uzyskać więcej parametrów.
Ważne: Musisz zwiększyć indeks (2) tablicy dla każdego nowego pliku i unikać używania 1, jeśli chcesz nadal łączyć się z hostem lokalnym.
Jeśli faceci z pakietu (phpMyAdmin) o tym pomyśleli, mogliby dodać
$i
zmienną inkrementacyjną w foreach, która zawiera pliki zconf.d
katalogu, abyś mógł po prostu użyć jej jako indeksu i nie martwić się o to, że musisz zwiększ go ręcznie, ale niestety tak nie jest. Możesz to zrobić sam.[2019]: Nowsze wersje PHP pozwalają na bardziej zwięzłą alternatywną składnię:
źródło
<?php
, jak każdy inny skrypt PHP.Myślę, że to najdokładniejszy sposób to zrobić:
Najpierw skonfiguruj hasło:
Następnie wyłącz zabezpieczenia:
Następnie przejdź do http: // yourserver / phpmyadmin / setup (tutaj przeglądarki pytają o autoryzację, użytkownik jest administratorem, a hasło jest tym, co piszesz w pierwszej komendzie), za pomocą tego kreatora skonfigurujesz serwery, gdy to zrobisz, umieść bezpieczeństwo ponownie:
źródło
Przyjąłem następujące założenia:
/etc/phpmyadmin/
byłoby najbardziej logicznym miejscem na dodanie konfiguracji/etc/phpmyadmin/config-db.php
jest lokalizacją domyślnej (lokalnej?) konfiguracji. Jest tak, ponieważ jest to domyślnie tylko jeden db/etc/phpmyadmin/config.inc.php
odczytuje domyślną bazę danych, więc ma ją. Przynajmniej ten jest używany, więc masz bazę danych. Jeśli coś zmieni się w twojej konfiguracji,config-db.php
zmieni się, więc zmiany „lokalne” w twoim pliku nie są modyfikowaneDlatego doszedłem do wniosku, że dodanie dodatkowego serwera poniżej tej części:
To wygląda na najlepsze miejsce.
źródło
Zgodnie z dokumentacją phpMyAdmin możesz zdefiniować wiele serwerów w
$cfg['Servers']
tablicy zdefiniowanej wconfig.inc.php
pliku.źródło
You can regenerate it using: dpkg-reconfigure -plow phpmyadmin
. Zakładam, że próbowałeś tego? (nie zrobi tego teraz w systemie produkcyjnym) Poza tym ... ręcznie zmienione pliki powinny być monitowane o aktualizację, zanim zostaną zastąpione.Główny plik konfiguracyjny jest przechowywany w
/etc/phpmyadmin/config.inc.php
. Ten plik zawiera/var/lib/phpmyadmin/blowfish_secret.inc.php
/var/lib/phpmyadmin/config.inc.php
/etc/phpmyadmin/config-db.php
których są generowane/etc/dbconfig-common/phpmyadmin.conf
przez/usr/sbin/dbconfig-generate-include
./etc/dbconfig-common/phpmyadmin.conf
można zmodyfikować za pomocądpkg-reconfigure -plow phpmyadmin
/etc/phpmyadmin/conf.d/*.php
Niektóre przykładowe fragmenty konfiguracji
/usr/share/doc/phpmyadmin/examples
obejmująconfig.manyhosts.inc.php
. Ten plik można dodać do/etc/phpmyadmin/conf.d
. Działa poprzez zresetowaniei
zmiennej z powrotem do 1 przed utworzeniem dowolnego hosta, aby zastąpił ustawiony host/etc/phpmyadmin/config.inc.php
.Jeśli chcesz przeprowadzić bardziej zaawansowaną konfigurację, prawdopodobnie będziesz chciał zmienić
/etc/phpmyadmin/config.inc.php
plik i ewentualnie dodać inne rozszerzenia konfiguracji za pomocą/etc/phpmyadmin/conf.d
.Aby dodać obsługę dodatkowych konfiguracji do starszych plików konfiguracyjnych, możesz utworzyć katalog,
/etc/phpmyadmin/conf.d
a następnie dodać poniższy kod PHP na dole/etc/phpmyadmin/config.inc.php
:źródło