Query su server diversi | PHP

Topic: Pubblico - Composto da 6 Posts di 2 Utenti.

01 Settembre, 2010 14:48 #1
Sasti
Utente

Sasti
Registrato: Sep, 2010
Posts: 3
Offline

Ciao,

ho due server mysql su due host diversi... ho bisogno di eseguire una
query incrociando e comparando dei campi che si trovano in due tabelle:
una su un server e l'altra sull'altro server.

Situazione:

Server1:
database1
tabella1 -> campoA, campoB

Server2:
database2
tabella2 -> campoA, campoB

ed eseguire una query con php:

INSERT INTO Server1.database1
SELECT * FROM Server2.database2
WHERE Server1.database1.campoA = Server2.database2.campoA

è possibile in qualche modo?

01 Settembre, 2010 16:25 #2
g2d
Moderatore

g2d
Registrato: Jul, 2008
Posts: 867
Offline
Segui g2d su Twitter!

Ciao Sasti,
Benvenuto!
la tua esigenza è molto diffusa, però ti faccio una domanda, è un operazione che si fa una tantum ? o è un operazione che devi ripetere spesso ?
Ti spiego, la procedura è quella di federare i server e di conseguenza le tabelle.
Se l'operazione è invece una tantum, francamente penso che il modo più comodo è farti un backup della tabella e riportarla sul Server 1 e fare la query.
Dimmi tu
Saluti algweb


Un tempo ero algweb ora sono g2d

01 Settembre, 2010 16:38 #3
Sasti
Utente

Sasti
Registrato: Sep, 2010
Posts: 3
Offline

Ciao algweb,
ti spiego meglio questa mia esigenza:
ho un sito a cui si iscrivono gli utenti (sul server 1), questi utenti possono aggiornare i propri dati.
e ho un'applicazione (sul server 2) che deve prendere questi dati in gestione e se è il caso devo modificarli.
E quindi dovrò programmare uno script che ogni tot di tempo verifichi se ci sono nuovi utenti o se quelli già presenti sono stati modificati ... insomma due tabelle contenenti più o meno le stesse informazioni devono essere sincronizzate tra le modifiche da me apportate e le modifiche apportate dagli utenti... Quindi penso che non sia un'operazione da ripetere una tantum... ma che debba essere abbastanza frequente...
spero sia chiaro il mio problema... ma "federare i server" è una cosa grave?
Grazie 1000 del tuo aiuto...

01 Settembre, 2010 20:17 #4
g2d
Moderatore

g2d
Registrato: Jul, 2008
Posts: 867
Offline
Segui g2d su Twitter!

Ciao Sasti,
Il punto è che per federare 2 server ti serve la possibilità di accedere ai DB per configurarli, in poche parole la macchina deve essere tua altrimenti non puoi.
Se questo non è il tuo caso, ovvero lavori su degli hosting, devi pensare ad altre soluzioni.
Io sono a tua disposizione, quindi dimmi tu... cerchiamo una strada alternativa, o le macchine sono tue e federiamo ?
Grazie a te della partecipazione
Saluti algweb


Un tempo ero algweb ora sono g2d

02 Settembre, 2010 09:32 #5
Sasti
Utente

Sasti
Registrato: Sep, 2010
Posts: 3
Offline

Sto cercando di documentarmi sulla possibilità di federare i miei database, anche se poi magari dovrò adottare altre soluzioni... ma voglio comunque sapere e conoscere questo modo di operare su sorgenti diverse affichè condividano delle informazioni.
Ho fatto un po' di ricerche e non credo di aver afferrato al 100% in cosa consiste questa 'federazione'.

Ho tanti dubbi:

1. è il database che deve essere federato, o meglio solo le tabelle che si vogliono condividere... giusto?

2. basta aggiungere o modificare l'engine della tabella: ENGINE: FEDERATED (???)

3. Dopo l'operazione di federazione uno dei server funge da Server e l'altro da Client (???)

4. Quello che accade dopo la federazione è che i due database vengono visti come un unico ambiente logico, che ha un unico accesso ... quindi connettendosi a uno dei due server ci si connette in automatico anche all'altro (???)

5. Ma in qualche modo si dovranno collegare i due server perchè questi costituiscano l'unica base di dati logica (???)

6. Bisogna configurare entrambe i server o basta configurarne uno solo?

Grazie per la pazienza con cui segui questa discussione.

02 Settembre, 2010 20:21 #6
g2d
Moderatore

g2d
Registrato: Jul, 2008
Posts: 867
Offline
Segui g2d su Twitter!

Ciao Sasti scusa per il ritardo.

Guarda tutte le tue domande trovano risposta in quest'articolo:


http://www.mysqlitalia.it/articoli/25-federated-storage-engine

Non ringraziarmi, stai tranquillo, cerchiamo insieme di risolvere nel miglior modo possibile.

Anzi grazie a te della partecipazione e della condivisione della tua esperienza

Saluti algweb

Ultima modifica 02 Settembre, 2010 20:22 di g2d


Un tempo ero algweb ora sono g2d

Condividi su:

Loggati o Registrati per replicare