php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 15-08-2003, 11:15
Kicky
 Junior Member
Links : Onlinestatus : Kicky ist offline
Registriert seit: Dec 2002
Beiträge: 95
Kicky ist zur Zeit noch ein unbeschriebenes Blatt
Standard mysql dump einlesen

Hallo an alle,

seit 3 Tagen lese ich in Foren und kämpfe mit meinen backups. Ich erstelle einen dump und lege ihn in einem ordner auf meinem webspace ab. Nun möchte ich diesen dump wieder einlesen was ich versuche indem ich die sql datei öffne und einlese. Soweit so gut aber dann hänge ich und komme absolut nicht mehr weiter. ich wolle alles per mysql_query übergeben, aber das funktioniert so nicht. Bitte, bitte einen Rat. Seid so gut und denkt daran, das ich als Newbie den Rat nur verstehen, wenn er deutlich erklärt ist. Ich habe Stunden versucht mich durch etliche Beiträge zu wühlen, aber nichts passendes gefunden, was mir geholfen hätte. Danke vorab

Gruß Kicky
Mit Zitat antworten
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 15-08-2003, 11:19
BrainBug
 PHP Senior
Links : Onlinestatus : BrainBug ist offline
Registriert seit: Mar 2001
Ort: Raum Frankfurt
Beiträge: 1.110
BrainBug ist zur Zeit noch ein unbeschriebenes Blatt
Standard

bei MySQL kannst du lediglich EINEN SQL-Statement übergeben, d.h. du müßtest den eingelesen Dump-File auch zeilenweise durchgehen, wobei der CREATE-Befehl in Dump-Files ja oft mehrzeilig ausgegeben wird.

Andere Lösung ist, dass du über Shell-Zugriff den Dump-File direkt an MySQL übergibst:
PHP-Code:
<?
$cmd
="mysql -uMeinUser -pMeinPasswort Datenbankname < dumpfile.sql";
system($cmd);
?>
Mit Zitat antworten
  #3 (permalink)  
Alt 15-08-2003, 11:22
schmalle
  Ich Root, Du nix
Links : Onlinestatus : schmalle ist offline
Registriert seit: Jun 2001
Ort: Egelsbach FFM
Beiträge: 9.170
schmalle ist zur Zeit noch ein unbeschriebenes Blatt
Standard

sieht aus wie eine sql frage ... dann gehts da jetzt auch hin. erst gucken dann posten
__________________
h.a.n.d.
Schmalle

http://impressed.by
http://blog.schmalenberger.it



Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
... nur ohne :-)
Mit Zitat antworten
  #4 (permalink)  
Alt 15-08-2003, 11:39
BrainBug
 PHP Senior
Links : Onlinestatus : BrainBug ist offline
Registriert seit: Mar 2001
Ort: Raum Frankfurt
Beiträge: 1.110
BrainBug ist zur Zeit noch ein unbeschriebenes Blatt
Standard

sorry, natürlich muss der Pfad zum Dump-File auch stimmen oder das auszuführende Skript und der Dump-File im selben Verzeichnis liegen.
Mit Zitat antworten
  #5 (permalink)  
Alt 15-08-2003, 12:18
Kicky
 Junior Member
Links : Onlinestatus : Kicky ist offline
Registriert seit: Dec 2002
Beiträge: 95
Kicky ist zur Zeit noch ein unbeschriebenes Blatt
Standard

herzlichen Dank für deine Antworten.
Die Sache mit dem Pfad ist klaro, das hatte ich auch gleich gemacht, dennoch tut sich irgendwie nichts, ich bekomme allerdings auch keine Fehlermeldung. Ich werde noch mal weiter suchen woran es liegen kann, denn das wäre ja eine super einfache methode!

Gruß Kicky
Mit Zitat antworten
  #6 (permalink)  
Alt 15-08-2003, 12:34
Kicky
 Junior Member
