1
我有備份通過cron作業每天晚上大MySQL數據庫:mysqldump的文件導入緩慢相比,phpMyAdmin的文件
/usr/bin/mysqldump --opt USERNAME -e -h SERVERNAME -uUSER -pPASSWORD > /home/DIRECTORY/backup.sql
它運作良好 - 除非我去「恢復」的sql文件在另一臺服務器上 - 它需要很長時間(大約3分鐘)
這與使用phpMyAdmin相反 - 如果我「導出」並導出相同的mySQL數據庫,然後將該sql文件導入另一臺服務器10秒。
問題:我該如何讓「mysqldump」創建與「phpMyAdmin」相同類型的sql文件?一些FAST SQL版本
實施例(不是所有的話):
CREATE TABLE IF NOT EXISTS `absence_type` (
`absence_type_ID` int(16) NOT NULL AUTO_INCREMENT,
`name` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`absence_type_ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=14 ;
--
-- Dumping data for table `absence_type`
--
INSERT INTO `absence_type` (`absence_type_ID`, `name`) VALUES
(1, 'Sick Leave'),
(2, 'Personal Carers'),
(3, 'Other');
一些SLOW SQL版本實施例(不是所有的話):
--
-- Table structure for table `absence_type`
--
DROP TABLE IF EXISTS `absence_type`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `absence_type` (
`absence_type_ID` int(16) NOT NULL AUTO_INCREMENT,
`name` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`absence_type_ID`)
) ENGINE=MyISAM AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `absence_type`
--
LOCK TABLES `absence_type` WRITE;
/*!40000 ALTER TABLE `absence_type` DISABLE KEYS */;
INSERT INTO `absence_type` VALUES
(1,'Sick Leave'),
(2,'Personal Carers'),
(3,'Other');
/*!40000 ALTER TABLE `absence_type` ENABLE KEYS */;
UNLOCK TABLES;
在PHPMyAdmin中選擇什麼選項 - 下拉表,擴展插入?讓他們匹配,看看你是否仍然有進口時間的差異。 – 2012-08-08 04:54:04
謝謝@JasonMcCreary - 我只是選擇從PHPMyAdmin「快速導出」 - 沒有選擇嗎? – Laurence 2012-08-08 04:56:20
這意味着您正在使用默認選項。你爲什麼不比較這兩個文件?我確定有一些明顯的東西 - 文件大小,INSERT語句等等。 – 2012-08-08 04:57:26