Ich versuche, einen mysqldump in eine neue Datenbank zu importieren. Wenn ich renne:
mysqldump -umydbuser -p --database testimport < database.dump
Ich erhalte folgende Ausgabe:
Enter password:
-- MySQL dump 10.11
--
-- Host: localhost Database: testimport
-- ------------------------------------------------------
-- Server version 5.0.75-0ubuntu10.3
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
--
-- Current Database: `testimport`
--
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `testimport` /*!40100 DEFAULT CHARACTER SET latin1 */;
USE `testimport`;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2010-03-09 17:46:03
Wenn ich mir jedoch die Testimport-Datenbank anschaue, gibt es keine Tabellen und keine Daten. Auch wenn ich eine funktionierende Datenbank exportiere durch:
mysqldump -umydbuser -p --database workingdatabase > test.sql
und dann importieren:
mysqldump -umydbuser -p --database testimport < test.sql
Ich bekomme die gleiche Ausgabe, aber nichts wird in die testimport
Datenbank importiert . Ich sehe keine Fehler in der Ausgabe und es wird die richtige Datenbank verwendet. Wenn ich die exportierte SQL-Datei beschneide, werden die create-Anweisungen für alle Tabellen und die Einfügungen für alle Daten angezeigt. Warum werden diese Daten nicht importiert? Gibt es zusätzliche Protokollierung, die ich sehen kann?
Denn wenn Sie Daten sichern (Backup), haben Sie "mysqldump" verwendet:
Bei der Wiederherstellung von Daten in der Datenbank müssen Sie jedoch nur "mysql" verwenden:
quelle
Ich hatte das gleiche Problem, exportiere einfach de DDL (nur Struktur) und exportiere die vollständige Datenbank, importiere dann zuerst die DDL-Datei und importiere dann die vollständige Datei mit demselben Satz
quelle
mysqldump
, es handelt sich nur um ein Exportwerkzeug.mysql
ist für den Import.