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?

Jawaban:


26

Anda ingin menjalankan dump melalui klien mysql.

Contoh:

mysql -uroot -p testimport < database.dump


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

-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'

1
Anda tidak dapat mengimpor data dengan mysqldump, ini hanya alat ekspor. mysqluntuk impor.
Gerald Schneider
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.