Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 10/01/2014, à 18:12

kritpo

À propos de mount

Bonjour,
Je requiert aujourd'hui encore de votre patience, car j'ai actuellement presque terminé mon serveur interne.
Voilà, j'ai deux pc qui font tourner dans VirtualBox Ubuntu Server, qui sont des "serveurs web", je les fait communiquer via un synchroniseur de fichier en ligne, mais là n'est pas la question. La question est, à présent que je sais que les données des BDD sont dans le fichier /var/lib/mysql, je souhaiterais que mes deux pc aient la même base de données avec une synchronisation comme avec les dossiers du serveur... J'ai déjà pour cela trouvé une solution, mais ne me comble pas totalement, j'ai alors décidé de vous poser ces questions.
Voilà alors:
-Si je synchronise, PhpMyAdmin suivra-t-il aussi, sachant que je monte le dossier avec sudo mount(c'est à dire s'il pourra encore lire et écrire)?
-Si oui, si je modifie via PhpMyAdmin, il modifiera le fichier monté ou non?
Merci d'avance, Cordialement,
kritpo

Hors ligne

#2 Le 10/01/2014, à 22:10

vikin712

Re : À propos de mount

Bonsoir.

kritpo a écrit :

je souhaiterais que mes deux pc aient la même base de données

Dans ce cas il faut modifier le chemin datadir dans le fichier /etc/mysql/my.cnf

Si tu as trois systèmes mais que tu ne veux utiliser qu'une base de données, le chemin de tous les systèmes doit pointer vers celle-ci.

Exemple :
Si la BDD se trouve sur le premier système et que le chemin est /123/123, sur les deux autres systèmes le chemin doit être /media/123/123

Dernière modification par vikin712 (Le 10/01/2014, à 22:12)

#3 Le 11/01/2014, à 11:38

tiramiseb

Re : À propos de mount

Attention !!!

Désolé vikin712, ton conseil est très mauvais.
Il ne faut surtout pas faire pointer plusieurs bases vers un seul stockage.

MySQL a besoin d'avoir un accès exclusif à ses données, si une seconde instance de MySQL les modifie c'est le plantage assuré.


kritpo, si tu veux avoir plusieurs instances de MySQL qui contiennent les mêmes données, il faut mettre en place une réplication : http://dev.mysql.com/doc/refman/5.0/fr/replication.html.

Hors ligne

#4 Le 11/01/2014, à 14:00

vikin712

Re : À propos de mount

Bonjour.

tiramiseb a écrit :

Désolé vikin712, ton conseil est très mauvais.

Oui effectivement j'aurai dû préciser qu'il fallait unifier les fichiers de configuration de Mysql. wink

#5 Le 11/01/2014, à 15:15

tiramiseb

Re : À propos de mount

j'aurai dû préciser qu'il fallait unifier les fichiers de configuration de Mysql

Il ne s'agit pas que d'unifier les fichiers de configuration.
Il ne faut pas que deux instances de MySQL utilisent le même stockage, c'est tout.
Il y a des histoires de cache, d'écriture asynchrone, etc etc.

Hors ligne

#6 Le 11/01/2014, à 15:29

kritpo

Re : À propos de mount

Bonjour,
J'ai essayé avec la technique de tiramiseb, mais j'ai pas très bien compris; ensuite, c'est en soit une duplication, car:
-J'ai un pc Windows 7 fixe qui fait tourner sous VM Ubuntu Server avec PHPmyAdmin
-et sur un MAC portable qui fait tourner sous VM Ubuntu Server avec PHPmyAdmin
->Les deux ont un fichier partagé qui est synchronisé via internet; ce que je voudrais c'est avoir dans ce fichier les tables et pouvoir y accéder depuis mes deux pc.
Avec la technique de vikin712, je n'ai plus aucun accès à ma BDD via php myadmin, j'ai d'hors et déjà transferer des fichiers mysql et phpmyadmin officielle, mais rien a faire...
Merci de votre aide, je suis toujours en detresse...
kritpo

Hors ligne

#7 Le 11/01/2014, à 15:34

tiramiseb

Re : À propos de mount

