默认情况下,mysqldump对整个数据库进行备份。我需要在MySQL中备份一个表。这可能吗?我怎么恢复它?


当前回答

Mysqldump可以接受一个tbl_name参数,这样它只备份给定的表。

mysqldump -u -p yourdb yourtable > c:\backups\backup.sql

其他回答

try

for line in $(mysql -u... -p... -AN -e "show tables from NameDataBase");
do 
mysqldump -u... -p.... NameDataBase $line > $line.sql ; 
done

$line内容名称表;)

Mysqldump可以接受一个tbl_name参数,这样它只备份给定的表。

mysqldump -u -p yourdb yourtable > c:\backups\backup.sql

您可以使用MYSQLWorkbench工具轻松地转储选定的表,单个或组的表在一个转储,然后导入它如下:你也可以添加主机信息,如果你是在您的本地运行通过添加-h IP.ADDRESS.NUMBER后u用户名

mysql -u root -p databasename < dumpfileFOurTableInOneDump.sql 

从.sql中转储和恢复单个表

Dump

mysqldump db_name table_name > table_name.sql

从远程数据库转储

mysqldump -u <db_username> -h <db_host> -p db_name table_name > table_name.sql

如需进一步参考:

http://www.abbeyworkshop.com/howto/lamp/MySQL_Export_Backup/index.html

恢复

mysql -u <user_name> -p db_name
mysql> source <full_path>/table_name.sql

或者在一行里

Mysql -u username -p db_name < /path/to/table_name.sql . Mysql


从压缩(.sql.gz)格式转储和恢复单个表

资料来源:John McGrath

Dump

mysqldump db_name table_name | gzip > table_name.sql.gz

恢复

gunzip < table_name.sql.gz | mysql -u username -p db_name

你可以在命令行中使用mysqldump:

Mysqldump -u username -p password dbname tablename > "转储路径"

你也可以使用MySQL Workbench:

>数据导出>选择模式>选择表,单击“导出”