Technologieaustausch

MySQL-Importtestdaten

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Dies ist im Betrieb und bei der Wartung häufig der Fall: MySQL ändert den Tabellennamen, erstellt dieselbe Tabelle ohne Daten und kopiert ein paar Daten aus der alten Tabelle hinein.

Tabellennamen ändern

RENAME TABLE old_table_name TO new_table_name;

Dadurch wird die ursprüngliche Tabelle ersetztold_table_nameUmbenennen innew_table_name

Erstellen Sie eine identische Tabellenstruktur, jedoch ohne die Daten

CREATE TABLE new_table LIKE old_table_name;

Dadurch wird eine Datei mit dem Namen erstelltnew_tableeine neue Tabelle, deren Struktur auf basiertold_table_nameStruktur, es werden jedoch keine Daten kopiert.

Kopieren Sie mehrere Daten aus der alten Tabelle in die neue Tabelle

INSERT INTO new_table SELECT * FROM old_table_name LIMIT number_of_rows;

Dies beginnt abold_table_nameVor der Auswahlnumber_of_rowsStreifenDateneinfügungankommennew_table Mitte.Du brauchstnumber_of_rowsErsetzen Sie es durch das, was Sie möchtenKopierenReihen.

Bitte stellen Sie sicher, dass Sie Ihre Daten sichern, bevor Sie diese Vorgänge durchführen, um unvorhergesehenen Problemen vorzubeugen.Wenn Sie sich nicht sicher sind, beginnen Sie mit aTest UmgebungProbieren Sie diese Befehle aus.

Hier ist ein Beispiel für alle oben genannten Schritte zusammen:

  1. -- 假设原来的表名为 orders
  2. -- 第一步:重命名原来的表
  3. RENAME TABLE orders TO orders_backup;
  4. -- 第二步:创建一个新的空表,结构和原来的表一样
  5. CREATE TABLE orders LIKE orders_backup;
  6. -- 第三步:复制原表的前10条数据到新表中
  7. INSERT INTO orders SELECT * FROM orders_backup LIMIT 10;

Diese Vorgänge sollten im MySQL-Befehlszeilentool oder einem anderen Datenbankverwaltungstool ausgeführt werden, das eine SQL-Schnittstelle bereitstellt. Stellen Sie sicher, dass Sie über ausreichende Berechtigungen zum Ausführen dieser Befehle verfügen.