Mysql

De MySoLo Wiki.

Version du 2 mars 2009 à 12:27 par MySoLo (discuter | contributions)
(diff) ← Version précédente | Voir la version courante (diff) | Version suivante → (diff)

Sommaire

Créer un utilisateur

A partir de mysql version 5.0.2

CREATE USER user [IDENTIFIED BY [PASSWORD] 'password'] [, user [IDENTIFIED BY [PASSWORD] 'password']] ...

Version antérieur à la 5.0.2

GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost' IDENTIFIED BY 'some_pass' WITH GRANT OPTION;

Administration de serveur MySQL

L'outil principale pour l'administration de mysql est le binaire mysql. Celui-ci permet de se connecter sur le serveur mysql et de l'administrer. Plusieurs commandes mysql permettant d'effectuer directement certaine tache d'administration, de surveillance, etc... sans toutefois devoir connaître et donner les commandes à la base elle même.

Se connecter sur la base

Pour se connecter à une base et ensuite taper directement les commandes mysql, il est nécessaire d'utiliser le binaire mysql. Connection à une base:

mysql -u [user] -p -P [port] -h [host] -S [socket] [database]

Aucun des paramêtres n'est obligatoire. Toutefois, sans paramêtre, ceux par défaux seront utilisé. Voir /etc/my.cnf, ~/.my.cnf, etc... Il est possible de se connecter soit par le host, ou par la socket, ou en définissant un certain port. Voir mysql --help pour de plus amples information.


MASTER:sql2:/root# mysql -u admin -p -h localhost
Enter password: xxxxxxx

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 29617 to server version: 3.23.53-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

Informations et utilisation des bases

La plus part des commandes ci-dessous sont effectuées directement en étant loggué sur le serveur mysql par le biais de la commande mysql.

Voir les bases disponibles

show databases;

Activer/Utiliser une base

use <database>;

Voir les tables d'une base

show tables;

Voir la structure d'une table

desc <table>; ou desc <table>\G pour un affichage en colone (c'est plus plaisant à l'affichage)

En vrac

Réplication Master - Slave

Connaitre le status du master. Permet de savoir si un serveur slave est indiqué pour la réplication

show master status;


Connaitre le status du slave. Permet de connaitre les paramètre de réplication en cours et si la réplication est en marche. Indique aussi la dernière erreur rencontré.

show slave status;

--- 2.3.2 Slave --- [1] Arrêter la base

[2] Copier les db :

$ scp master:/tmp/backup.tar.gz /tmp
$ cd /
$ tar xvfz /tmp/backup.tar.gz

[3] Démarrer la base

[4] Mettre à jour les droits afin que ceux-ci soient conformes à ceux en production

[5] Positionner les paramètres de réplication :

mysql> change master to 
            master_host='****',
            master_user='repl',
            master_password='****',
            master_log_file='bin.002',
            master_log_pos=789;

Note : ici, les paramètres `master_log_file' et `master_log_pos' ont été positionnés à des valeurs cohérentes avec celles prises en exemple pour le master.

[6] Lancer la réplication :

mysql> slave start;
développement
Google AdSense