IPB

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> Synchronisation entre une base locale et distante [Résolu]
Options
Eddoul
posté 5 Oct 2014, 11:12
Message #1


Macbidouilleur d'argent !
***

Groupe : Membres
Messages : 629
Inscrit : 21 Dec 2007
Membre no 103 074



Bonjour,

J'explique mon problème.
J'ai développé un site en PHP qui est hébergé sur 1 and 1.
Lorsque la personne qui utilise le site n'a pas de connexion internet, il aura la possibilité de travailler en local.

Seulement, pour ça, il faudrait que les bases soit synchronisée.

Je voulais faire un script qui permettre de mettre à jour la base locale à partit de la base distante, et inversement.

Seulement, en local, je ne pense pas que je puisse me connecter sur la base distante de 1and1.
Je ne peux pas passer par un fichier intermédiaire style :
- sauvegarde de la base distante
- injection des données dans la base locale
car je ne pourrais pas faire de contrôle pour ne pas écraser les données plus récente sur l'une des deux bases.

Merci pour vos idées, votre aide.

Eddy

Ce message a été modifié par Eddoul - 6 Oct 2014, 14:09.


--------------------
Machines en ma possession :
- Imac 20", 4,3Ghz, HDD 250, 4Go RAM
Go to the top of the page
 
+Quote Post
Philippe64
posté 5 Oct 2014, 12:55
Message #2


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 263
Inscrit : 31 Aug 2002
Lieu : Saint-Jean-de-Luz
Membre no 3 355



Je ne suis pas sûr, mais il me semble que chez 1 and 1, ils autorisent l'accès à distance des bases de données.
teste donc avant de chercher une autre solution.


--------------------
En activité : Macbook pro 15" Core I7 à 2.8Ghz de 2015 - Macbook pro 13" Core I5 à 2.5Ghz - Macbook pro 15" Core duo de 2006 qui marche toujours hyper bien - iPhone 6s - iPad - iPad Mini
En Panne : Imac 27 Pouces Core I7 à 3.4Ghz - mid 2011 (je cherche un écran)
A la retraite : Imac C2D 24 Pouces (blanc) à 2.33 Ghz - iBook14" 800 Mhz - Quicksilver 733 - G3 bleu et blanc - Macintosh Classic - iPhone 3G - iPhone 4s

Crea64 : creation de site internet à Saint-Jean-de-Luz (64)
Go to the top of the page
 
+Quote Post
yponomeute
posté 5 Oct 2014, 14:45
Message #3


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 4 969
Inscrit : 26 Jan 2011
Lieu : Pollachius virens
Membre no 164 083



Bonjour,

Si je puis me permettre, c'est une très mauvaise idée cette histoire de pouvoir travailler sur deux bases de données distinctes si l'une d'entre elles est offline, car ça va nécessiter une synchronisation manuelle et donc générer un risque d'oubli. Et dès qu'une opération de synchro sera oubliée ça sera un bordel sans nom parce que les clés des enregistrements vont différer d'une base à l'autre.

Sinon si c'est du mysql il faut utiliser les fonctions natives de réplication : http://dev.mysql.com/doc/refman/5.0/fr/replication.html
Mais en principe la réplication de fait depuis une base maitre vers des bases esclaves. Là tu veux que les bases soit tour à tour maitre et esclave. Tu t'embarques dans un truc vraiment casse-gueule selon moi.

Ce message a été modifié par yponomeute - 5 Oct 2014, 14:47.


--------------------
MBP 2017 15" avec clavier pourri et touchbar inutile
Go to the top of the page
 
+Quote Post
Eddoul
posté 6 Oct 2014, 14:09
Message #4


Macbidouilleur d'argent !
***

Groupe : Membres
Messages : 629
Inscrit : 21 Dec 2007
Membre no 103 074



Citation (yponomeute @ 5 Oct 2014, 15:45) *
Bonjour,

Si je puis me permettre, c'est une très mauvaise idée cette histoire de pouvoir travailler sur deux bases de données distinctes si l'une d'entre elles est offline, car ça va nécessiter une synchronisation manuelle et donc générer un risque d'oubli. Et dès qu'une opération de synchro sera oubliée ça sera un bordel sans nom parce que les clés des enregistrements vont différer d'une base à l'autre.

Sinon si c'est du mysql il faut utiliser les fonctions natives de réplication : http://dev.mysql.com/doc/refman/5.0/fr/replication.html
Mais en principe la réplication de fait depuis une base maitre vers des bases esclaves. Là tu veux que les bases soit tour à tour maitre et esclave. Tu t'embarques dans un truc vraiment casse-gueule selon moi.


Bonjour,

Je crois que tu as raison et j'ai également fait entendre raison à la personne qui utilisera le logiciel.

Merci.

Bonne journée.

Eddy