Links : Onlinestatus : Kicky ist offline
Registriert seit: Dec 2002
Beiträge: 95
Kicky ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Sorry, ich bin es schon wieder (

ich habe folgendes eingegeben:

PHP-Code:

$cmd
="mysql -uxxxx -pxxxx xxxxxx < $path.$file";
$einlesen=system($cmd);
    if(isset(
$einlesen))echo "sichern ok"; else echo "sichern - Fehler"

Als Antwort bekomme ich sichern ok, aber tun tut er nichts. Hast du eine Idee woran das liegen kann?
Mit Zitat antworten
  #7 (permalink)  
Alt 15-08-2003, 12:39
BrainBug
 PHP Senior
Links : Onlinestatus : BrainBug ist offline
Registriert seit: Mar 2001
Ort: Raum Frankfurt
Beiträge: 1.110
BrainBug ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ich würde mir den Befehl $cmd erst mal ausgeben lassen und dann von der Shell aus testen.

und die Funktion system() wird dir so keinen vernünftigen Rückgabewert liefern. Dafür mußt du
PHP-Code:
system($cmd$einlesen);
if (
$einlesen==0) echo "sichern ok"; else echo "sichern - Fehler"
benutzen, d.h. im zweiten Parameter wird ein Rückgabewert von system() als int gespeichert. Ist der "0", dann ist alles fein, jeder andere Wert ist mit einer Fehlermeldung gleichzusetzen.

P.S.: die angegebene Datenbank, in welche der Dump-File eingelesen werden soll, muss existieren. Wenn dort schon Tabellen vorhanden sind, muss der Dump-File eine "DROP TABLE"-Behandlung integriert haben. sonst geht nix.
Mit Zitat antworten
  #8 (permalink)  
Alt 15-08-2003, 12:47
Kicky
 Junior Member
Links : Onlinestatus : Kicky ist offline
Registriert seit: Dec 2002
Beiträge: 95
Kicky ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Danke vorab,
die Datenbank existiert und Drop table ist auch im Dumpfile.
Nach deiner sehr verständliche Erklärung für die Rückmeldung von system() bekomme ich zumindest die Meldung, das es noch nicht funktioniert. Ist ja schon etwas, wenn auch nicht das was ich erreichen wollte. Ich werde also weiter suchen müssen.

Gruß Kicky
Mit Zitat antworten
  #9 (permalink)  
Alt 15-08-2003, 12:53
BrainBug
 PHP Senior
Links : Onlinestatus : BrainBug ist offline
Registriert seit: Mar 2001
Ort: Raum Frankfurt
Beiträge: 1.110
BrainBug ist zur Zeit noch ein unbeschriebenes Blatt
Standard

wenn du den Befehl über die Shell ausführst, erhälst du eigentlich eine richtige Fehlermeldung, d.h. dann weißt du auch, woran es liegt...
Mit Zitat antworten
  #10 (permalink)  
Alt 15-08-2003, 12:54
Kicky
 Junior Member
Links : Onlinestatus : Kicky ist offline
Registriert seit: Dec 2002
Beiträge: 95
Kicky ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wer schon rot, bitte nicht böse sein das ich störe, aber
könnte es

a) daran liegen das der dump nicht einwandfrei ist oder


b) ich dumpe einzelne tabellen und möchte auch einzelne tabellen wieder einlesen! Kann das mein Fehler bzw. der Haken sein?


Gruß Kicky
Mit Zitat antworten
  #11 (permalink)  
Alt 15-08-2003, 13:02
BrainBug
 PHP Senior
Links : Onlinestatus : BrainBug ist offline
Registriert seit: Mar 2001
Ort: Raum Frankfurt
Beiträge: 1.110
BrainBug ist zur Zeit noch ein unbeschriebenes Blatt
Standard

a) kann der Fehler sein
b) nein, das ist egal. du kannst auch einzelne Tabellen mittels Dump sichern und wieder einspielen.

hast du die Struktur deines Dump-files geprüft?

z.B. sollte immer

DROP TABLE IF EXISTS tabellenname;

benutzt werden, sonst steigt MySQL gleich aus, wenn versucht wird, eine Tabelle zu droppen, die es nicht gibt.

Fehler gibt's auch, wenn irgendwo ein Drop fehlt und das CREATE fehlschlägt.

Wie gesagt, versuch erstmal dein DUMP-File über die Shell einzuspielen. Wenn das klappt, liegt der Fehler woanders.

P.S.: du brauchst nicht rot werden. Wenn ich kein Bock habe oder keine Zeit, dann werde ich auch nicht so schnell antworten. Dann tut's eben ein anderer. hier im Forum findet sich immer jemand, der einem hilft.
Mit Zitat antworten
  #12 (permalink)  
