Quel est le moyen utilisé par Ubuntu pour configurer phpMyAdmin afin que je puisse l'utiliser pour administrer plusieurs serveurs MySQL? Les paramètres de base de données sont définis dans /etc/dbconfig-common/phpmyadmin.conf
, mais il n'y a que de la place pour les paramètres de connexion d'un seul serveur. Je pourrais le modifier en /etc/phpmyadmin/config-db.php
et /etc/phpmyadmin/config.inc.php
, mais je suppose qu'il doit y avoir un moyen plus élégant.
Question assez ancienne, mais toujours pertinente pour les recherches.
phpMyAdmin utilise Plain PHP pour les fichiers de configuration, et le tableau $cfg['Servers']
pour récupérer les serveurs configurés.
Ainsi, la méthode appropriée consiste à ajouter un nouveau fichier de configuration dans /etc/phpmyadmin/conf.d
pour chaque serveur à ajouter. Il est seulement nécessaire de terminer le nom du fichier en .php
pour les inclure, mais c'est une bonne idée d'utiliser your_new_server.inc.php
pour la cohérence.
Le contenu minimal pour un fichier de configuration donné serait:
$cfg['Servers'][2]['Host'] = 'THE_Host';
$cfg['Servers'][2]['user'] = 'THE_USER';
$cfg['Servers'][2]['password'] = 'THE_PASSWORD';
Comme indiqué dans une autre réponse, vous pouvez vérifier /usr/share/doc/phpmyadmin/examples/config.manyhosts.inc.php
pour plus de paramètres.
Important: Vous devez augmenter l'index (2) du tableau pour chaque nouveau fichier et éviter d'utiliser 1 si vous souhaitez continuer à vous connecter à localhost.
Si le ou les gars que ce (s) paquet (s) phpMyAdmin avait pensé à cela, ils auraient pu ajouter la variable incrémentante $i
dans le fichier foreach qui inclut les fichiers du répertoire conf.d
, ne vous inquiétez donc pas. devoir l'augmenter manuellement, mais malheureusement ce n'est pas le cas. Vous pouvez le faire vous-même si.
Je pense que c'est la manière la plus précise de le faire:
Configurez d'abord le mot de passe:
Sudo htpasswd -c /etc/phpmyadmin/htpasswd.setup admin
Puis désactivez la sécurité:
Sudo pma-configure
Ensuite, allez à http: // yourserver/phpmyadmin/setup (ici les navigateurs demandent l’autorisation, l’utilisateur est admin et le mot de passe est celui que vous écrivez dans la première commande), avec cet assistant vous configurez vos serveurs , une fois terminé, remettez la sécurité:
Sudo pma-secure
J'ai assumé ce qui suit:
/etc/phpmyadmin/
serait l'endroit le plus logique pour ajouter la configuration/etc/phpmyadmin/config-db.php
est l'emplacement de la configuration par défaut (locale?). C’est parce qu’il s’agit par défaut d’une seule base de données./etc/phpmyadmin/config.inc.php
lit la base de données par défaut pour en avoir une. Au moins celui-ci est utilisé, vous avez donc une base de données. Si quelque chose change dans votre configuration, le config-db.php
est changé, donc les modifications "locales" dans votre fichier ne sont pas modifiéesPar conséquent, ma conclusion a été d'ajouter un serveur supplémentaire en dessous de cette partie:
/* Configure according to dbconfig-common if enabled */
if (!empty($dbname)) {
//reading from config-db.php
}
//$i++ was allready done in if above
//Adding extra servers
$cfg['Servers'][$i]['Host'] = 'serverhost.Host.tld';
$cfg['Servers'][$i]['extension'] = 'mysqli';
//...etc
Cela ressemble au meilleur endroit.
Selon phpMyAdmin documentation , vous pouvez définir plusieurs serveurs dans le tableau $cfg['Servers']
défini dans le fichier config.inc.php
.
Le fichier de configuration principal est stocké dans /etc/phpmyadmin/config.inc.php
. Ce fichier comprend le
/var/lib/phpmyadmin/blowfish_secret.inc.php
/var/lib/phpmyadmin/config.inc.php
/etc/phpmyadmin/config-db.php
qui sont générées à partir de /etc/dbconfig-common/phpmyadmin.conf
par /usr/sbin/dbconfig-generate-include
. /etc/dbconfig-common/phpmyadmin.conf
peut être modifié en utilisant dpkg-reconfigure -plow phpmyadmin
/etc/phpmyadmin/conf.d/*.php
Quelques exemples de fragments de configuration se trouvent dans /usr/share/doc/phpmyadmin/examples
, y compris config.manyhosts.inc.php
. Ce fichier peut être ajouté à /etc/phpmyadmin/conf.d
. Cela fonctionne en réinitialisant la variable i
à 1 avant de créer des hôtes afin qu'elle remplace l'hôte défini dans /etc/phpmyadmin/config.inc.php
.
Si vous souhaitez effectuer une configuration plus avancée, vous voudrez probablement modifier le fichier /etc/phpmyadmin/config.inc.php
et éventuellement ajouter d'autres extensions de configuration à l'aide de /etc/phpmyadmin/conf.d
.
Pour ajouter la prise en charge de configurations supplémentaires à d'anciens fichiers de configuration, vous pouvez créer le répertoire /etc/phpmyadmin/conf.d
, puis ajouter le code PHP ci-dessous au bas de /etc/phpmyadmin/config.inc.php
:
/* Support additional configurations */
foreach (glob('/etc/phpmyadmin/conf.d/*.php') as $filename) {
include($filename);
}
Ce tutoriel explique comment gérer plusieurs serveurs MySQL à partir d’une installation phpMyAdmin. Pour des raisons de sécurité, la communication entre phpMyAdmin et tout serveur MySQL distant utilise le cryptage SSL.