->Les deux ont un fichier partagé qui est synchronisé via internet; ce que je voudrais c'est avoir dans ce fichier les tables et pouvoir y accéder depuis mes deux pc.

Tu peux le faire si tu veux, mais alternativement : si tu utilises MySQL sur l'une des machines, il faut l'arrêter sur l'autre.
Je le répète encore une fois, il ne FAUT PAS que deux instances de MySQL utilisent en même temps le même espace de stockage : ça te mènera obligatoirement à une corruption de tes données.

MySQL c'est un système de gestion de bases de données et son fonctionnement va bien plus loin qu'une simple lecture/écriture de fichiers.

Hors ligne

#8 Le 11/01/2014, à 15:51

vikin712

Re : À propos de mount

tiramiseb a écrit :

Il ne s'agit pas que d'unifier les fichiers de configuration.
Il ne faut pas que deux instances de MySQL utilisent le même stockage, c'est tout.
Il y a des histoires de cache, d'écriture asynchrone, etc etc.

Si tous les fichiers de configuration de Mysql pointent vers les mêmes historiques, etc c'est pas possible ?
Je pose la question parce qu'ayant déplacé ma BDD  sur un autre disque et je pensais qu'il était possible d'utiliser une seule BDD depuis plusieurs pc en utilisant un seul fichier de config pour Mysql.

tiramiseb a écrit :

si tu utilises MySQL sur l'une des machines, il faut l'arrêter sur l'autre.

Bien vu j'avais pas pensé à ça puisque la mienne ne démarre que sur ma demande.

Dernière modification par vikin712 (Le 11/01/2014, à 15:53)

#9 Le 11/01/2014, à 16:53

kritpo

Re : À propos de mount

Bonjour,
Donc au final, j'utilise quelle solution?
-Car celle de Vikin712 est plus facile, mais bloque sur la connection via PHPmyAdmin(solution que je préfère, mais reste encore le problème...)
-Celle de tiramiseb est trop compliqué, j'ai pas compris, car je ne sait pas vraiment comment je peux encore créer un utilisateur sachant que je n'ai que root...
Merci
PS:En faite, je veux juste avoir sur l'un comme sur l'autre des ordinateurs les même BDD, car j'ai les mêmes projets, donc j'ai pas vraiment envie qu'à chaque modification changer la BDD...
tiramiseb->En faite, les BDD sont basées sur deux fichiers qui s'entre synchronise, ce qui met les nouvelles de l'un dans l'autre et vice versa, c'est juste ensuite du dynamisme

Hors ligne

#10 Le 11/01/2014, à 17:05

vikin712

Re : À propos de mount

Bonjour.

kritpo a écrit :

Donc au final, j'utilise quelle solution?

Je ne sais pas.Tiramiseb semble plus calé sur le sujet que moi donc il vaut mieux attendre sa réponse.

Perso j'utilise un seul fichier de configuration pour mes différentes versions de Mysql et une seule BDD, mais il est vrai que Mysql ne démarre sur chaque pc qu'à ma demande et donc n'entre pas en conflit.

Dernière modification par vikin712 (Le 11/01/2014, à 17:05)

#11 Le 11/01/2014, à 19:25

tiramiseb

Re : À propos de mount

tiramiseb->En faite, les BDD sont basées sur deux fichiers qui s'entre synchronise, ce qui met les nouvelles de l'un dans l'autre et vice versa, c'est juste ensuite du dynamisme

Oui mais non.

Exemple simple : les index sont généralement conservés en mémoire et pas relus sur le disque à chaque accès. Imagine que sur une table, le dernier enregistrement est le numéro 1336. Un des serveurs va insérer un nouvel enregistrement, qui sera alors identifié 1337. Mais l'autre serveur ne sera pas informé de ce nouvel enregistrement, et pour lui le dernier sera le 1336. Si alors le second serveur essaie d'insérer un nouvel enregistrement, il essaiera de créer un enregistrement 1337, et là au moment de l'écriture PAF tout explose.
Là je t'ai bien sûr simplifié le problème, c'est laaaaargement plus complexe que ça...


-Celle de tiramiseb est trop compliqué

Oui, synchroniser deux bases MySQL c'est vachement compliqué...

Hors ligne