4

对这里的任何重复表示歉意,但我发誓我已经研究过(并在此过程中学到了很多东西)。

环境是 MySQL 5.5,在 Windows 7 上使用 MISAM 表引擎。

工作是恢复从 MySQL 4.0 转储的数据库。我从命令行执行此操作(我尝试使用 Oracle 的 MySQL Workbench 导入实用程序,但如果遇到错误会失败)。恢复完成,但我知道有错误被抛出。我想捕捉那些,这样我就可以确保恢复完成而没有错误。

General_log 似乎没有捕获任何东西(是的 - 它已打开)。另一个日志文件 (local_host_name.log) 似乎根本没有捕获 sql 语句级别的错误。

从命令行恢复时是否有捕获错误的方法?有没有办法使用将错误写入日志文件的 throw/catch 语句来编辑转储文件本身?

提前致谢——我是一名 MS SQL 人员,对 MySQL 不熟悉。

4

3 回答 3

4

@Rob 在您的提示符(cmd?)中尝试以下操作:

mysql -u your_user your_database <c:\path\to\your_script.sql >stdout_output.txt 2>stderr_output.txt

没有尖括号,符号'<'和'>'是命令行shell的重定向信号。

于 2012-12-18T20:28:01.427 回答
0

我使用 bash 脚本来恢复 MySQL TB 数据库并将输出记录到如下所示的文件中,

/bin/bash /home/installation/scripts/finqa_restore.sh 2>&1 | tee /home/installation/scripts/output-stat.txt
于 2014-10-19T17:18:07.287 回答
0

这对我有用:

 pv import_test.sql | mysql -urootuser -pyourpassword the_db_name >st_out_log.txt 2>error_log.txt

我遇到的一个问题是它似乎只捕获一个错误。错误后脚本可能停止执行。

于 2016-03-09T18:32:57.080 回答