mysqldump -u用户名 -p密码 数据库名>数据文件 例如:
mysqldump -u root -p mydb > mydb.sql

解决方案 »

  1.   


      1. 使用select into outfile 'filename'语句 
      2. 使用mysqldump实用程序 
      3. 使用select into outfile 'filename'语句   可以在mysql的命令行下或在php程序中执行它。我下面以在mysql命令行下为例。在php中使用时,将其改成相应的查询进行处理即可。不过在使用这个命令时,要求用户拥有file的权限。如我们有一个库为phptest,其中有一个表为driver。现在要把driver卸成文件。执行命令:   mysql> use phptest; 
      Database Changed 
      mysql> select * from driver into outfile 'a.txt'; 
      Query OK, 22 rows affected (0.05 sec)   上面就可以完成将表driver从数据库中卸到a.txt文件中。注意文件名要加单引号。那么这个文件在哪呢?在mysql目录下有一个data目录,它即是数据库文件所放的地方。每个库在单独占一个子目录,所以phptest的目录为c:mysqldataphptest(注意:我的mysql安装在c:\mysql下)浅妄薄见,望与斟酌
      

  2.   

    如果只想卸出建表指令,则命令如下: mysqldump -d phptest > a.sql   如果只想卸出插入数据的sql命令,而不需要建表命令,则命令如下: mysqldump -t phptest > a.sql   那么如果我只想要数据,而不想要什么sql命令时,应该如何操作呢? mysqldump -T./ phptest driver   其中,只有指定了-T参数才可以卸出纯文本文件,表示卸出数据的目录,./表示当前目录,即与 
    mysqldump同一目录。如果不指定driver表,则将卸出整个数据库的数据。每个表会生成两个文件,一个为 
    .sql文件,包含建表执行。另一个为.txt文件,只包含数据,且没有sql指令。   对卸出的数据文件,也可以同select方法一样,指定字段分隔符,包括字符,转义字段,行记录分隔符。 
    参数列在下面: --fields-terminated-by= 字段分隔符 
    --fields-enclosed-by= 字段包括符 
    --fields-optionally-enclosed-by= 字段包括符,只用在CHAR和VERCHAR字段上 
    --fields-escaped-by= 转义字符 
    --lines-terminated-by= 行记录分隔符 
      我想大家应该明白这些参数的意思了吧。一个例子如下: mysqldump -T./ --fields-terminated-by=, --fields-enclosed-by=" phptest driver   输出结果为: "1","Mika","Hakinnen","1" 
    "2","David","Coulthard","1" 
    "3","Michael","Schumacher","2" 
    "4","Rubens","Barrichello","2" 
    ...