MYSQL使用mysqldump导出某个表的部分数据

MySQLdump是MySQL自带的导出数据工具,通常我们用它来导出MySQL中,但是有时候我们需要导出MySQL数据库中某个表的部分数据,这时该怎么办呢?
mysqldump命令中带有一个 --where/-w 参数,它用来设定数据导出的条件,使用方式和SQL查询命令中中的where基本上相同,有了它,我们就可以从数据库中导出你需要的那部分数据了。

命令格式如下:
mysqldump -u用户名 -p密码 数据库名 表名 --where="筛选条件" > 导出文件路径

例子:
从meteo数据库的sdata表中导出sensorid=11 且 fieldid=0的数据到 /home/xyx/Temp.sql 这个文件中
mysqldump -uroot -p123456 meteo sdata --where=" sensorid=11 and fieldid=0" > /home/xyx/Temp.sql
mysqldump -uroot -p123456 meteo sdata --where=" sensorid=11" > /home/xyx/Temp.sql
mysqldump -uroot -p123456 meteo sdata --where=" sensorid in (1,2,3) " > /home/xyx/Temp.sql

另外你还可以直接导出 文本文件*.txt
mysqldump -uroot -p123456 meteo sdata --where=" sensorid=11 and fieldid=0" > /home/xyx/Temp.txt

备份数据库
#mysqldump 数据库名 >数据库备份名
#mysqldump -A -u用户名 -p密码 数据库名>数据库备份名
#mysqldump -d -A --add-drop-table -uroot -p >xxx.sql

1.导出结构不导出数据
mysqldump -d 数据库名 -uroot -p > xxx.sql

2.导出数据不导出结构
mysqldump -t 数据库名 -uroot -p > xxx.sql

3.导出数据和表结构
mysqldump 数据库名 -uroot -p > xxx.sql

4.导出特定表的结构
mysqldump -uroot -p -B数据库名 --table 表名 > xxx.sql
#mysqldump [OPTIONS] database [tables]

详情看:http://blog.csdn.net/xin_yu_xin/article/details/7574662

导入数据:
由于mysqldump导出的是完整的SQL语句,所以用mysql客户程序很容易就能把数据导入了:
#mysql 数据库名 < 文件名
or:
#show databases;
然后选择被导入的数据库:
#use ***;
#source /tmp/xxx.sql


你可能感兴趣的:(mysql)