Showing entries 1 to 3
Displaying posts with tag: mysqldump (reset)
mysqldump et les views

Quoi qu’on en pense, les views dans MySQL sont très utiles dans certaines circonstances. Cependant, on peut silencieusement les briser sans s’en rendre compte en modifiant la structure d’une table qui l’utilise. C’est malheureux, mais pas dramatique puisqu’aucune donnée n’est perdue…

Faux !

Si vous utilisez mysqldump pour faire vos backups, il est très dangereux de briser une view.

CREATE TABLE a (a int);
CREATE TABLE b (b int);
CREATE VIEW abview AS SELECT a,b FROM a INNER JOIN b ON a.a = b.b;

Le temps passe et on oublie qu’on a créé une view…

ALTER TABLE a CHANGE a a_field int;

Tout continue de bien fonctionner jusqu’au moment où on fait nos backups..

patlaf@noidea:~$ mysqldump -uroot -p --all-databases > /dev/null
Enter password:
mysqldump: Couldn't execute 'show create table `abview`': View 'test.abview' references
invalid table(s) or …
[Lire plus]
Restaurer une sauvegarde en désactivant le log binaire

Il est pafois utile de désactiver le log binaire lors d’une restauration. MySQL permet de le désactiver pour une session avec la commande SQL_LOG_BIN:

mysql> SET SESSION sql_log_bin = 0;

Lors de la restauration avec le client mysql on peut donc utiliser la ligne de commande suivante:

shell> mysql –execute=“SET SESSION sql_log_bin=0;  SOURCE mon_fichier_dump.sql;”

Droits minimums pour utiliser mysqldump

mysqldump est un client texte qui permet de faire une sauvegarde (dump) logique des données (au sens large) d’un serveur MySQL.
Pour pouvoir utiliser un client, il faut disposer d’un compte utilisateur (user, host et password), que le client utilisera pour se connecter au serveur MySQL.
Si vous devez faire régulièrement des sauvegardes, ce qui est (devrait être) la norme, une bonne pratique est d’avoir un utilisateur dédié pour cette tache, et par conséquent que cet utilisateur ait les droits qui vont bien. Toujours dans cet esprit bonnes pratiques, le but là est d’appliquer le principe du moindre privilège (droit). En d’autres termes, l’utilisateur doit avoir les droits pour faire ce qu’il doit faire (logique) mais surtout pas plus (finalement ça aussi c’est logique).

ne …

[Lire plus]
Showing entries 1 to 3