Announcement

Collapse
No announcement yet.

[erledigt] Separate Datenbank erstellen/speichern/exportieren

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • [erledigt] Separate Datenbank erstellen/speichern/exportieren

    Hallo, ich möchte eine MySQL-Datenbank als einzelne Datei bzw. Ordner speichern. Zweck: sie soll im Internet als Beispiel-DB hochgeladen werden und bei anderen Anwendern heruntergeladen und als fertige Datenbank direkt angemeldet und genutzt werden können. Dummerweise habe ich für meine Installation InnoDB gewählt, sodass die Datenbank Teil der Datei ibdata1 ist. Was kann ich machen?

    Ich nutze folgende Installation:
    MySQL Workbench CE for Windows version 5.2.42 revision 9752
    Configuration Directory: C:\Users\sysver\AppData\Roaming\MySQL\Workbench
    Data Directory: C:\Program Files (x86)\MySQL\Workbench 5.2 CE
    Cairo Version: 1.8.8
    OS: Microsoft Windows 7 Home Premium Edition Service Pack 1 (build 7601), 64-bit
    mysqladmin: Ver 8.42 Distrib 5.5.27, for Win64 on x86
    Es ist kein Problem, die Datenbank separat neu zu erzeugen, weil das SQL-Skript dazu getrennt vorliegt. Aber auch bei mysqladmin kann ich nicht erkennen, wie die Datenbank mit myISAM erzeugt und gespeichert werden könnte.

    Für Hinweise wäre ich sehr dankbar! Jürgen
    Zuletzt editiert von Jürgen Thomas; 02.10.2012, 18:45. Reason: Frage geklärt und erledigt

  • #2
    Originally posted by Jürgen Thomas View Post
    Hallo, ich möchte eine MySQL-Datenbank als einzelne Datei bzw. Ordner speichern. Zweck: sie soll im Internet als Beispiel-DB hochgeladen werden und bei anderen Anwendern heruntergeladen und als fertige Datenbank direkt angemeldet und genutzt werden können. Was kann ich machen?
    Den Dump zur Verfügung stellen. Das war jetzt easy, oder?

    Andreas

    Comment


    • #3
      Originally posted by akretschmer View Post
      Den Dump zur Verfügung stellen. Das war jetzt easy, oder?
      Meinst du den Weg über Data Export? Dann kann ich das ursprüngliche SQL-Skript zum Erstellen der Datenbank nehmen. Ich will aber die fertige Datenbank hochladen. So einfach geht es also doch nicht. Jürgen

      Comment


      • #4
        Hallo,
        Originally posted by Jürgen Thomas View Post
        ...Aber auch bei mysqladmin kann ich nicht erkennen, wie die Datenbank mit myISAM erzeugt und gespeichert werden könnte.
        Die verwendete Engine ist keine Option der Datenbank sondern der Tabelle. Die Engine kann beim CREATE-Table-Statement als <table_option> angegeben werden. Fehlt diese Angabe, wird die Standard-Engine aus der my.cnf verwendet und das ist bei einer Standardinstallation eben INNODB.
        [highlight=sql]
        CREATE TABLE <tablename> (
        ...
        ) ENGINE=MyISAM;
        [/highlight]

        Gruß Falk
        Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

        Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

        Comment


        • #5
          Hallo Falk, das war ein für mich wichtiger Hinweis, und nach vielen neuen Versuchen habe ich festgestellt: Die Verzeichnisse und Dateien werden ganz unterschiedlich gespeichert:
          • bei INNODB unter c:\Users\sysver\AppData\Roaming\MySQL\ibdata1
          • bei MyISAM unter c:\ProgramData\MySQL\MySQL Server 5.5\data\

          Bisher hatte ich die Beschreibungen so verstanden, dass die Daten im selben Verzeichnis gespeichert würden. Es sieht so aus, dass für alle Datenbanken die Definitionen doppelt vorhanden sind. Außerdem wundere ich mich, dass die Daten-Dateien *.myd und Indizes *.myi sehr klein sind (aber diese Verwunderung liegt auch daran, dass z.B. bei Firebird eine neue, fast leere Datenbank schon sehr groß ist).

          Aber wenigstens ist mein eigentliches Problem gelöst; ich kann das Verzeichnis jetzt als Beispieldatenbank erstellen und hochladen. Danke für die Hilfe! Jürgen

          Comment


          • #6
            Ich erlaube mir noch einige kleine Anmerkungen zum Thema, obwohl du es schon als erledigt markiert hast;
            1. Der Ablageort der Datafiles hängt von der Konfiguration ab - das kann sich ändern.
            2. "Beispieldatenbanken" als Datafiles bereitzustellen ist keine so gute Idee. Das wird massive Probleme geben (32/64bit, Konfiguration..). Zudem werden durch die Datafiles keine User/Berechtigungen angelegt. Für solche Aktionen sollte man eher einen Dump (mysqldump) bereitstellen, resp. komplette SQL-Scripts. Zudem ist das Volumen dieser Datafiles wesentlich grösser als bei einem Dump.

            Comment


            • #7
              Hallo Michael, ich verstehe deine Bedenken und würde ihnen gerne folgen. Beim Wiki-Buch Einführung in SQL gab es ursprünglich tatsächlich nur Skripte zum Erstellen der Beispieldatenbank. Aber angesichts der Unterschiede bei den SQL-Dialekten und DBMS-Versionen traten sehr häufig Fehler auf, deren Beseitigung einem Anfänger nicht zugemutet werden konnten. Deshalb wollte ich auch fertige Datenbanken zur Verfügung stellen.

              Inzwischen habe ich festgestellt, dass das MySQL-Skript problemlos durchläuft. Hier hätte ich auf die fertige Datenbank verzichten können. Aber so sieht die Download-Möglichkeit im Buch etwas besser aus. Jürgen

              Comment

              Working...
              X