ButCette page sert à recenser le plus grand nombre d'astuces et de howtos utiles sous SME v7.x. Je vous encourage vivement à me faire part de nouvelles astuces à ajouter à cette liste en m'envoyant un mail. Merci d'avance pour votre aide. |
Convention typographiqueAfin de vous faciliter la compréhension de qui apparait à l'écran, j'ai mis en place le code couleur suivant : En blanc : ce que vous devez taper En magenta : les éléments que vous devez taper, en fonction de vos besoins En cyan : ce qui est affiché par le système |
Créer des utilisateurs MySQLAvant toute chose, comme nous touchons ici à un élément sensible du système, je vais supposer que vous possédez certaines connaissances sur les Systèmes de Gestion de Bases de Données et leur administration. Si tel n'est pas le cas, je vous recommande de lire l'abondante documentation disponible dans ce domaine. A l'installation de SME, trois "utilisateurs" MySQL sont créés : 1 horde (depuis le localhost) qui est utilisé pour le WebMail et 2 root (depuis le localhost et l'alias du serveur) qui supporte la lourde tâche de DBA (Administrateur Base de Données). Attention, une erreur courante est de confondre les comptes utilisateur du système d'exploitation et du serveur MySQL. Or, ils sont totalement indépendants à tous points de vue. Par défaut, le compte MySQL root dispose d'un mot de passe de 76 caractères aléatoires (visible dans
/root/.my.cnf). Ce mot de passe et ce fichier ne doivent JAMAIS être modifiés !!! Pour créer de nouveaux comptes MySQL, vous devez ouvrir une session root (l'administrateur SME) sur le serveur et lancer le client MySQL en tapant tout simplement : mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 to server version: 4.1.12 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> Attention, à partir de maintenant, vous êtes DBA MySQL et toute erreur de manipulation peut être critique ! Commençons par le cas de la création d'un DBA avec accès depuis votre réseau local. Ceci est fort utile si vous
souhaitez administrer votre serveur MySQL à partir d'une autre machine de votre réseau (il existe de sympathiques
interfaces graphiques qui simplifient la vie). mysql> GRANT ALL PRIVILEGES ON *.* TO 'nouveau_dba'@'192.168.10.0/255.255.255.0' IDENTIFIED BY 'mot_de_passe' WITH GRANT OPTION; Query OK, 0 rows affected (0.01 sec)Nota : l'option "WITH GRANT OPTION" n'est pas indispensable et doit être évitée à chaque fois que c'est possible. Elle n'est présentée ici que pour être conforme aux droits que doit avoir un DBA (voir la documentation s'y rapportant pour plus d'informations). Autre cas, création d'un utilisateur standard avec accès local sur une base de données existante (très utile pour les scripts PHP, notamment) : mysql> GRANT SELECT, UPDATE, INSERT, DELETE ON base_de_données.* TO 'nouvel_utilisateur'@'localhost' IDENTIFIED BY 'mot_de_passe'; Query OK, 0 rows affected (0.01 sec)Nota : ne modifiez pas le paramètre 'localhost'. Il existe bien entendu de multiples variations et combinaisons, mais les deux cas que je viens de vous présenter correspond à l'immense majorité des besoins des utilisateurs sur SME. Après la création de nouveaux utilisateurs, vous devez indiquer à MySQL de les prendre en compte et, ensuite, quitter le client : mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec) mysql> QUIT; Bye |
Réinitialiser les comptes MySQL rootAu cas où vous auriez fait des bêtises et modifié les comptes MySQL root, il vous est toujours possible de réinitialiser leur mot de passe en tapant les commandes suivantes : cd /service/mysqld runsvctrl d . cat set.password | /usr/libexec/mysqld --bootstrap --user=mysql --skip-grant-tables runsvctrl u . Et si vous avez vraiment tout cassé, voici l'opération de la dernière chance qui va réinitialiser entièrement le
service MySQL et redémarrer le serveur. cd /service/mysqld runsvctrl d . /etc/e-smith/events/actions/mysql-delete-db-files signal-event post-upgrade signal-event reboot |
smeserver.fr Site consacré à la distribution Linux SME Server Site sous licence Creative Commons (by, nc, sa) |