mysqldump工具,通過--where選項,導出指定表中指定數據?


需求描述:

  今天在使用mysqldump工具導出表的時候,考慮能不能導出滿足條件的數據行,不要

  將表都導出來,查找資料,通過--where選項,就可以實現目的,做個實驗,在此記錄下.

操作過程:

1.通過--where選項導出滿足條件的數據

[mysql@redhat6 mysql_backup]$ mysqldump -uroot -p --single-transaction --master-data --where='id < 10' test02 goods_code_info > TableConditon.sql
Enter password: 
[mysql@redhat6 mysql_backup]$ 

備注:--where等號的后面的條件,必須要用括號擴起來.上面的語句的作用,導出test02庫下goods_code_info表中滿足id<10這個條件的記錄.

2.查看生成的數據sql文件

--
-- Dumping data for table `goods_code_info`
--
-- WHERE:  id < 10

LOCK TABLES `goods_code_info` WRITE;
/*!40000 ALTER TABLE `goods_code_info` DISABLE KEYS */;
INSERT INTO `goods_code_info` VALUES (1,',3,4','7008',',abc,64G','ddd','1000002',NULL,NULL,NULL,'0001','1002'),(2,',5,4','7009',G','N5S','1000000000000003',NULL,NULL,NULL,'0002','1002'),(3,',6,4','7009',',藍,6G','NS','100000004',NULL,NULL,NULL,'0003','1002'),(4,NULL,'7010',NULL,'A制','17099558',NULL,NULL,NULL,NULL,NULL),(5,NULL,'7011',NULL,'5','1709250099999993',NULL,NULL,NULL,NULL,NULL),(6,NULL,'7012',NULL,'3器P1','1710408',NULL,NULL,NULL,NULL,NULL),(7,NULL,'7012',NULL,'3P1','8100002226',NULL,NULL,NULL,NULL,NULL),(8,NULL,'7012',NULL,'由器P1','8171228',NULL,NULL,NULL,NULL,NULL),(9,NULL,'7013',NULL,'0 中車','8171228200002325',NULL,NULL,NULL,NULL,NULL);
/*!40000 ALTER TABLE `goods_code_info` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;

備注:導出ID最大是9.在sql文件中,有where條件.

3.查看原表中的最大id值

[mysql@redhat6 mysql_backup]$ mysql -uroot -p -D test02 -e "select max(id) from goods_code_info"
Enter password: 
+---------+
| max(id) |
+---------+
|    5139 |
+---------+
[mysql@redhat6 mysql_backup]$ 

備注:原來的表中的id值,最大是5139.我們只是導出id小於9的.導出成功.

 

文檔創建時間:2018年4月17日14:56:00


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM