请教一下各位
前几天写了一段c#下备份mysql数据库的命令~
string strCmd = "mysqldump -uroot -p密码 mysqldb 〉C:\\backup.sql";
Process vProcess = new Process();
vProcess.StartInfo.FileName = "cmd.exe ";
vProcess.StartInfo.UseShellExecute = false;
vProcess.StartInfo.RedirectStandardInput = true;
vProcess.StartInfo.RedirectStandardOutput = true;
vProcess.StartInfo.RedirectStandardError = true;
vProcess.StartInfo.CreateNoWindow = false;
vProcess.Start();
vProcess.StandardInput.WriteLine(strCmd);
vProcess.StandardInput.WriteLine("exit ");
//Response.Write(vProcess.StandardOutput.ReadToEnd());在vs下调试会生成一个备份文件backup.sql
但是今天通过iis发布这个网页以后发现,没法生成备份文件了~
经过调试,通过Response.Write(vProcess.StandardOutput.ReadToEnd());观察输出结果
发现cmd调用了mysqldump -uroot -p密码 mysqldb 〉C:\\backup.sql这条命令,那么为什么没有生成备份文件呢?
谢谢各位帮忙了
第一次发帖实在没有分,不好意思了
前几天写了一段c#下备份mysql数据库的命令~
string strCmd = "mysqldump -uroot -p密码 mysqldb 〉C:\\backup.sql";
Process vProcess = new Process();
vProcess.StartInfo.FileName = "cmd.exe ";
vProcess.StartInfo.UseShellExecute = false;
vProcess.StartInfo.RedirectStandardInput = true;
vProcess.StartInfo.RedirectStandardOutput = true;
vProcess.StartInfo.RedirectStandardError = true;
vProcess.StartInfo.CreateNoWindow = false;
vProcess.Start();
vProcess.StandardInput.WriteLine(strCmd);
vProcess.StandardInput.WriteLine("exit ");
//Response.Write(vProcess.StandardOutput.ReadToEnd());在vs下调试会生成一个备份文件backup.sql
但是今天通过iis发布这个网页以后发现,没法生成备份文件了~
经过调试,通过Response.Write(vProcess.StandardOutput.ReadToEnd());观察输出结果
发现cmd调用了mysqldump -uroot -p密码 mysqldb 〉C:\\backup.sql这条命令,那么为什么没有生成备份文件呢?
谢谢各位帮忙了
第一次发帖实在没有分,不好意思了
这句话生成了一个备份文件backup.sql啊,应该是有输出文件的,vs下调试是能生成的这个文件的~CMD返回的内容
Microsoft Windows XP [Version 5.1.2600] (C) Copyright 1985-2001 Microsoft Corp. C:\WINDOWS\system32>mysqldump -uroot -p1234 mysqldb > C:\backup.txt C:\WINDOWS\system32>exit
C:\\backup.sql 改为 C:\\xxx\\backup.sql就可以了
应该是iis用户没有存放到c盘根目录下的权限吧~
可惜没有分数,不能感谢了