我在从命令行中将MySQL表恢复到数据库方面遇到了问题。使用mysqldump备份一个表是有效的,备份和恢复数据库也是正常工作的。我已经使用以下命令:
mysql -uroot -p 数据库名 表名 < 路径\表名.sql
提前感谢
我在从命令行中将MySQL表恢复到数据库方面遇到了问题。使用mysqldump备份一个表是有效的,备份和恢复数据库也是正常工作的。我已经使用以下命令:
mysql -uroot -p 数据库名 表名 < 路径\表名.sql
提前感谢
mysql -uroot -p DatabaseName < path\TableName.sql
运行 man mysql
命令可以显示正确的参数和选项。
mysql [选项] 数据库名称
由于你的备份脚本只包含一个表格,所以只有该表格将被还原到你的数据库。
-u root
,还有 path/TableName.sql
。 - John Joe-u
可以带或不带空格,OP 显然正在使用 Windows,并因此使用反斜杠目录分隔符。 - Phil备份数据
mysqldump -u -p mydatabase table1 > database_dump.sql
从备份文件中恢复不需要包含表名
mysql -u -p mydatabase < database_dump.sql
恢复数据库的最佳方式:
在bin
文件夹中打开cmd
登录到mysql:
mysql -uroot -pyour_password
show databases;
use db_name;
source db_name.sql;
如果您在远程机器上,请将db.sql文件复制到您的Mysql服务器:
$rsync -Cravzp --progress db.sql user@192.168.10.1:/home/user
现在,您可以按以下方式访问远程服务器:
$ssh -l user 192.168.10.1
在Mysql服务器中,您必须执行以下操作:
user@machine:~$mysql -h localhost -u root -p
注意:文件db.sql必须位于同一位置(/home/user)。
现在,在您的Mysql服务器中键入此命令:
mysql>'\'. db.sql + Enter。注意:删除此命令中的所有'以使其正常工作
>> sed -n -e '/DROP TABLE.*`table_name`/,/UNLOCK TABLES/p' databases_backup_file.sql > table_backup_file.sql
>> less table_backup_file.sql
>> head table_backup_file.sql
>> tail table_backup_file.sql
>> mysql -uyour_user -pyour_password db_name < table_backup_file.sql