论坛风格切换切换到宽版
  • 1704阅读
  • 0回复

使用mysqldump 导出mysql数据 [复制链接]

上一主题 下一主题
离线萝卜缨子
 
发帖
112
C币
-14
威望
109
贡献值
17
银元
4
铜钱
625
人人网人气币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2010-01-04
人的开发环境为Apache+Php+Mysql;OS为Windows XP; 1.使用mysqldump:   (mysqldump命令位于mysql/bin/目录中)   进入方法:使用windows自带的命令提示窗口,假设Mysql的安装目录为C:\mysql,则进入cd c:\mysql\bin\中即可   我相信大多数人都使用过mysqladmin,mysqlfront之类的mysql前端工具,他们可以方便地实现导入和导出数据库,但是有些时候你只想导出其中一部分的数据时就会面临困难,因为,你发现你不得不把至少整个一张表中的数据导出来。  这个时候我们就可以考虑使用mysqldump了。   如果您把整个数据库Student的内容导出一个文件中,可以使用下面的命令:   mysqldump -h -u -p Student> Student_Dump_File.sql     这个语句也允许您指定一个表进行dump(备份/导出/装载)。如果您只是希望把数据库Student中的表Duty中的整个内容导出到一个文件,可以使用下面的命令:   mysqldump -h -u -p Student Duty> Student_Duty.sql     这个非常的灵活,您甚至可以使用WHERE从句来选择您需要的记录导出到文件中。要达到这样的目的,可以使用类似于下面的命令:   mysqldump -h -u -p -w "Grade > 2006" Student Duty> Special_Dump.sql   其中需要说明的是: -h 表示用户想要连接的主机,如果不写,则默认为是本机;  -u 表示用户登录的用户名,如-uroot表示用户名为root;  -p 表示用户登录的密码,使用方法同上;  -w 表示查询的条件   mysqldump工具有大量的选项,部分选项如下表: 选项/Option 作用/Action Performed --add-drop-table   这个选项将会在每一个表的前面加上DROP TABLE IF EXISTS语句,这样可以保证导回MySQL数据库的时候不会出错,因为每次导回的时候,都会首先检查表是否存在,存在就删除 --add-locks   这个选项会在INSERT语句中捆上一个LOCK TABLE和UNLOCK TABLE语句。这就防止在这些记录被再次导入数据库时其他用户对表进行的操作   -c or - complete_insert   这个选项使得mysqldump命令给每一个产生INSERT语句加上列(field)的名字。当把数据导出导另外一个数据库时这个选项很有用。 --delayed-insert 在INSERT命令中加入DELAY选项 -F or -flush-logs 使用这个选项,在执行导出之前将会刷新MySQL服务器的log. -f or -force 使用这个选项,即使有错误发生,仍然继续导出 --full 这个选项把附加信息也加到CREATE TABLE的语句中 -l or -lock-tables 使用这个选项,导出表的时候服务器将会给表加锁。 -t or -no-create- info   这个选项使的mysqldump命令不创建CREATE TABLE语句,这个选项在您只需要数据而不需要DDL(数据库定义语句)时很方便。   -d or -no-data 这个选项使的mysqldump命令不创建INSERT语句。 PS:我们还可以使用类似"select * from datebase into outfile 'c.txt'"来导出数据。

评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
开心就好
快速回复
限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
上一个 下一个