Windows XP下安装MySQL遇到的两个问题

原来的安装用的是直接解压zip包的方式,安装情况如下:
1. 安装目录为C:\mysql-4.1.22-win32
2. my.ini从my-medium.ini修改而来,放在了C:\WINDOWS下
3. 安装Windows服务用的命令是 mysqld-nt --install
4. net start MySQL启动服务没有问题

但用MySQL Administrator工具连接时总是先弹出一个对话框,报告

Either the server service or the configuration file could not be found. Startup variables and service section are therefore disalbed.

点“确定”后才进入主界面,正如它所说,Service Control和Startup Variables功能都被禁用了,界面上有红色的提示信息
This section is only available when connected to localhost.

换用msi安装包,重新安装MySQL,目录还是选择C:\mysql-4.1.22-win32(除了data目录之外,其他目录都已删除),最后配置实例时出现无法启动服务的问题。尝试逐个关闭my.ini中选项的方法,试验到底是那个选项导致不能启动。最后发现是innodb_log_file_size这个选项的问题。原来实际的log文件ib_logfile0和ib_logfile1的大小是5M,是由刚才的那个my.ini(即有zip包中my-medium.ini手工修改而来的)指定的,而现在的my.ini(由MySQL Server Instance Config Wizard生成)中同样的选项指定的却是17M,结果导致MySQL无法启动。解决办法是要么删除原来的那两个log文件,要么修改innodb_log_file_size。

现在可以正常启动MySQL服务,MySQL Administrator也可以正常使用。在注册表里查看MySQL Server Instance Config Wizard生成的MySQL服务,发现ImagePath的值是
C:\mysql-4.1.22-win32\bin\mysqld-nt --defaults-file=C:\mysql-4.1.22-win32\my.ini MySQL说明之前MySQL Administrator报错的原因是服务由mysqld-nt --install命令创建,导致它找不到my.ini。