ERLEDIGT
JA
JA
ANTWORTEN
2
2
ZUGRIFFE
232
232
EMPFEHLEN
-
05.02.12 19:13 #1
Hallo liebe Community,
ich habe momentan 3 .sql Datein vorliegen mit einer Größe > 8Gb. Da das öffnen dieser Dateien ewig dauert. Hab ich nach einer möglichkeit gesucht, gewünschte Inhalte einfach via fwrite einzubinden.
Problem:
In der .sql sind Backups von mehreren Datenbanken enthalten. Am Anfang und am Ende soll nun das FOREIGN_KEY_CHECKS auf 0 gesetzt werden.
Klingt einfach. Ich habe zunächst die .sql Datei mit fopen("datei.sql","c+"); geöffnet und den Datenzeiger an Anfang gesetzt. Nun dachte ich mir ich schreibe kompletten Inhalt einfach in eine Variable ( $inhalt ).
Der neue Inhalt also: SET FOREIGN_KEY_CHECKS=0; steckt in der Variable $key.
Nun habe ich beide zusammengeführt
$neuerinhalt = $key.$inhalt;
Das Problem hierbei ist aber, dass zwar die Variable $key in die Datei geschrieben wird.
Jedoch wird der Vorhandene Code in der .sql Datei einfach überschrieben.
Gibt es hierfür eine Lösung?
Viele GrüßeOhooo, was ist das? Ein Türknopf? Ausgezeichnet!
-
Hi
mal langsam:
Du willst 8GB Sql per PHP in einen String laden und noch was anhängen,
um es dann DB-mäßig ausführen zu lassen?
Und das soll mit fwrite passieren?
Das ist bestenfalls verrückt.
a) fwrite schreibt nichts aus einer Datei in einen String,
sondern vom String in die Datei.
Du suchst fread.
b) 8GB in einen String...viel Spaß.
c) MySQL über PHP ist langsamer als MySQL allein.
d) Vor allem bei solchen Datenmengen lohnt sich
daher ein Import über die MySQL-Programme.Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
05.02.12 22:27 #3
Hallo,
ich glaube das kam falsch rüber.
Ich habe mehrere .sql Datein die > 8Gb groß sind.
In denen soll nun noch die Fremdschlüssel überprüfung auf 0 gesetzt werden.
Nicht mehr und nicht weniger.
Hier mal mein Ergebniss:
Viele GrüßePHP-Code:$t = "SET FOREIGN_KEY_CHECKS=0;\n";
$t.= "SET SQL_MODE='NO_AUTO_VALUE_ON_ZERO';\n";
$t.= "SET time_zone = '+00:00';\n";
$array = file("daffta.sql");
array_unshift($array, $t);
$string = implode("", $array);
file_put_contents("daffta.sql", $string);
$inhalt = file_get_contents("daffta.sql");
file_put_contents("daffta.sql", $inhalt .= "SET FOREIGN_KEY_CHECKS=1;");
Ohooo, was ist das? Ein Türknopf? Ausgezeichnet!
Ähnliche Themen
-
Animationsgeschwindigkeit am Anfang und Ende zu langsam
Von Nils_13 im Forum Cinema 4DAntworten: 2Letzter Beitrag: 03.04.09, 11:51 -
Der Anfang vom Ende
Von mAu im Forum FotografieAntworten: 7Letzter Beitrag: 26.10.07, 00:29 -
slidemenu am anfang und ende anhalten
Von PeterMcB im Forum Flash PlattformAntworten: 4Letzter Beitrag: 01.12.06, 12:47 -
Anfang und Ende definieren?
Von asdfg im Forum PHPAntworten: 9Letzter Beitrag: 03.04.06, 17:30 -
Objekt am Anfang und Ende langsamer
Von Xo-mate im Forum Cinema 4DAntworten: 12Letzter Beitrag: 05.03.05, 20:23





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren