您的位置:首页 > 数据库 > 数据库管理 > 正文

mysql导出数据的方法

更多 时间:2014-11-15 类别:数据库 浏览量:1143

mysql导出数据的方法

mysql导出数据的方法

一、select into outfile "filename"语句

 

例如

mysql> select * from mytbl into outfile '/tmp/mytbl.txt';

  • 查看mytbl.txt中内容如下
  •  
  • mysql> system cat /tmp/mytbl.txt
  •  
  • 1       name1
  • 2       name2
  • 3       \N
  •  

    导出成csv格式

    mysql> select * from mytbl into outfile '/tmp/mytbl2.txt' fields terminated by ',' enclosed by '"' lines terminated by '\r\n';

  • 查看mytbl.txt中内容如下:
  •  
  • mysql> system cat /tmp/mytbl2.txt
  •  
  • "1","name1"
  • "2","name2"
  • "3",\N
  •  
  •  
  • 使用时需要注意的地方
  •  
  • 1、导出的文件一定不能已经存在。(这有效的防止了mysql可能覆盖重要文件。)
  • 2、导出时登录的mysql账号需要有FILE权限
  • 3、null值被处理成\N
  •  
  •  
  • 二、重定向mysql程序的输出

     

    例如

  • [root@localhost ~]# mysql -uroot -p -e "select * from mytbl" --skip-column-names test>/tmp/mytbl3.txt
  • Enter password: 
  • [root@localhost ~]# cat /tmp/mytbl3.txt 
  •  
  • 1       name1
  • 2       name2
  • 3       NULL
  • --skip-column-names 去掉列名行
  •  
  •  
  • 导出成csv格式
  •  
  • [root@localhost ~]#  mysql -uroot -p -e "select * from mytbl" --skip-column-names test|sed -e "s/[\t]/,/" -e "s/$/\r/">/tmp/mytbl4.txt
  •  
  • 使用时需要注意的地方

    null值被处理成字符串"NULL"

     

     

    三:使用mysqldump来导出

     

    mysqldump程序用于拷贝或者备份表和数据库。它能够将表输出写成一个文本数据文件,或者一个用于重建表行的insert语句集。

    例如

    1、导出整个数据库

  • mysqldump -u 用户名 -p 数据库名 > 导出的文件名
  • mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql
  •  
  • 2、导出一个表
  •  
  • mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
  • mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
  •  
  • 3、导出一个数据库结构
  •  
  • mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql
  • -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
  •  
  •  
  • 标签:mysql
    您可能感兴趣