Installation Apache - Mysql sur Debian Squeeze

Installation Apache

root@debian:~# aptitude install apache2 php5

Installation MysqlServer 5.1

root@debian:~# aptitude install mysql-server-5.1

Test MysqlServer

-u root représente l'utilisateur, -p demande la saisie du mot de passe

root@debian:~# mysql -u root -p
password:
root@debian:~# mysql -u root -p < fichier.sql
password:

Installation de phpmyadmin

root@debian:~# aptitude install phpmyadmin
root@debian:~# cp /etc/phpmyadmin/apache.conf /etc/apache2/sites-available/phpmyadmin
root@debian:~# a2ensite phpmyadmin
root@debian:~# apache2ctl restart

l'application phpmyadmin est disponible avec un navigateur à l'URL suivant : http://adresse/phpmyadmin

Autoriser l'accès distant à un serveur Mysql

Par défaut, un serveur mysql n'écoute que sur l'adresse localhost pour des raisons de sécurité. En conséquence, les connexions depuis des machines distantes ne sont pas autorisées.

On voit avec la commande netstat l'écoute sur localhost uniquement

root@debian:/etc/mysql# netstat -l|more
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 localhost:mysql         *:*                     LISTEN     
tcp        0      0 *:www                   *:*                     LISTEN     
tcp        0      0 *:ssh                   *:*                     LISTEN     
...

Pour changer ce comportement et autoriser des connexions distantes, il faut éditer le fichier /etc/mysql/my.cnf et commenter la ligne avec bind-address = 127.0.0.1

#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address		= 127.0.0.1
#

On peut alors relancer le service mysql avec service mysql restart.

La commande netstat permet alors de vérifier que mysql écoute bien sur toutes les adresses : *:mysql

root@debian:/etc/mysql# netstat -l|more
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 *:mysql                 *:*                     LISTEN     
tcp        0      0 *:www                   *:*                     LISTEN     
tcp        0      0 *:ssh                   *:*                     LISTEN     
...