I'm still working on getting all of my tools and apps onto my new laptop, which is running Vista Ultimate. I downloaded the latest version of MySQL Community Edition and proceeded to install it. I didn't consider the effects of User Account Control (UAC) on the installation. I should have, considering this is one of the gotchas when installing SQL Server Reporting Services on Vista. The installation looked successful until the point where I was prompted to configure the MySQL service. No error message, nothing. So I rooted through, found and ran the MySQL Server Instance Config Wizard, but received an error I hadn't seen before. I did a Google search and came across this blog post which links to a document on Port25:
The document indicated UAC needed to be disabled. I didn't specifically look for the error I received figuring UAC was the whole issue. If it's UAC and that needs to be disabled, no problem, I went through that exercise with SSRS. Make the change, restart the computer and wah-lah! We're in business! Except we weren't. I uninstalled MySQL and reinstalled it and the same thing happened. I was prompted for the configuration but nothing ever came up. So I tried running MySQL Server Instance Config Wizard again and got the same error, except this time I paid more attention:
The application has failed to start because its side-by-side configuration is incorrect.
In situations like these it's important to check the Application event log. So I did and found the side-by-side error which read:
Activation context generation failed for "C:\Program Files\MySQL\MySQL Server 5.0\bin\MySQLInstanceConfig.exe".Error in manifest or policy file "C:\Program Files\MySQL\MySQL Server 5.0\bin\MySQLInstanceConfig.exe" on line 6. The value "asAdministrator" of attribute "level" in element "urn:schemas-microsoft-com:asm.v1^requestedPrivileges" is invalid.
I searched for this error and came across a bug listing for MySQL Bug #34340. As I figured, I wasn't the only one having this error. Basically, the UAC Manifest is wrong and has to be corrected. However, the manifest is stored in the .exe, so that's a problem. Luckily, one of the commenters posted what needed to be changed ("asAdministrator" needs to be "requireAdministrator") and a tool to change it: Resource Hacker.
Once I made the change and saved it, I was able to run MySQLInstanceConfig.exe successfully and configure the MySQL service. After that was done, I re-enabled UAC and restarted Vista. Now it runs as I expect.