我想使用C#复制/复制数据库我试过以下方式,但它给了我一个错误,说检查mysql语法。
string connStr = "server=localhost;user=root;port=3306;";
MySqlConnection conn = new MySqlConnection(connStr);
MySqlCommand cmd;
string s0;
try
{
conn.Open();
s0 = "mysqldump -h localhost -u root -p testdb | mysql -h localhost -u root -p `"+dbname+"`;";
cmd = new MySqlCommand(s0, conn);
cmd.ExecuteNonQuery();
conn.Close();
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
}
没有MySQL数据库的密码。任何人都可以告诉我这段代码中的问题是什么?感谢。
答案 0 :(得分:0)
如果使用-p参数编写调用代码,mysqldump将要求输入密码,当然您无法输入密码,因为您没有从命令窗口运行它。
您必须在通话时传递密码,即-pAValidPassword
(无空格)
当然这是一种非常不安全的方式,因为任何有权访问您的代码的人现在都可以访问密码!!