转换为innodb的Windows Server mysql系统表将无法启动

时间:2017-01-20 04:27:09

标签: mysql innodb windows-server-2008

我们最近针对mysql运行了一个脚本,将所有表转换为使用innodb。不幸的是,这还包括系统表。服务器将不再启动。

我没想到在这种情况下它可能很重要,但也试过了 配置文件中的innodb_force_recovery并重新启动。同样的错误。

有没有办法从系统表上的这种愚蠢的转换中回到myisam?

Dump we're receiving

Thread pointer: 0x92eb40
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
000000014009A9A1    mysqld.exe!ha_resolve_by_name()[handler.cc:135]
0000000140119F6F    mysqld.exe!open_binary_frm()[table.cc:897]
000000014011C12B    mysqld.exe!open_table_def()[table.cc:644]
0000000140078204    mysqld.exe!get_table_share()[sql_base.cc:379]
000000014007829D    mysqld.exe!get_table_share_with_create()[sql_base.cc:478]
000000014007A9B3    mysqld.exe!open_unireg_entry()[sql_base.cc:3874]
000000014007E0C1    mysqld.exe!open_table()[sql_base.cc:2931]
000000014007ED61    mysqld.exe!open_tables()[sql_base.cc:4630]
000000014007F258    mysqld.exe!open_and_lock_tables_derived()[sql_base.cc:5041]
000000014003643C    mysqld.exe!plugin_load()[sql_plugin.cc:1417]
000000014003772A    mysqld.exe!plugin_init()[sql_plugin.cc:1252]
000000014001DB5E    mysqld.exe!init_server_components()[mysqld.cc:4021]
000000014001E315    mysqld.exe!win_main()[mysqld.cc:4490]
000000014001E6AF    mysqld.exe!mysql_service()[mysqld.cc:4666]
00000001402EBAB7    mysqld.exe!_callthreadstart()[thread.c:295]
00000001402EBB85    mysqld.exe!_threadstart()[thread.c:275]
0000000076C7A4BD    kernel32.dll!BaseThreadInitThunk()
0000000077076461    ntdll.dll!RtlUserThreadStart()

Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (0000000000000000): =
Connection ID (thread ID): 0
Status: NOT_KILLED

1 个答案:

答案 0 :(得分:0)

是的,那是坏消息。 mysql表应该从MyISAM转换; MySQL无法正常工作。

计划A:如果您有任何类型的转储,请至少从该转储重新加载数据库mysql。然后我们可以讨论如何加载你的表或者其他什么。

计划B:安装MySQL的新副本;它会在GRANTs中有“正确”(但不会有innodb_file_per_table等等)然后我们可以讨论如何(以及是否)重新加载你的表/重建。

你有什么转储?最近?旧?在MyISAM?在InnoDB? at Ninject.ResolutionExtensions.GetResolutionIterator(IResolutionRoot root, Type service, Func`2 constraint, IEnumerable`1 parameters, Boolean isOptional, Boolean isUnique) at Ninject.ResolutionExtensions.Get[T](IResolutionRoot root, IParameter[] parameters) at Render.Core.Models.ModelBase.get_Project() at Render.Core.Models.ModelBase.get_Interface() at Render.Core.Models.StaticModelBase.get_Interface() at Render.Core.RenderControls.RenderHeader..ctor(String title, ContentControl image, Boolean isAdminHome) at Render.MainApplication.Views.Shared.ViewBase.CalcSize() at Render.MainApplication.Views.Shared.ViewBase.ViewBase_SizeChanged(Object sender, SizeChangedEventArgs e) at System.Windows.SizeChangedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget) at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e) at System.Windows.FrameworkElement.OnRenderSizeChanged(SizeChangedInfo sizeInfo) at System.Windows.ContextLayoutManager.fireSizeChangedEvents() at System.Windows.ContextLayoutManager.UpdateLayout() at System.Windows.UIElement.UpdateLayout() 的价值是多少?你来自/去哪个版本? (在那里,我在考虑“可移动的表空间”。)

目前无济于事,但您应该检查转化中的其他陷阱:http://mysql.rjweb.org/doc.php/myisam2innodb