Localhorst
Keks-Verteiler
- Registriert
- 12 Nov. 2014
- Beiträge
- 1.941
Hallo Leute,
in bin gerade am verzweifeln, da ich seit 10 Stunden an ein Problem sitze und es einfach nicht gelöst bekomme. Folgendes ist der Sachverhalt:
Es geht um Open FOG, ein Projekt bei dem man Computer imagen kann, dieses setzt auf PHP und MySQL. Jetzt haben wir in unserer Firma einen kleinen Sonderfall, bei dem die integrierte Replikation von FOG nicht nutzen können und selber schreiben müssen. Entsprechend gibt es dann auch zwei MySQL Datenbanken, eine bei dem Server der hier steht und eine an dem Ort, wohin Repliziert werden soll. Jetzt stehe ich tatsächlich vor der Aufgabe, wie ich eine Zeile einer Tabelle auf die andere hinmigriere. Folgende Struktur hat die Tabelle:
und bei der Zieldatenbank ist es genau das selbe. Ich hatte jetzt mehrere Ideen. Als erstes über PHP, da habe ich mir alle werte über
in eine Variable geben lassen, fetch_array laufen lassen und wollte dann inserten. Pustekuche, wollte er nicht.
Zweite Idee, über shell_exec lasse ich ein Bash Skript laufen, dass
ausgibt und dann im nächsten Schritt wieder importiert. Auch das geht nicht, manchmal habe ich falsch gequotet, manchmal falsche Variablen gesetzt. Ich bin am Ende Ich habe noch nie PHP gecoded und nach 10 Stunden try and error, wovon 3 Stunden nun auf diese scheiss Datenbank Übertragung draufgingen platzt mir der Kopf und hoffe auf Hilfe von euch
Ich kann mir sehr gut vorstellen, dass ich es bereits im PHP Skript hinbekommen würde alle Werte per SELECT in ein Array zu schreiben, und es dann in der zweiten DB ein INSERT / UPDATE zu machen.
Liebe grüße
Stephan
in bin gerade am verzweifeln, da ich seit 10 Stunden an ein Problem sitze und es einfach nicht gelöst bekomme. Folgendes ist der Sachverhalt:
Es geht um Open FOG, ein Projekt bei dem man Computer imagen kann, dieses setzt auf PHP und MySQL. Jetzt haben wir in unserer Firma einen kleinen Sonderfall, bei dem die integrierte Replikation von FOG nicht nutzen können und selber schreiben müssen. Entsprechend gibt es dann auch zwei MySQL Datenbanken, eine bei dem Server der hier steht und eine an dem Ort, wohin Repliziert werden soll. Jetzt stehe ich tatsächlich vor der Aufgabe, wie ich eine Zeile einer Tabelle auf die andere hinmigriere. Folgende Struktur hat die Tabelle:
Code:
`imageID` int(11) NOT NULL,
`imageName` varchar(40) NOT NULL,
`imageDesc` longtext NOT NULL,
`imagePath` longtext NOT NULL,
`imageProtect` mediumint(9) NOT NULL,
`imageMagnetUri` longtext NOT NULL,
`imageDateTime` timestamp NOT NULL DEFAULT current_timestamp(),
`imageCreateBy` varchar(50) NOT NULL,
`imageBuilding` int(11) NOT NULL,
`imageSize` varchar(255) NOT NULL,
`imageTypeID` mediumint(9) NOT NULL,
`imagePartitionTypeID` mediumint(9) NOT NULL,
`imageOSID` mediumint(9) NOT NULL,
`imageFormat` char(1) DEFAULT NULL,
`imageLastDeploy` datetime NOT NULL,
`imageCompress` int(11) DEFAULT NULL,
`imageEnabled` enum('0','1') NOT NULL DEFAULT '1',
`imageReplicate` enum('0','1') NOT NULL DEFAULT '1',
`imageServerSize` bigint(20) UNSIGNED NOT NULL DEFAULT 0
und bei der Zieldatenbank ist es genau das selbe. Ich hatte jetzt mehrere Ideen. Als erstes über PHP, da habe ich mir alle werte über
Code:
SELECT * FROM `images` WHERE `imageID`=2
Zweite Idee, über shell_exec lasse ich ein Bash Skript laufen, dass
Code:
mysql --user=foga --password=2123135 --database=fog --host=127.0.0.1 --execute="SELECT * FROM `images` WHERE `imageID`=2 INTO OUTFILE '/var/lib/transfer/sql.tmp' FIELDS TERMINATED BY ',';"
ausgibt und dann im nächsten Schritt wieder importiert. Auch das geht nicht, manchmal habe ich falsch gequotet, manchmal falsche Variablen gesetzt. Ich bin am Ende Ich habe noch nie PHP gecoded und nach 10 Stunden try and error, wovon 3 Stunden nun auf diese scheiss Datenbank Übertragung draufgingen platzt mir der Kopf und hoffe auf Hilfe von euch
Ich kann mir sehr gut vorstellen, dass ich es bereits im PHP Skript hinbekommen würde alle Werte per SELECT in ein Array zu schreiben, und es dann in der zweiten DB ein INSERT / UPDATE zu machen.
Liebe grüße
Stephan