Alt 15-08-2003, 13:53
Kicky
 Junior Member
Links : Onlinestatus : Kicky ist offline
Registriert seit: Dec 2002
Beiträge: 95
Kicky ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zunächst noch mal herzlichen Dank für Deine supertolle Unterstützung. Hoffentlich schaffe ich es auch mal anderen helfen zu können. (Dafür muss ich wohl noch vieeeel lernen)
Ich bin mit der shell nicht wirklich klargekommen und habe daher meinen dump per copy und past in phpmyadmin eingefügt zu testzwecken. Das funktioniert einwandfrei. Dies müsste ja bedeuten, dass der dump ok ist.
Falls dir noch etwas dazu einfällt bin ich sehr dankbar, ich werde wohl auch weiter grübeln.

Gruß Kicky

P.S. Kann es irgendetwas mit zugriffsrechten zu tun haben? Aber ich dachte dann müsste ich fehler erhalten. Es ist nur ein normaler Webspace bei Levanzo mit PHP MYSQL etc.
Mit Zitat antworten
  #13 (permalink)  
Alt 15-08-2003, 14:04
BrainBug
 PHP Senior
Links : Onlinestatus : BrainBug ist offline
Registriert seit: Mar 2001
Ort: Raum Frankfurt
Beiträge: 1.110
BrainBug ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ach herrje.

Dann kann es natürlich gut sein, dass

1. der Befehl "mysql" nicht gefunden wird oder du über Shell-ebene nicht ausführen darfst oder

2. dein PHP-User keine Leserechte für den Dump-File hat (wie wurde der erzeugt?)

Sollte eines von beiden zutreffen, mußt du den komplizierteren Weg gehen und den Dump-File zeilenweise abarbeiten.

Hast du denn für deinen Webspace-Account einen telnet-Zugang? Oder SSH?
Mit Zitat antworten
  #14 (permalink)  
Alt 15-08-2003, 14:06
Kicky
 Junior Member
Links : Onlinestatus : Kicky ist offline
Registriert seit: Dec 2002
Beiträge: 95
Kicky ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Halloele,

ich fürchte ich habe nichts dergleichen. Wenn ich es hätte sollte ich es ja eigentlich wissen.
Mit Zitat antworten
  #15 (permalink)  
Alt 15-08-2003, 14:09
Kicky
 Junior Member
Links : Onlinestatus : Kicky ist offline
Registriert seit: Dec 2002
Beiträge: 95
Kicky ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Lese und schreibrechte sind gegeben, die habe ich ja über chmot eingestellt, das funktioniert aber ich fürchte ich habe keinen shell zugriff. Ich weiss zwar nicht wie ich mich je revanchieren könnte, aber hast du noch einen Tip für das zeilenweise auslesen? Ich habe schon etliche Varianten mit for schleifen versucht, aber wohl immer irgendwo einen Fehler.

Gruß Kicky
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

PHP Marktplatz-Software
PHP Marktplatz-SoftwareEs hat sich viel getan! Die neue Version 7.5.9 unserer PHP Marktplatz-Software ebiz-trader steht ab sofort zur Verfügung.

28.10.2019 | Berni

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni


 

Aktuelle PHP Scripte

SMT

Server Monitoring & Management Tool Das SMT wurde von einem Administrator für Administratoren entwickelt, es vereinfacht den Alltag in der klassischen Administration und Verwaltung. Mit dem SMT kannst Du alle Deine Server & Dienste verwalten und überwach

04.09.2020 palle_1977 | Kategorie: PHP
numaeks Web-Farbmixer

Die RGB-Farben lassen sich hier auf unterschiedliche Weise mischen. Zur Einstellung werden auch die Dreh- und Schieberegler mit Canvas verwendet. Gespeichert werden die Farben in einem Cookie.

04.09.2020 numaek | Kategorie: JAVASCRIPT/ Tools
phplinX-Erotikportal 4 ansehen phplinX-Erotikportal 4

Erweiterbares Portal speziell für Erotik mit den Modulen Webkatalog, Bannermanagement und Kleinanzeigenmarkt. Sämtliche Module können über einen einzigen Adminbereich verwaltet werden.

18.06.2020 Cosinus14 | Kategorie: PHP/ Anzeigenmarkt
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:44 Uhr.