// 执行创建数据库操作

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数据库的备份 还原 初始化的更多相关文章

  1. C#中MySQL数据库的备份 还原 初始化

    直接在cmd执行如下代码: mysqldump -h localhost -uroot -p123 --default-character-set=utf8 --opt --disable-keys ...

  2. Mysql数据库之备份还原(mysqldump,LVM快照,select备份,xtrabackup)

    备份类型: 热备份:读写不受影响 温备份:仅可执行读备份 冷备份:离线备份,读写均不能执行,关机备份 物理备份和逻辑备份 物理备份:复制数据文件,速度快. 逻辑备份:将数据导出之文本文件中,必要时候, ...

  3. mysqldump工具实现mysql数据库的备份还原

    简介 冷.温.热备份 冷备:读写操作均不可进行 温备:读操作可执行:但写操作不可执行 热备:读写操作均可执行 MyISAM:温备,不支持热备 InnoDB:都支持 不管是热备还原还是冷备还原,还原时都 ...

  4. mysql数据库数据备份还原

    1.直接在命令行里面执行 备份一个数据库:mysqldump -h server -u username -p password db_name > database-sqlbkp_`date ...

  5. 如何用SQL语句实现Mysql数据库的备份与还原

    以前一直做android客户端的项目,根本没有开发asp.net mvc的开发,现阶段做了一个模块,参数设置,以及数据库的备份与还原.其需求如下: 参数设置 本项参数设置为对自动数据备份进行设置,管理 ...

  6. mysql数据库的备份和还原的总结

    mysql数据库的备份和还原的总结 (来自一运维同事的总结) 1. 备份方式: 热备:数据库在线进行备份,不影响读和写的在线备份方式! 温备:数据库在线进行备份,对表备份时先锁定写操作,仅可以执行读操 ...

  7. mysql数据库的备份和还原

    mysql数据库的备份命令:mysqldump -u root  -p 要备份的现有数据库名  >  备份后的sql文件名.sql,例如:  mysqldump -u root -p  heal ...

  8. [知了堂学习笔记]_Java代码实现MySQL数据库的备份与还原

    通常在MySQL数据库的备份和恢复的时候,多是采用在cmd中执行mysql命令来实现. 例如: mysqldump -h127.0.0.1 -uroot -ppass test > d:/tes ...

  9. Java代码实现MySQL数据库的备份与还原

    通常在MySQL数据库的备份和恢复的时候,多是采用在cmd中执行mysql命令来实现. 例如: mysqldump -h127.0.0.1 -uroot -ppass test > d:/tes ...

随机推荐

  1. Android学习总结——系统提示对话框(AlertDialog)

    new AlertDialog.Builder(MainActivity.this).setTitle("退出")//设置对话框标题 .setMessage("官人可是要 ...

  2. Hard Process(二分)

    Hard Process Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Submi ...

  3. scrollTo和scrollTo.js

    最近做一个项目前端要用到scrollTo和滚动视觉差.顺便把两个东西拿出来温习一下. HTML DOM里面定义了scrollTo方法,用法:scrollTo(xpos,ypos),把内容滚动到当前的指 ...

  4. CF 338 D GCD Table(CRT)

    转载请注明出处,谢谢http://blog.csdn.net/ACM_cxlove?viewmode=contents    by---cxlove 给定一个序列,a[1 ..k],问是否存在(i , ...

  5. struts2 action重定向

    struts2的结果类型: <action name="loginAction" class="com.itheima.action.LoginAction&quo ...

  6. java学习笔记day06---匿名内部类

    1.匿名内部类:其实就是内部类的简化形式,它所体现的就是一个类或者接口的子类对象.前提:     内部类必须继承或实现外部类或接口. 格式:    new 父类&接口(){};    其实就是 ...

  7. localStorage和sessionStorage火狐浏览器和其他高级浏览器的区别

    例子: <script>window.onload=function(){ var oSetData = document.getElementById('setData'); var o ...

  8. 在美国公司架构中,LLC、LLP 和 Corporation 的区别何在?

    这个问题,首先需要弄清楚这样一个事实:LLC.LLP.Corporation分别属于三种不同类型的公司实体. 1,LLC (Limited Liability Company)是责任有限公司: 2,L ...

  9. (原创) C# List 找 Max 的 Index

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  10. 微软ajax组件

    拖个listview 然后绑定数据源,对curd选项打勾,然后拖个scriptManager进来,在拉个updatepanel进来,在updatepanel中放入个contentTemplate,吧l ...