kostenloser Webspace werbefrei: lima-city


DBs Expotieren

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    k*****i

    ja moin, wie ich in phpmyadmin das machen aknnw eis cih aber, wie kann cih es mit eigenen befehlen auf ner php seite machen das die db expotiert wird und als sql datei in dem selben ordner ges?eichert wird?ich scheitere leider schon beim ersten, das zweite w?re dann weniger schwer!

    MfG

    Kraeusi
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. f*******c

    mh das w?rde mich auch interessieren...wenn man das dann per cronjob macht w?re man sehr sicher vor evt. serverausf?llen :)
  4. 0******a

    Vorab m?chte ich anmerken, dass ihr das Ex- und Importieren von Backups nur entweder mit phpMyAdmin oder den MySQL-Tools (http://www.lima-city.de/tutorials?m=show&id=1378) machen solltet.

    @topic:
    Um das mit PHP selbst zu machen, musst du so ziemlich das selbe machen wie myPHPAdmin. Auf die richtige Datenbank verbinden, dann mit "show tables" alle Tabellen in der DB anzeigen lassen. F?r jede Tabelle dann "desribe Tabellenname" aufrufen, um die Struktur der Tabelle zu haben. Dann alle bereits eingetragenen Werte aus der Tabelle lesen.
    Die Daten, die man mit "show tables" und "describe Tabellenname" bekommt, benutzt man um ein die CREATE TABLE-Statements aufzubauen. Die Daten, die man aus den Tabelle liest benutzt man, um INSERT INTO-Statements aufzubauen. Voila, fertig das SQL-Backup, das auch wieder eingespielt werden kann.
  5. Autor dieses Themas

    k*****i


    Vorab m?chte ich anmerken, dass ihr das Ex- und Importieren von Backups nur entweder mit phpMyAdmin oder den MySQL-Tools (http://www.lima-city.de/tutorials?m=show&id=1378) machen solltet.

    @topic:
    Um das mit PHP selbst zu machen, musst du so ziemlich das selbe machen wie myPHPAdmin. Auf die richtige Datenbank verbinden, dann mit "show tables" alle Tabellen in der DB anzeigen lassen. F?r jede Tabelle dann "desribe Tabellenname" aufrufen, um die Struktur der Tabelle zu haben. Dann alle bereits eingetragenen Werte aus der Tabelle lesen.
    Die Daten, die man mit "show tables" und "describe Tabellenname" bekommt, benutzt man um ein die CREATE TABLE-Statements aufzubauen. Die Daten, die man aus den Tabelle liest benutzt man, um INSERT INTO-Statements aufzubauen. Voila, fertig das SQL-Backup, das auch wieder eingespielt werden kann.


    jaor, also danke, f?r das tut auch wenn ich das nciht suche, es ist schon eher das was du hier beschrieben hast!
    und das kklingt cschwirig aber ich werde es mal probieren, l?ute die interresse haben mir dabei zu helfen k?nnen sich gerne hier oder bei mir melden da is es ja einfacher wenn man mehrere sind sowas zu amchen!


    MfG

    Kraeusi
  6. f*******c

    mh wenn du das schaffst will ich das auch ^^

    funktioniert das auf lima?:
    Backup Table funktioniert ?hnlich wie ?select into outfile?, ist aber vom Befehl her klarer strukturiert: Der Anwender gibt direkt im SQL-Statement an, was er sichern m?chte. Die Option ?backup table? erh?lt als Parameter eine oder mehrere Tabelle sowie den Namen einer Datei, in die die Tabellen gesichert werden sollen: ?backup table Tabelle1 [,Weitere] to 'Datei'?. Mit diesem Befehl lassen sich mehrere Tabellen gleichzeitig sichern, die mit einem Komma voneinander getrennt anzugeben sind.

    In aktuellen MySQL-Dokumentationen ist zwar zu lesen, dass Backup Table veraltet sei und die Entwickler gerade an einer neuen Variante arbeiten. Diesen Hinweis kann der Anwender jedoch getrost ignorieren, denn die Option - ob veraltet oder nicht - funktioniert ganz hervorragend. Der gro?e Vorteil im Vergleich zu ?select into outfile? ist, dass sie mehrere Tabellen gleichzeitig sichert. Sie verlangt jedoch wie die Select-Funktion einen Shellzugriff auf den MySQL-Server.

    Edit1: Ok: Access denied. You need the FILE privilege for this operation
    Edit2: http://www.linux-magazin.de/Artikel/ausgabe/2004/05/mysql/mysql.html
  7. 0******a

    H?ttest nur mal vorher fragen m?ssen, dann h?tte ich dir das gleich gesagt. Man hat hier nur tierische eingeschr?nkte Rechte auf seinen DBs. Na ja, so hast du auch mal deine Finger bisschen beim Schreiben bewegt *gg*
  8. f*******c

    -.- Joar aber ich hab auf deren Server die php version gefunden :) ich teste die gleich mal ^^ ich melde mich dann wieder hier ^^ Das ist dann allerdings eine DB -> DB Version :S
  9. Autor dieses Themas

    k*****i


    -.- Joar aber ich hab auf deren Server die php version gefunden :) ich teste die gleich mal ^^ ich melde mich dann wieder hier ^^ Das ist dann allerdings eine DB -> DB Version :S

    ok bin schon gespannt, bitte auch dann ebi mir melden!

    0-checka schrieb:
    H?ttest nur mal vorher fragen m?ssen, dann h?tte ich dir das gleich gesagt. Man hat hier nur tierische eingeschr?nkte Rechte auf seinen DBs. Na ja, so hast du auch mal deine Finger bisschen beim Schreiben bewegt *gg*


    das war net zu mir oder?

    EDIT 0-checka
    Nee, wars nicht

  10. f*******c

    mh ich hab ?berall meine daten eingegeben und den teil mit dem "teil" backup weggelassen und daf?r nur den fullbackupteil beachtet. Nun habe ich folgenden fehler -.-

    UPDATE FULL begin
    Updating: 4
    query error: insert into game_benutzer(nummer, user_anmeldedatum) values( 1, 2005-05-23 00:00:00)

    code teil beim query
    $num = mysql_num_rows( $r);
    print "Updating: $num <br>";

    for( $i=0; $i<$num; $i++)
    {
    $row = mysql_fetch_row( $r);
    $qs = "insert into game_benutzer(nummer, user_anmeldedatum) values( $row[0], $row[1])";
    $ins = mysql_db_query( "|||Datenbankname|||", $qs, $cL);
    if( ! $ins)
    {
    print "query error: $qs <br>";
    return;
    }
    }

    print "DONE ! <br>";
  11. Autor dieses Themas

    k*****i

    query error: insert into game_benutzer(nummer, user_anmeldedatum) values( 1, 2005-05-23 00:00:00)

    die werte sind falsch, also das datum und die uhrzeit, cih denke da liegt der fehler, deshalbt wird es geblockt!

    MfG

    Kraeusi
  12. f*******c

    was soll das hei?en die werte sind falsch? die beiden tabellen isnd ja schlie?lich exakt gleich aufgebaut Oo
  13. Autor dieses Themas

    k*****i


    was soll das hei?en die werte sind falsch? die beiden tabellen isnd ja schlie?lich exakt gleich aufgebaut Oo


    schaue doch aml die werte sind falsch cih beziehe das darauf!



    firemanic schrieb:
    mh ich hab ?berall meine daten eingegeben und den teil mit dem 'teil' backup weggelassen und daf?r nur den fullbackupteil beachtet. Nun habe ich folgenden fehler -.-

    UPDATE FULL begin
    Updating: 4
    query error: insert into game_benutzer(nummer, user_anmeldedatum) values( 1, 2005-05-23 00:00:00)

    code teil beim query
    $num = mysql_num_rows( $r);
    print 'Updating: $num <br>';

    for( $i=0; $i<$num; $i++)
    {
    $row = mysql_fetch_row( $r);
    $qs = 'insert into game_benutzer(nummer, user_anmeldedatum) values( $row[0], $row[1])';
    $ins = mysql_db_query( '|||Datenbankname|||', $qs, $cL);
    if( ! $ins)
    {
    print 'query error: $qs <br>';
    return;
    }
    }

    print 'DONE ! <br>';


    bei $row[0], $row[1] muss da ein ?bergabe fehler sien, doer ein falscher ausgabe fehler!

    MfG

    KRaeusi

    ps.: ich habe dir dohc per pn ein komplettes skript geshcickt was is damit?=
  14. 0******a

    Das Datum muss als String ?bergeben werden, also in Hochkommata oder Anf?hrungsstriche einschliessen.
  15. f*******c

    jaja genau daran arbeite ich immoment ^^ ich habe den erste teil weggelassen, weil im prinzip 2 skripte sind..eins mit dem man teil backups machen kann und eins f?r ganze backkups. Den ersten Teil brauch ich nich ^^ So und beim 2. steckt dieser Teil dazwischen -.- mh aber nummer 1 stimmt und das datum steht auch in meiner lima-city db :S

    Edit: oh da war einer schneller ^^
    Edit2: danke ^^ es geht ^^ soll ich code hier reinposten? [als frage an die mods gerichtet ob ich das darf Oo]
  16. Autor dieses Themas

    k*****i

    ja ich bitte darum!^^

    Danke im vorraus!
  17. f*******c

    sch?n ^^ dann mal los ^^ also ich w?rde die datei einfach backup.php nennen ^^

    alles mit der 1 sind die Daten von wo aus das Backup gemacht wird
    alles mit der 2 sind die Daten wohin das Backup gamacht werden soll

    mein Tipp ist das bei cronjobs.de einzutragen ^^ dann kriegt ihr immer eure Backups....und ihr vergesst es nich! Die Tabelle muss auf beiden Datenbanken existieren und gleich sein!

    code:
    ---------------------------------------------------------------
    <?
    function UpdateFull()
    {
    print "UPDATE FULL begin<br>";

    // build a connection to the remote mysql
    $cR = mysql_connect( "HOST1", "NAME1", "PW2");
    if( ! $cR)
    {
    print 'No remote connection';
    return;
    }

    // build a local connection
    $cL = mysql_connect( "HOST2", "NAME2", "PW2");
    if( ! $cL)
    {
    print 'no local connection.';
    return;
    }

    // delete the local table
    $strDel = "delete from TABELLE";
    $r = mysql_db_query( "DB2", $strDel, $cL);
    if( ! $r)
    {
    print "Fehler bei delete: qs: $strDel <br>";
    return;
    }

    // get everything from remote
    $qs = "select * from TABELLE";
    $r = mysql_db_query( "DB1", $qs, $cR);
    if( ! $r)
    {
    print "query error: $qs <br>";
    return;
    }

    $num = mysql_num_rows( $r);
    print "Updating: $num <br>";

    for( $i=0; $i<$num; $i++)
    {
    $row = mysql_fetch_row( $r);
    $qs = "insert into game_benutzer(FELD1, FELD2 ) values( $row[0],'$row[1])";
    $ins = mysql_db_query( "DB2", $qs, $cL);
    if( ! $ins)
    {
    print "query error: $qs <br>";
    return;
    }
    }

    print "DONE ! <br>";

    }

    ?>

    <html><head></head><body>

    <?php UpdateFull(); ?>

    </body></html>
    --------------------------------------------
  18. Autor dieses Themas

    k*****i

    danke danke, jetzt musste mri aber auch support liefern!

    UPDATE FULL begin
    Fehler bei delete: qs: delete from TABELLE

    was bedeuted das?
  19. f*******c

    les nochmal ich habs ver?ndert zur ?bersicht ^^
  20. Autor dieses Themas

    k*****i

    oha da muss ich aj viel anpassne, und auch meine sachen nunja das mach cih morgen, anch der arbeit, jetzt gehe ich pennen sage dir morgen obs geklappt hat!

    thx trozdem!

    MfG

    Kraeusi
  21. f*******c


    Das Datum muss als String ?bergeben werden, also in Hochkommata oder Anf?hrungsstriche einschliessen.


    unter wlechen umst?nden muss denn da ein ' hin und unter welchen nicht?

    EDIT: So ich habe das mal als Tutorial eingetragen, dann wirds jeder finden, hoffe ich mal ^^
  22. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!