Bug #7481 installer corrupt windows Path env var
Submitted: 22 Dec 2004 13:11 Modified: 30 Dec 2004 21:22
Reporter: Giorgio Mannelli Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Installing Severity:S2 (Serious)
Version:4.1.8 OS:Windows (windows XP sp1)
Assigned to: Michael G. Zinner CPU Architecture:Any

[22 Dec 2004 13:11] Giorgio Mannelli
Description:
After I installed MySQL 4.1.8 with the installation widzard (mysql-4.1.8-win.zip) and checked the box "add MySQL bin to the standard path" (or somethong like this) and restarted my computer my Path env variable is corrupted. I other hands c:\mysql.exe work propertly but all the others programs wan't. (e.g.: ipconfig or net) becouse they are unreachible.

How to repeat:
1 go to c:
2 type ipconfig
3 it shows you the information about you network connections
4 install MySQL 4.1.8 and be sure to check the box "add MySQL bin to the standard path" (or somethong like this).
5 reboot
6 go to c:
7 type ipconfig
8 you got an error.

Suggested fix:
please fix and provide and telme how to get my PATH back.
[22 Dec 2004 18:42] Colin Madere
Windows XP SP2
"essential" installer: mysql-4.1.8-essential-win.msi

Same problem as described by submitter.  Somehow the installer is modifying the PATH variable in such a way that it causes other environment variables in the path variable to NOT get evaluated.

So if the setting has:
Path=%System%/winnt;%JAVA_HOME%/bin

Running "set" in the command shell gives exactly that instead of this (for example):

Path=C:/Windows/winnt;C:/jdk1.5/bin

Fix for me: Renamed "Path" to "PATH" via the Environment Variable GUI through Windows Control Panel "System" item.  My guess is that it simply rewrote the variable value and therefore overwriting whatever malformed entry the installer created.
[23 Dec 2004 8:42] Hank O'Neill
It seems that the "Path" key template in the Registry at "HKLM\System\CurrentControlSet\Control\SessionManager\Environment" was changed from a REG_EXPAND_SZ to a REG_SZ; meaning that no substitution for ("%SystemRoot%") is taking place.  If I had to guess (and what else can I do?) I think the installer is recreating the value rather than just modifying it.  Should be a very quick fix to the installer script.
[23 Dec 2004 10:18] Giorgio Mannelli
Thank you very much Colin and Hack.
Changed the type of the HKLM\System\CurrentControlSet\Control\SessionManager\Environment key from REG_SZ to REG_EXPAND_SZ and now everythink is working fine. 
Merry christmas and happy new year.

PS
IF you came here in Florence I will be glad to offer you a beer.
[29 Dec 2004 0:56] MySQL Verification Team
Thank you for the bug report.
[29 Dec 2004 11:49] Priit Oorn
I had the same problem! but IMHO the only thing that MySQL's installer does wrong is, that it adds an extra ";" to the path's end. If I removed it manually from "Control Panel -> System -> Advanced -> Environment Variables", all started working perfectly again.

so instead of adding ";c:\Program Files\MySQL\MySQL Server 4.1\bin;"
it should add ";c:\Program Files\MySQL\MySQL Server 4.1\bin"
[29 Dec 2004 19:05] Jacob Balazer
I can confirm that the 4.1.8 configuration wizard incorrectly adds a trailing semicolon to the PATH environmental variable, and that at least in Windows XP 2002, this breaks Windows' path resolution.  Removing the trailing semicolon fixes the problem.
[29 Dec 2004 19:06] Jacob Balazer
I should have said "Path", not "PATH"
[30 Dec 2004 21:22] Michael G. Zinner
Thanks for the detailed descriptions. Both issues, the REG_EXPAND_SZ issue and the extra ";" issue have been addressed and will be in the next release.