我正在将Windows10上的MySQLServer5.067升级到5.5.60。
我停止了服务,替换了一个共享目录并启动了服务。
服务启动失败,出现以下消息(在事件查看器中):
Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
For more information, see Help and Support Center at http://www.mysql.com.
好的,我打开cmd作为admin命令:
mysql_upgrade --port 64202
结果如下:
Looking for 'mysql.exe' as: C:\Program Files (x86)\XXX\MySQLServer\bin\mysql.exe
Looking for 'mysqlcheck.exe' as: C:\Program Files (x86)\XXX\MySQLServer\bin\mysqlcheck.exe
Error: Failed while fetching Server version! Could be due to unauthorized access.
FATAL ERROR: Upgrade failed
mysql升级的设计是通过tcp连接到mysql来运行升级,但是如果服务没有运行,它怎么可能工作呢?这是一个恶性循环-mysql服务需要升级才能启动,mysql\U升级需要连接到正在运行的服务。
怎么了?
2条答案
按热度按时间hmmo2u0o1#
由于您要从5.0升级到5.5,有些配置值已被弃用,导致引擎无法启动。
最有可能的罪魁祸首是
skip-dbd
,如本网站所述。所以:找到你的mysql配置文件,注解掉
skip-dbd
选项并重新启动mysql服务。那你就可以跑了mysql_upgrade
包括身份验证在内的适当选项。wribegjk2#
不支持跳过主要版本(5.1),可能也可能不起作用。适当的升级是以下之一:
方案a:升级到5.1,然后升级到5.5。跑
mysql_upgrade
在每一步。方案b:使用mysqldump转储5.0中的数据(一定要有例行公事等)。吹走(或旁路)5.0并安装新的5.5。重新加载数据。转储文件中可能有语法错误,请根据需要编辑该文件。