直接在cmd执行如下代码:
mysqldump  -h localhost -uroot -p123 --default-character-set=utf8 --opt --disable-keys --lock-all-tables -R --hex-blob  TEST >D:\PM\bin\Debug\BackUp\TEST_20161212.sql

TEST为数据库名称

// 执行创建数据库操作
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 = ;
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(); // 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数据库的备份 还原 初始化

    // 执行创建数据库操作 this.GetExecute(G_Con, "create database if not exists NEWDB"); this.sqlAddres ...

  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. [知了堂学习笔记]_Java代码实现MySQL数据库的备份与还原

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

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

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

  9. 一、MySQL中的索引 二、MySQL中的函数 三、MySQL数据库的备份和恢复 四、数据库设计和优化(重点)

    一.MySQL中的索引###<1>索引的概念 索引就是一种数据结构(高效获取数据),在mysql中以文件的方式存在.存储建立了索引列的地址或者指向. 文件 :(以某种数据 结构存放) 存放 ...

随机推荐

  1. sharepoint 2013 入门1_ 建立一个网页程序

    步骤: 1.新建项目. 2.项目到office/sharepoint 解决方案=>sharepoint2013 空项目 3.sharepoint 自定义向导(电脑必须要装sharepoint 不 ...

  2. Windows2012 显示我的电脑

    从Windows2012开始,微软取消了服务器桌面个性化选项,如何重新调出配置界面,可以使用微软命令调出.具体方法如下: 1.同时按住键盘上的“Windows键”+“R”,调出运行窗口.在运行窗口输入 ...

  3. 对象-3.py

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Monaco; color: #cbcbcb } p.p2 { margin: 0.0px 0 ...

  4. MyBatis调用Oracle存储过程

    MyBatis调用Oracle存储过程 1.无输入和输出参数的存储过程 2.带有输入和输出参数的存储过程 3.返回游标的存储过程 mybatis中的配置文件代码 <resultMap type= ...

  5. DAL.SQLHelper 的类型初始值设定项引发异常的处理

    这是DAL.SQLHelper的类中定义了sql连接字符串,但是在web.config中没有定义,在类判断获取的字符串是否为空,或是在web.config添加相应的连接字符串.

  6. 用jQuery基于原生js封装的轮播

    我发现轮播在很多网站里面都用到过,一个绚丽的轮播可以为网页增色不少,最近闲来无事,也用原生js封装了一个轮播,可能不像网上的插件那么炫,但是也有用心去做.主要用了闭包的思想.需要传递的参数有:图片地址 ...

  7. DOM对象与jquery对象有什么不同

    jQuery对象和DOM对象使用说明,需要的朋友可以参考下.1.jQuery对象和DOM对象第一次学习jQuery,经常分辨不清哪些是jQuery对象,哪些是 DOM对象,因此需要重点了解jQuery ...

  8. Seo标签权重

    最近接手凤凰焦点的业务,首先做的现有线上业务梳理,接着是拆分模块. 页头部分有些争议.假设把页头做成一个组件,pc端因为不能页面加载的差不多了页头才突兀的出来一是体验不好,还有不利于seo,最终决定还 ...

  9. DOM常用操作总结

    一.getElementById() 寻找一个有着给定 id 属性值的元素,返回值是一个有着给定 id 属性值的元素节点.如果不存在,这样的元素,它返回 null. 二.getElementsByNa ...

  10. 《C++ Primer》学习笔记【第三部分 类设计者的工具】

    第13章 拷贝控制 使用default:=defult只能修饰默认构造函数或拷贝控制成员,显式地要去编译器生成合成的版本. 使用delete:=delete通知编译器不希望定义这些成员,禁止试图使用它 ...