C#中MySQL数据库的备份 还原 初始化
Posted Step-City
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#中MySQL数据库的备份 还原 初始化相关的知识,希望对你有一定的参考价值。
// 执行创建数据库操作 this.GetExecute(G_Con, "create database if not exists NEWDB"); this.sqlAddress = " -h " + IP + " -u" + User + " -p" + Password + " NEWDB "; // 数据库的备份 private void btn_Dump_Click(object sender, EventArgs e) { using (SaveFileDialog sfd = new SaveFileDialog()) { sfd.Filter = "数据库文件|*.sql"; sfd.FilterIndex = 0; sfd.RestoreDirectory = true; sfd.FileName = "BackUp" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".sql"; if (sfd.ShowDialog() == System.Windows.Forms.DialogResult.OK) { string filePath = sfd.FileName; string cmd = "mysqldump " + sqlAddress + " > \"" + filePath + "\""; string result = RunCmd(cmd); if (result.Trim() == "") { MessageBox.Show("数据库备份成功!", "CMS", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(result, "CMS", MessageBoxButtons.OK, MessageBoxIcon.Information); } } } } //数据库的还原 // 还原数据库 private void btn_Import_Click(object sender, EventArgs e) { if (this.tb_Path.Text.Trim() == "") { MessageBox.Show("请选择要恢复的文件!", "CMS", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } //this.GetExecute(G_Con, "create database if not exists clothes"); string filePath = this.tb_Path.Text.Trim(); string cmd = "mysql " + sqlAddress + " < \"" + filePath + "\""; string result = RunCmd(cmd); if (result.Trim() == "") { MessageBox.Show("数据库恢复成功!", "CMS", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(result, "CMS", MessageBoxButtons.OK, MessageBoxIcon.Information); } } // 命令行操作 private string RunCmd(string command) { //例Process Process p = new Process(); p.StartInfo.FileName = "cmd.exe"; //确定程序名 p.StartInfo.Arguments = "/c " + command; //确定程式命令行 p.StartInfo.UseShellExecute = false; //Shell的使用 p.StartInfo.RedirectStandardInput = true; //重定向输入 p.StartInfo.RedirectStandardOutput = true; //重定向输出 p.StartInfo.RedirectStandardError = true; //重定向输出错误 p.StartInfo.CreateNoWindow = true; //设置置不显示示窗口 p.Start(); //00 p.StandardInput.WriteLine(command); //也可以用这种方式输入入要行的命令 p.StandardInput.WriteLine("exit"); //要得加上Exit要不然下一行程式 //p.WaitForExit(); //p.Close(); //return p.StandardOutput.ReadToEnd(); //输出出流取得命令行结果果 return p.StandardError.ReadToEnd(); }
以上是关于C#中MySQL数据库的备份 还原 初始化的主要内容,如果未能解决你的问题,请参考以下文章
[知了堂学习笔记]_Java代码实现MySQL数据库的备份与还原