--------------------
Machines en ma possession :
- Imac 20", 4,3Ghz, HDD 250, 4Go RAM
Go to the top of the page
 
+Quote Post
yponomeute
posté 6 Oct 2014, 14:58
Message #5


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 4 969
Inscrit : 26 Jan 2011
Lieu : Pollachius virens
Membre no 164 083



S'il y a réellement un besoin impératif de travailler sur la base de données depuis n'importe où et n'importe quand, la solution c'est une clé 3G/4G pour pouvoir se connecter au web smile.gif


--------------------
MBP 2017 15" avec clavier pourri et touchbar inutile
Go to the top of the page
 
+Quote Post
Eddoul
posté 8 Oct 2014, 16:28
Message #6


Macbidouilleur d'argent !
***

Groupe : Membres
Messages : 629
Inscrit : 21 Dec 2007
Membre no 103 074



le besoin n'est pas réellement justifié.
surtout que ça risquerai de compliquer bien des choses et d'avoir des données incohérentes


--------------------
Machines en ma possession :
- Imac 20", 4,3Ghz, HDD 250, 4Go RAM
Go to the top of the page
 
+Quote Post
Jaypee
posté 8 Oct 2014, 17:06
Message #7


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 2 486
Inscrit : 29 Aug 2002
Membre no 3 340



En fait, l'architecture qui permet de fonctionner off-line est très prisée de nos jours.

Il faut penser à la possibilité de stockage SQL des browsers grâce à HTML5. Un survol ici: http://blog.zenika.com/index.php?post/2011...le-mode-Offline

Ensuite, il y a grands (gros) mots, des "patterns" qui recommandent de séparer les données simplement lues (= requête), de celles qui sont écrites ( = résultat de commande ), voir pour cela l'acronyme CQRS.


J-P

Ce message a été modifié par Jaypee - 8 Oct 2014, 17:07.
Go to the top of the page
 
+Quote Post
No6
posté 8 Oct 2014, 22:21
Message #8


Oui ?
*****

Groupe : Membres
Messages : 3 889
Inscrit : 24 Jun 2003
Lieu : BZH
Membre no 8 224



Il y a aussi la possibilité de tout faire passer par des caches, qui peuvent aller jusqu'à représenter l'ensemble du site à un instant T....


--------------------
"Je sais que vous croyez comprendre ce que vous pensez que j'ai dit, mais je ne suis pas sûr que vous réalisiez que ce que vous avez entendu n'est pas ce que je pense."
(Alan Greenspan)
Go to the top of the page
 
+Quote Post
Jaypee
posté 9 Oct 2014, 06:05
Message #9


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 2 486
Inscrit : 29 Aug 2002
Membre no 3 340



Oui, et ce sont les caches qui se synchronisent entre eux, la BD n'est là que pour charger le cache en mémoire ou au contraire le persister. Elle n'est plus "transactionnelle".
Et ça c'est la tendance "architecture cloud".

J-P
Go to the top of the page
 
+Quote Post
macpacher
posté 27 Jan 2015, 20:02
Message #10


Adepte de Macbidouille
*

Groupe : Membres
Messages : 143
Inscrit : 4 Dec 2013
Membre no 188 132



Citation (Eddoul @ 5 Oct 2014, 11:12) *
Lorsque la personne qui utilise le site n'a pas de connexion internet, il aura la possibilité de travailler en local.

Seulement, pour ça, il faudrait que les bases soit synchronisée.

Je voulais faire un script qui permettre de mettre à jour la base locale à partit de la base distante, et inversement.

Seulement, en local, je ne pense pas que je puisse me connecter sur la base distante de 1and1.
Je ne peux pas passer par un fichier intermédiaire style :
- sauvegarde de la base distante
- injection des données dans la base locale
car je ne pourrais pas faire de contrôle pour ne pas écraser les données plus récente sur l'une des deux bases.

Merci pour vos idées, votre aide.

Eddy

J'arrive peut être un peu tard...
Tu as écris LA personne qui utilise le site; si elle est seule,cela veut-il dire qu'i n'y a pas d'autre personne qui va utiliser la base pendant qu'elle travaille en local.
Vrai ou faux ?

Pour mon appli Web, j'ai le même cas de travail ponctuel en local, faute de connexion Internet. Je synchronise la base locale par un jeu de requêtes SQL (soit par Web, soit par fichier). En fin de travail hors ligne, je remonte les modifs vers la base distante toujours par requêtes SQL. Par contre, le travail hors ligne est spécifique et j'ai organisé les tables SQL pour éviter les conflits de clés. Grosso modo la plupart des tables modifiées en local ne sont pas modifiables sur la base distante durant ce travail ponctuel, reste quelques enregistrements à gérer plus finement.


--------------------
Macmini6,2 - Mavrik
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



Nous sommes le : 19th April 2024 - 20:51