我在Windows Server 2003 R2上安装了大约2个月的MySQL。 在启动时,我们会看到一个错误提示“高严重性错误 – 根元素丢失”,后面跟着另一个高严重性错误,显示“在调用WriteToLog方法之前必须定义日志文件path”。
任何帮助,将不胜感激!
这可能是MySQL通知程序configuration文件的问题。 如上所述,你的configuration文件有问题。 您只需将其删除(或将其重命名为其他名称),然后再次启动MySQL通知程序 – config文件将自动重新创build。
在我的情况下,configuration文件位于C:\Users\YourUsername\AppData\Roaming\Oracle\MySQL Notifier\settings.configpath中。 删除它解决了这个问题。
我也在本地安装了MySQL Notifier时遇到了这个问题,既不删除settings.config,也没有重新安装。 进一步的调查将我带到名为connections.xml的文件夹中,该文件夹只包含一个空格字符。 删除该文件并重新启动通知程序,但是,如果(像我一样)删除settings.config不能解决问题,请查找connections.xml,并检查该文件是否存在可能的问题,必要时删除。
错误出现是由于configuration文件损坏,解决办法是按照WojciechFrącz的说法删除它。
它也可能由于虚假的MySQL服务而出现(来自服务器安装的剩菜未完全移除)。 首先确保你正在运行 最新的Notifier版本(可以在mysql下载页面下载 )。
为了解决虚拟的MySQL服务剩余部分:
打开一个运行命令窗口并input以下内容:
services.msc
记下任何不应列出的MySQL服务(以前试图卸载)。
打开pipe理员权限命令窗口并键入命令:
sc删除“<Dummy_service_name_here>”。
重新启动通知程序,看看是否纠正了这个问题。
如果之后仍然出现类似的错误,请检查堆栈跟踪是否在某处显示了CreateScheduledTask这个字,这意味着当通知程序试图在启动时添加一个调度任务来检查任何已安装的MySQL产品的更新时,这将意味着什么是错误的。
解决方法是在记事本中打开重新生成的settings.config文件。 在文件里面,find一个名为"AutoCheckForUpdates"的属性,并将"True"的默认值更改为"False" ,然后再次运行Notifier,如本文所述。
我有一个缺陷setting.config 和一个多余的connections.xml。 当我重命名这两个,mysql重新启动。 然后我把connections.xml设置回原来的名字。 这阻止了再次启动,所以我完全删除它,MySQL是好的。
我解决了删除C:\Users\YourUsername\AppData\Roaming\Oracle\MySQL Notifier\settings.config它充满了零(“空”字节)。
请注意,MySQL通知程序可能仍然在后台运行(但不能正常工作),所以你应该杀了它,然后重新启动应用程序。