如何对表的一部分使用mysqldump?

| 所以我只能导出这样的表:
mysqldump -u root -p db_name table_name > table_name.sql
有什么办法可以用mysqldump导出表的一部分?例如,0-1-1,000,000行,1,000,000-2,000,000行,等等。 我应该使用mysqldump还是查询来执行此操作?     
已邀请:

bab

mysqldump -uroot -p db_name table_name --where=\'id<1000000\'
或者你可以使用
SELECT * INTO OUTFILE \'data_path.sql\' from table where id<100000
    
mysqldump --skip-triggers --compact --no-create-info --user=USER --password=PASSWORD -B DATABASE --tables MY_TABLE --where=\'SOME_COLUMN>=xxxx\' > out.sql
    
转储的文件与您使用SQL选择的文件不同。 对于第二种方法,您不能简单地使用:mysql数据库<表 将表转储到数据库中。     
就我而言,我已经执行了:
SELECT * 
  INTO OUTFILE \'C:\\Documents and Settings\\Anton.Zarkov\\Desktop\\joomla_export\\data_AZ.sql\'
  FROM `jos_glossary`
 WHERE id>6000
没有语法错误-查询通过。 结果是
NULL
-没有写入行。 (我确定-最后一个ID是6458) 如果我重复查询a
n error occurs => #1086 - File \'C:Documents and SettingsAnton.ZarkovDesktopjoomla_exportdata_AZ.sql\' already exists
不幸的是,我在磁盘C的任何位置都找不到\“ existing \”文件。它在哪里? 条件是: phpMyAdmin SQL转储;版本3.4.5;主机:localhost;服务器版本:5.5.16; PHP版本:5.3.8     
mysqldump -uroot -p db_name table_name --where\'id<1000000\' > yourdumpname.sql
    
下面的查询是从ID范围中选择,您可以使用date_created或任何代替ID
mysqldump --opt --host=dns --user=user_name --password=your_passwd db_name --tables table_name  --where \"id > 1 and id < 100 \" > /file_name.sql
例如:
--where=\"date_created > \'2019-01-18\' \"
->插入id     

要回复问题请先登录注册