Seite 1 von 1
SQL Zugriff auf Externe DB
Verfasst: 18.07.2006, 20:09
von Ice Man
Folgendes Problem.
Seite A
SQL DB Seite A.
Seite B
SQL DB Seite B
Beide Seiten greifen auf die gleichen Daten zu.
Also auf eine Artikel Datenbank.
Damit die Zugiffszeiten noch so groß sind, wollte ich keine exteren Zugriff auf die original DB machen.
Also DB auf andere Seite eingespielt.
Änderungen werden nur an der Haupt DB durchgeführt.
Danach werden beide DB's syncronisiert.
Soweit so gut.
Nun das Update also die Syncro ist etwas problematisch.
Es läuft so ab.
Datensatz mit ID wird ausgelesen.
Verbindung mit Haupt DB aufgebaut.
Verglichen, und bei Änderung wird DB aktualisiert.
Nun die Frage:
Kann das Script gleichzeitig ne Verbindung zu DB1 und DB2 aufbauen ?
Weil ich aktuell bei jeder änderung ne Verbindung aufbaue, und am Ende der Schleife beände.
Bei 300 Updates wären das 300 mal Verbindung auf und wieder zu.
Das Problem hatte ich bisher noch nicht.
Muss doch auch ohne ständige neu Verbindung gehen oder ?
thx

Verfasst:
von
SEO Consulting bei
ABAKUS Internet Marketing Erfahrung seit 2002
- persönliche Betreuung
- individuelle Beratung
- kompetente Umsetzung
Jetzt anfragen:
0511 / 300325-0.
Verfasst: 18.07.2006, 20:33
von Ice Man
Hier noch mal im Aufbau
Connect Haupt DB
Select Produkte
while ( schleife beginnt....
Connect Neben DB
Vergleich beider Resultate
Bei unterschied
Update Neben DB
endwhile; schleife endet
So hab ich nun viele connects die bestimmt nich gerade günstig sind

Verfasst: 18.07.2006, 22:20
von Dendemann
Wo ist das Problem, in PHP, 2 Verbindungen zu öffnen?
$conn1 = mysql_connect();
$conn2 = mysql_connect();
die verbindungen bleiben durch das ganze script hindurch bestehen. Unproblematisch, wie ich finde. Oder habe ich den Kasus Cnactus nicht erkannt?
Verfasst: 18.07.2006, 22:25
von Ice Man
ok, und wie sage ich bei der Abfrage, diesmal conn1 und hier conn2 wählen ?
Ich kenne es nur, wenn vor der Abfrage das Connection kommt.
Aber wie nun bei 2 Connections ?
Verfasst: 18.07.2006, 23:13
von net(t)worker
hmm... sind es eigene Server? Kannst du also die mysql Konfiguration bearbeiten?
Falls ja, würde eine Master/Slave Konfiguration dein problem perfekt lösen... dabei werden alle SQL Querys die den Datenbestand ändern automatisch auf der 2. Datenbank ausgeführt... und so hast du auf beiden Servern den selben datenbestand vorhanden...
hier mal mehr Infos:
https://www.ordix.de/ORDIXNews/3_2005/m ... ation.html
Verfasst: 18.07.2006, 23:18
von Ice Man
ne, hosting Pakete bei All-Inkl.com.
Verfasst: 18.07.2006, 23:51
von cren
Ice Man hat geschrieben:ok, und wie sage ich bei der Abfrage, diesmal conn1 und hier conn2 wählen ?
Ich kenne es nur, wenn vor der Abfrage das Connection kommt.
Aber wie nun bei 2 Connections ?
Code: Alles auswählen
resource mysql_query ( string Anfrage [, resource Verbindungs-Kennung] )
https://de.php.net/mysql_query
Verfasst: 19.07.2006, 06:10
von Fox Mulder
Verfasst: 19.07.2006, 11:32
von Ice Man
ok, nun hab ich ein Problem

Der Befehl ist mir neu.
Code: Alles auswählen
resource mysql_query ( string Anfrage [, resource Verbindungs-Kennung] )
Wie lautet da dann die Abfrag, so hier ?
Code: Alles auswählen
$conn2 = mysql_connect($host,$user,$pass) OR DIE( "Keine Verbindung zur Datenbank!");
$query2 = mysql_query ( "SELECT preis,id,status FROM artikel WHERE id='$seite[id]' " [, $conn2] );
Da spuckt er mir nur das hier aus.
Parse error: syntax error, unexpected '[' in /www/htdocs/space/check.php on line 63
Verfasst: 19.07.2006, 11:51
von net(t)worker
werf mal einen Blick in das PHP Manual...
dann wirst du schnell feststellen, dass Parameter, die in [] stehen optional sind, man die[] aber dann natürlich nicht mit eingibt....
Code: Alles auswählen
$conn2 = mysql_connect($host,$user,$pass) OR DIE( "Keine Verbindung zur Datenbank!");
$query2 = mysql_query ( "SELECT preis,id,status FROM artikel WHERE id='$seite[id]'" , $conn2 );
auch sollteste dir das komplette PHP Manual mal durchlesen, dann hast du jede Funktion schon mal gesehen und hast einen ersten Überblick was php eingebaut hat und was nicht....
Verfasst: 19.07.2006, 11:58
von Ice Man
Tausend dank

Nun geht es, und die Abfrage ist nun auch viel schneller
Wegen der Manual, ich hab bisher immer nur das mir angelernt, was ich gebraucht habe
