mysql的导入与导出

来源:互联网 发布:windows media关闭不了 编辑:程序博客网 时间:2024/05/22 07:04
1.导出整个数据库

  mysqldump -u用户名 -p 数据库名 > 导出的文件名
    ./mysqldump -uroot my_lib --default-character-set=gbk > my_lib-$now.sql

2.导出一个表

  mysqldump -u用户名 -p 数据库名 表名> 导出的文件名
  ./mysqldump -uroot my_lib users> users-$now.sql

3.导出一个数据库结构

  mysqldump -u用户名 -p -d --add-drop-table 数据库名 > my_lib-$now.sql

  说明:-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table

4.导入数据库

  (1)、使用source 命令

  进入mysql数据库控制台,

  ./mysql -uroot -p
  mysql> use 数据库

  然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
  mysql> source my_table.sql

  (2)、使用输入重定向
  ./mysql -u用户名 -p 数据库名 < my_sql.sql


5.使用into outfile/load data命令导出导入数据库中部分数据

  (1)、 使用select ... into outfile 'filename'语句
  mysql> select * from driver into outfile 'a.txt' fields terminated by ',' enclosed by '"';
  说明:这个文件在哪呢?在mysql目录下有一个data(或var)目录,它即是数据库文件所放的地方。每个库单独占一个子目录。使用select命令还可以指定卸出文件时,字段之间的分隔字符,转义字符,包括字符,及记录行分隔字符。如下:

  fields terminated by ''
  [optionally] enclosed by ''
  escaped by ''
  lines terminated by ''

  fields terminated表示字段分隔;[optionally] enclosed表示字段用什么字符包括起来,如果使用了optionally,则只有char和varchar被包括;escaped表示当需要转义时用什么作为转义字符;lines terminated表示每行记录之间用什么分隔。
  (2)、 使用load data infile 'filename'命令
  mysql> load data infile 'driver.txt' into table driver fields terminated by ',' enclosed by '"';

原创粉丝点击