如何在不使用mysqldump的情况下转储mysql表?

时间:2014-11-29 00:25:03

标签: mysql dump

我需要转储一张桌子以便每日转移 mysqldump需要LOCK TABLES权限。不幸的是,LOCK TABLES不适用于表级别,仅适用于数据库级别,并且我不想给MySQL用户提供那么多访问权限。 有办法做某事......

/usr/bin/mysql -uusername -ppassword -D daterbase -e "select * from table" > outfile.sql

...但是以SQL格式而不是查询结果格式输出?

1 个答案:

答案 0 :(得分:2)

如果表是InnoDB表,则可以使用mysqldump --single-transaction dbname tablename

通过使用交易,它不需要锁定任何东西。

或者您可以使用SELECT ... INTO OUTFILE,但转储采用制表符分隔的文本格式,而不是SQL格式。有关详细信息,请参阅mysql