PHP程序员站--PHP编程开发平台
 当前位置:主页 >> 数据库 >> MySQL >> 

使用MYSQL界定符备份及还原数据库

使用MYSQL界定符备份及还原数据库

来源:互联网  作者:  发布时间:2011-01-09
在《高性能Mysql》第二版中看到,SQL文件和界定符文件在备份、还原时的耗费时间对比。 方式 文件大小 导出时间 还原时间 SQL dump 727M 102s 600s Delimited dump 669M 86s 301s 看起来界定符文件的导出比sql文件快了近20%,还原速度快了一倍。 记录和总结一下语法:
在《高性能Mysql》第二版中看到,SQL文件和界定符文件在备份、还原时的耗费时间对比。
方式 文件大小 导出时间 还原时间
SQL dump 727M 102s 600s
Delimited dump 669M 86s 301s

看起来界定符文件的导出比sql文件快了近20%,还原速度快了一倍。

记录和总结一下语法:

备份:SELECT INTO OUTFILE

SELECT * FROM hx_9enjoy INTO OUTFILE '/tmp/9enjoy.txt'

默认使用tab分割字段,记录使用\n分割。可以自定义三个参数。

SELECT * FROM hx_9enjoy INTO OUTFILE '/tmp/9enjoy_hx.txt' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n';
即使用,分割字段,双引号限定字段内容,\n分割记录。

还可以指定某些条件的记录输出:

SELECT * FROM hx_9enjoy WHERE id < 100 INTO OUTFILE '/tmp/9enjoy_100.txt'

还原:LOAD DATA INFILE

默认情况:
LOAD DATA INFILE '/tmp/9enjoy.txt' INTO TABLE hx_9enjoy

如果有指定界定符,则加上界定符的说明:
LOAD DATA INFILE '/tmp/9enjoy.txt' INTO TABLE hx_9enjoy FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n'



注意事项
1.mysql必须要有权限访问生成文件的那个目录
2.由于安全方面的原因,不能覆盖已存在的文件,不管这个文件的权限是怎么分配的。
3.不能直接导出一个压缩文件。

延伸阅读:
数据库备份类
MySQL数据库备份
php数据库备份参考
Linux网络备份MYSQL
PHP通用数据库备份类示例
小而强大的数据库备份程序
MySQL平台数据库备份方案详细说明
如何用SQLyog备份及导入mysql数据库
MySQL数据库备份恢复的两个实用方法

PHP备份数据库为SQL文件函数
利用mysqldump备份MySQL数据库
Tags: mysql   界定符   备份   还原   数据库  
最新文章
推荐阅读
月点击排行榜
PHP程序员站 Copyright © 2007-2010,PHPERZ.COM All Rights Reserved 粤ICP备07503606号