mysqldump tidak membuat tabel atau mengimpor data apa pun

11

Saya mencoba mengimpor mysqldump ke database baru. Ketika saya menjalankan:

mysqldump -umydbuser -p --database testimport < database.dump

Saya mendapatkan output berikut:

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

Namun, ketika saya melihat basis data testimport, tidak ada tabel dan tidak ada data. Bahkan jika saya mengekspor database yang berfungsi dengan:

mysqldump -umydbuser -p --database workingdatabase > test.sql

lalu impor:

mysqldump -umydbuser -p --database testimport < test.sql

Saya mendapatkan output yang sama, tetapi tidak ada yang diimpor ke dalam testimportdatabase. Saya tidak melihat ada kesalahan dalam output dan menggunakan database yang tepat. Jika saya mengekor file .sql yang diekspor, saya melihat pernyataan buat untuk semua tabel dan sisipan untuk semua data. Mengapa data ini tidak diimpor? Apakah ada penebangan tambahan yang bisa saya lihat?

George
sumber

Jawaban:

26

Anda ingin menjalankan dump melalui klien mysql.

Contoh:

mysql -uroot -p testimport < database.dump

Warner
sumber
2
Alat berbeda untuk tujuan berbeda, Josh.
Warner
8

Karena ketika Anda membuang data (Cadangan) Anda menggunakan "mysqldump":

mysqldump -u user -p Database_name > SQL_dump_file.sql

Tetapi ketika mengembalikan data ke dalam database Anda hanya perlu menggunakan "mysql":

mysql -u user -p Database_name < SQL_dump_file.sql
Tommy
sumber
-2

Saya memiliki masalah yang sama, hanya ekspor de DDL (hanya struktur) dan ekspor database lengkap, lalu impor terlebih dahulu file DDL, selanjutnya impor file lengkap menggunakan kalimat yang sama

mysqldump -uroot -p 'database' < 'filename.sql'
kjim221
sumber
1
Anda tidak dapat mengimpor data dengan mysqldump, ini hanya alat ekspor. mysqluntuk impor.
Gerald Schneider