卸载 mysql 5.1(64 位版本)后,我无法安装 win32 版本!显然开发人员觉得有必要留下有用的工件?我重启了机器,但没用。
运行这个:
C:\Users\User1>net start mysql
The MySQL service is starting.
The MySQL service could not be started.
A system error has occurred.
System error 1067 has occurred.
The process terminated unexpectedly.
然后运行这个:
C:\Program Files (x86)\MySQL\MySQL Server 5.1\bin>mysqld --console
100213 10:52:58 [Note] Plugin 'FEDERATED' is disabled.
InnoDB: Error: log file .\ib_logfile0 is of different size 0 10485760 bytes
InnoDB: than specified in the .cnf file 0 25165824 bytes!
100213 10:52:59 [ERROR] Plugin 'InnoDB' init function returned error.
100213 10:52:59 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
100213 10:52:59 [ERROR] Unknown/unsupported table type: INNODB
100213 10:52:59 [ERROR] Aborting
100213 10:52:59 [Note] mysqld: Shutdown complete
更新:由于某种原因,它看起来像是将 32 位 DB 安装到旧的 64 位目录中....将调查此事...(bin 目录将进入 32 位程序文件目录)。
答案1
“日志文件 .\ib_logfile0 大小不同”表明您的配置文件 (my.cnf) 和数据目录的内容不再匹配。我会卸载,查找 ib_logfile0 所在的目录,将该目录的内容移动到其他位置,然后重新安装。另一方面,如果您想保留 64 位实例中的数据库,您可能只需重命名 InnoDB 日志文件,MySQL 将在启动时重新创建它们。
安装程序可能不会在卸载过程中删除数据目录,因为有人可能不希望他们的数据库被删除。
答案2
我遇到了同样的问题。不幸的是,我尝试了很多方法,无法给你确切的“步骤”。无论如何,试试这个:
- 从控制面板卸载 MySQL
检查
C:\Program Files\MySQL\MySQL Server 5.1\my.ini
(或C:\Program Files (86)\MySQL\MySQL Server 5.1\my.ini
)数据文件位置。这是我所得到的:datadir="C:/ProgramData/MySQL/MySQL Server 5.1/Data/"
删除该文件夹
C:/ProgramData/MySQL/
。其他选项是 C:\MySQL InnoDB Datafiles 或类似的。安装 MySQL,但不运行配置。软件安装完成后停止
转到 C
:\Program Files\MySQL\MySQL Server 5.1\bin\
并右键单击MySQLInstanceConfig.exe
。选择“以管理员身份运行”保留所有选项的默认设置,如果安装程序要求输入旧密码,则意味着它仍在某处找到较旧的数据文件。因此,重新开始并尝试找到旧数据文件的位置。
另一个操作方法是,在安装过程中,当询问要安装哪个数据库时,选择最后一个选项(我不记得名字了)MyISAM。这将安装在 C:\ProgramData.... 之后,返回到项目 1(卸载、删除等)
希望这能有所帮助。我使用了mysql-essential-5.1.46.-win32.msi
包,但我很确定它对于 64 位来说是一样的。
问候 Alex