我有一个batch file,在两台运行IIS7的服务器上进行Mysql备份,现在都包括MySQL的bin子目录的path(path在两个系统上都是相同的)。
在一个系统上,我没有任何问题。 另一方面,batch file一直给出:'mysqldump'不被识别为内部或外部命令,可操作程序或batch file。
我下降到DOS。 DOS窗口“知道”mysqldump在哪里,就好了。 所以,抓我的头,我进入IISpipe理器,并检查PHP。 我使用phpinfo()来查看path设置。 他们不显示我的mysql bin目录的添加。 所以,我循环了应用程序池。 (在应用程序池上方的“树”中)…没有改变。
如果我不需要,我真的不想重新启动服务器,因为它是现在有人使用的生产服务器。
但我不知道我需要做什么来让PHP“采取”系统环境variables/path更新。 有什么想法吗?
尝试在运行PHP脚本的应用程序池中将LoadUserProfile
设置为True
。
我刚刚在这里找到答案: https : //serverfault.com/a/193614/388136
基本上,iis在启动时加载环境变量,而不会刷新它们,所以如果你做了修改,你必须重新启动服务本身。 执行该操作的最佳方法是从命令行运行iisreset