0

我们的 mysql 实例在备份期间偶尔会锁定。目前我们必须通过VPN进入企业网络(获取工作IP),远程桌面进入服务器,打开任务管理器,手动杀死mysqld-nt.exe进程。

我们没有做所有这些,而是​​尝试创建一个简单的网页,我们可以登录该网页来终止并重新启动服务。

以下代码块连接在我们的新 .aspx 页面中,可以在我的本地桌面上正常工作(在 VS 调试模式下运行),但在推送到服务器时不执行任何操作(没有错误或任何事情):

Process myProcess = new Process();
ProcessStartInfo myProcessStartInfo = new ProcessStartInfo("taskkill");
myProcessStartInfo.Arguments = "/IM mysqld-nt.exe /F";
myProcessStartInfo.UseShellExecute = false;
myProcessStartInfo.RedirectStandardOutput = true;
myProcessStartInfo.CreateNoWindow = true;
myProcess.StartInfo = myProcessStartInfo;
myProcess.Start();
myProcess.Close();

如果我从服务器上的命令提示符运行“taskkill /IM mysqld-nt.exe /F”,它会终止服务。所以我认为这可能是一个权限问题,但我并不积极。

谁能发现上面的代码块有问题,或者告诉我如何调整权限以便.Net 可以停止/启动这个过程?

谢谢你的帮助,山姆

4

3 回答 3

0

听起来您的页面可能是作为 IUSR_MACHINE 帐户运行的(权限有限)。

在您的开发机器上,启动开发 Web 服务器进程的是您的帐户,并且您可能以本地管理员身份登录。

让 IIS 要求您输入密码,然后打开模拟然后尝试以管理员身份(或某些具有特权的帐户)登录。

于 2009-12-11T20:09:20.853 回答
0

这可能会迟到,但是您是否检查了远程计算机上的网络端口?

于 2010-02-26T14:05:37.340 回答
0

无法找到解决方法以使其通过 ASP.net 工作。我很确定这是某种许可问题。最终使用由计划任务触发的批处理文件来停止/启动/备份 MySQL。

于 2010-11-24T14:06:40.163 回答