MYSQLDUMP的一些用法
时间:2007-11-12 来源:justinyun
mysqldump: mysql 备份数据的工具
操作权限: select,lock tables (grant select,lock tables on database.* to user@'ip' identified by 'passwd'; flush privileges;)
用法集绵:
default: mysqldump -h'HOST' -u'USER' -p DATABASE [ TABLES ] >FILE
--lock-tables
当做备份时,当然希望数据是静止状态,即没有用户在写,这时候就需要lock表
-F, -flush-logs
导出之前先刷新mysql服务器的日志. (详细解释请见man) (This option requires the RELOAD privilege)
--quick
加快导出速度。不缓存在内存,直接取出数据,读多少取多少,对于大的表非常有用!
--add-drop-table
在恢复备份的时候,导入表时,会加上一个 DROP TABLE IF EXISTS .
--default-character-set=[gbk|utf8|...]
导入的时候设置默认字符集
--extended-insert, -e
insert的值包含多行,使导出的格式更紧凑,而reload的时候呢,也更加快!
-P, --port (端口,默认是3306就不用加了)
-w "where clause", -where = "where clause"
根据条件来
------------------------------
另外,可以用管道技术实现数据的压缩,在上面的语句后面加上: gzip -q --best >FILE ,就可以节省很多空间啦!
----->相似功能参见 SELECT INTO OUTFILE ,可以实现相同的导出数据的功能,并且可做为报表产生器来
例子:
SELECT * INTO OUTFILE 'file'
FIELDS
TERMINATED BY = ','
FROM TABLE
WHERE $Condition$
操作权限: select,lock tables (grant select,lock tables on database.* to user@'ip' identified by 'passwd'; flush privileges;)
用法集绵:
default: mysqldump -h'HOST' -u'USER' -p DATABASE [ TABLES ] >FILE
--lock-tables
当做备份时,当然希望数据是静止状态,即没有用户在写,这时候就需要lock表
-F, -flush-logs
导出之前先刷新mysql服务器的日志. (详细解释请见man) (This option requires the RELOAD privilege)
--quick
加快导出速度。不缓存在内存,直接取出数据,读多少取多少,对于大的表非常有用!
--add-drop-table
在恢复备份的时候,导入表时,会加上一个 DROP TABLE IF EXISTS .
--default-character-set=[gbk|utf8|...]
导入的时候设置默认字符集
--extended-insert, -e
insert的值包含多行,使导出的格式更紧凑,而reload的时候呢,也更加快!
-P, --port (端口,默认是3306就不用加了)
-w "where clause", -where = "where clause"
根据条件来
------------------------------
另外,可以用管道技术实现数据的压缩,在上面的语句后面加上: gzip -q --best >FILE ,就可以节省很多空间啦!
----->相似功能参见 SELECT INTO OUTFILE ,可以实现相同的导出数据的功能,并且可做为报表产生器来
例子:
SELECT * INTO OUTFILE 'file'
FIELDS
TERMINATED BY = ','
FROM TABLE
WHERE $Condition$
相关阅读 更多 +