Datenbanktabellen einfach kopieren?

Kann ich Artikel oder Kundendaten Tabellen aus meiner aktuellen Oxid Datenbank in eine neue Datenbankdatei übernehmen, indem ich die entsprechenden Tabellen “einfach kopiere”?
Die alternative mit Ex- und Import von CSV Dateien zu arbeiten erscheint mir wesentlich komplizierter und Zeitaufwendiger.

Sicher, dass du wirklich die Datenbankdatei meinst und nicht eine andere Datenbank?
Die Datenbankdateien kann man nicht einfach so öffnen und irgendwas hinein kopieren.
Aber wenn du eine Tabelle in eine andere Datenbank kopieren kannst und willst, dann spricht natürlich nichts dagegen. Ist sogar besser

Am einfachsten gehts mit einem Dump. Gesamte Datenbank:

mysqldump -uroot -p datenbank1 > export.sql
mysql -uroot -p datenbank2 < export.sql

Einzelne Tabellen:

mysqldump -uroot -p datenbank1 tabelle1 tabelle2 > export.sql
mysql -uroot -p datenbank2 < export.sql

Was hast du denn genau vor?

Ich möchte die Kundendaten, als auch die Artikeldaten meiner aktuellen Oxid 4 Installation in meine neue Oxid 6 Installation übernehmen. Sind beide Datenbanken kompatibel, so dass ich tatsächlich einzelne Tabellen ganz einfach kopieren kann?

Nein.

https://docs.oxid-esales.com/developer/en/6.0/update/eshop_from_53_to_6/database.html

Also ist die Aussage von “vanilla_thunder” falsch?!
Ich zitiere: “Aber wenn du eine Tabelle in eine andere Datenbank kopieren kannst und willst, dann spricht natürlich nichts dagegen. Ist sogar besser”

Du hattest im Ausgangsposting nicht erwähnt, daß es sich bei der Quell- und Zieldatenbank um zwei verschiedene OXID-Versionen handelt.

1 Like

Das stimmt allerdings.

Du kannst den Tabelleninhalt mit SQL nach folgendem Schema übernehmen (dazu in die Zieldatenbank einloggen oder Zieldatenbank explizit angeben):

insert into zieldatenbank.tabelle(spalte1, spalte2, ...)
select spalte1, spalte2
from quelldatenbank.tabelle

Der ausführende User muss Insert-Berechtigung in der Zieldatenbank und Select-Berechtigung in der Quelldatenbank haben.
Es reicht, die relevanten Spalten zu übernehmen, da die Unterschiede zwischen 4.7 und 6 bei den meisten (Stammdaten-)Tabellen nicht allzu groß sind. Die muss man aber natürlich vorher prüfen.

Erst einmal vielen Dank für die bisherigen Informationen.

Der ursprüngliche Gedanke hier war ja der, keinen CSV Export-Import zu nutzen, da die Arbeit mit den Tabellen der Datenbank ggfls. einfacher ist.
Nachdem nun klar ist, dass das auf Grund der unterschiedlichen OXID Versionen doch nicht der Fall ist, kann vielleicht jemand einen Tipp für einen CSV Import Export für Kundendaten geben?
Der integrierte CSV Export bezieht sich ja nur auf Artikeldaten.

Warum nutzt du nicht das Migrationsscript?

Hallo,

ich mache mal Eigenwerbung…

Du brauchst ja beim Import nur das importieren, was Du brauchst.

mfg

Gert