我有一个 3.5gb 的数据库转储。有没有一种方法可以将该文件中的单个表恢复到同一数据库中不同名称的表,而无需编辑该文件、使用 mysqladmin 或在 FreeBSD 6 上运行的其他一些常用命令行应用程序?
问问题
1505 次
2 回答
1
您需要在 restore-db 中创建表并运行类似:
grep "^INSERT INTO table" dump-file | mysql -u user -p restore-db
首先确保您的模式匹配正确。
于 2010-03-10T08:07:54.033 回答
1
cat THE_DUMP_FILE.SQL | sed -n "/^-- Table structure for table \`THE_TABLE_NAME\`/,/^-- Table structure for table/p" > THE_OUTPUT_SQL_FILE_NAME
我在谷歌上搜索了一段时间,这个解决方案对我来说效果很好,并且似乎是大型转储文件的最快解决方案之一,我从以下网址得到了这个想法: http ://code.openark.org/blog/mysql /on-restoreing-a-single-table-from-mysqldump
于 2010-10-06T22:00:16.087 回答