« Datasheet/MySQL » : différence entre les versions
Aller à la navigation
Aller à la recherche
(Page créée avec « = Utilisateurs = {{:DBMS/MySQL/Brief}} = Réplication = {{:DBMS/MySQL/ResetSlave}} ») |
Aucun résumé des modifications |
||
| Ligne 1 : | Ligne 1 : | ||
= | {{Datasheet}} | ||
= MySQL = | |||
{{:DBMS/MySQL/Brief}} | {{:DBMS/MySQL/Brief}} | ||
{{:DBMS/MySQL/ResetSlave}} | {{:DBMS/MySQL/ResetSlave}} | ||
== Drop all tables == | |||
Suppression de toutes les tables d'une base en une commande | |||
<syntaxhighlight lang="bash">base=<base> | |||
for table in $(mysql -Nse 'SHOW TABLES' $base) | |||
do | |||
mysql -e "DROP TABLE $table" $base | |||
done</syntaxhighlight> | |||
{{Admon/tip|Vider les tables au lieu de les supprimer|Il suffit de remplacer le mot clé ''DROP'' par ''TRUNCATE''}} | |||
Dernière version du 10 avril 2014 à 10:02
__NOTITLE__
MySQL
Ajout d'un utilisateur
Utilisateur standard
Ajout d'un utilisateur et d'une base ou celui-ci aura tous les droits
CREATE DATABASE IF NOT EXISTS testdb ;
CREATE USER 'test'@'localhost' IDENTIFIED BY '***';
GRANT USAGE ON *.* TO 'test'@'localhost' IDENTIFIED BY '***' WITH MAX_QUERIES_PER_HOUR 0
MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
GRANT ALL PRIVILEGES ON testdb.* TO 'test'@'localhost';
Utilisateur pour Réplication
GRANT REPLICATION SLAVE, SUPER, RELOAD, SELECT ON *.* TO <user>@'%' IDENTIFIED BY '***';
GRANT REPLICATION SLAVE, SUPER, RELOAD, SELECT ON *.* TO <user>@'localhost' IDENTIFIED BY '***';
Arrêt et reset de la réplication
- Arrêt de la réplication et remise à zéro de celle-ci
STOP SLAVE;RESET SLAVE;
- Suppression et création de la base
DROP DATABASE;CREATE DATABASE
- Import des dumps
mysql <base> < /tmp/<base>.sql
- Recalage de la réplication
CHANGE MASTER TO MASTER_HOST='<master host>',MASTER_USER='<user>',MASTER_PASSWORD='***',
MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=106;
- Redémarrage de la réplication
START SLAVE;
- Et on vérifie la réplication
SHOW SLAVE STATUS \G
Drop all tables
Suppression de toutes les tables d'une base en une commande
base=<base>
for table in $(mysql -Nse 'SHOW TABLES' $base)
do
mysql -e "DROP TABLE $table" $base
done
