【发布时间】:2012-12-05 19:24:08
【问题描述】:
对这里的任何重复表示歉意,但我发誓我已经研究过(并在此过程中学到了很多东西)。
环境是 MySQL 5.5,在 Windows 7 上使用 MISAM 表引擎。
任务是恢复从 MySQL 4.0 转储的数据库。我从命令行执行此操作(我尝试使用 Oracle 的 MySQL Workbench 导入实用程序,但如果遇到错误会失败)。恢复完成,但我知道有错误被抛出。我想捕获这些,以便确保恢复完成时不会出错。
General_log 似乎没有捕获任何内容(是的 - 它已打开)。另一个日志文件 (local_host_name.log) 似乎根本没有捕获 sql 语句级别的错误。
从命令行恢复时是否有捕获错误的方法?有没有办法使用将错误写入日志文件的 throw/catch 语句来编辑转储文件本身?
提前致谢 -- 我是一名 MS SQL 专家,对 MySQL 不熟悉。
【问题讨论】:
-
如果您通过命令行运行导入,我会尝试使用 --verbose 命令再次运行它。这应该在导入时将更多信息打印到屏幕上,包括错误。 dev.mysql.com/doc/refman/5.5/en/…
-
我试一试——问题是,转储文件包含数千条语句,Windows 命令行不会显示所有行。
-
您可以使用“>”将输出重定向到文件。即“mysql -u asdf -Ppass -h localhost 数据库名
errors.txt” -
btw -- 感谢您的帮助 -- 非常感谢 -- 现在,我使用 Windows 命令行从 mysql 提示符运行我的导入,如下所示:mysql> source c:\path\to\dumpfile .sql 我应该如何用尖括号封装语句?我尝试了几种组合,最接近的是错误 22。
标签: mysql logging error-handling restore