错误访问被拒绝 - mysqlbackup n windows [英] Error access denied - mysqlbackup n windows

查看:90
本文介绍了错误访问被拒绝 - mysqlbackup n windows的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

After read this
https://www.codeproject.com/Articles/256466/MySqlBackup-NET#features

I have instaalled from NuGet
Install-Package MySqlBackup.NET -Version 2.1.0

MySql.Data and MySqlBackup are present on Reference

The project is Windows.Form on Win10





我尝试过:





What I have tried:

<br />
<pre>private void Backup()<br />
        {<br />
            string constring = "server=localhost; Database=db_catalogo; Uid=root; Pwd=test;";<br />
            constring += "charset=utf8;convertzerodatetime=true;";<br />
<br />
            string file = "D:\\backup.sql";<br />
            using (MySqlConnection conn = new MySqlConnection(constring))<br />
            {<br />
                using (MySqlCommand cmd = new MySqlCommand())<br />
                {<br />
                    using (MySqlBackup mb = new MySqlBackup(cmd))<br />
                    {<br />
                        cmd.Connection = conn;<br />
                        conn.Open();<br />
                        mb.ExportInfo.AddCreateDatabase = true;<br />
                        mb.ExportInfo.ExportTableStructure = true;<br />
                        mb.ExportInfo.ExportRows = false;<br />
<br />
                        <br />
                        mb.ExportToFile(file);<br />
<br />
                        // ???? Access Denied //<br />
                        // the backup.sql directory is created<br />
                        // and not the file backup.sql<br />
<br />
                        <br />
                        <br />
                        conn.Close();<br />
                    }<br />
                }<br />
            }<br />
        }</pre><br />
<\code>

推荐答案

看看这里:用C#备份SQL数据库 [ ^ ] - 它基于SQL Server,但几乎所有内容都适用于MySql。请注意最后一节那么,它会立即起作用吗?这可能解释了你的问题。
Have a look here: Backing up an SQL Database in C#[^] - it's based around SQL Server, but pretty much everything applies to MySql as well. Take note of the last section "So, It'll Work Now?" which probably explains what your problem is.


备份:导出数据库架构上的所有表和数据



Backup : export all Table and Data present on db schema

<br />
<pre>List<string> tbexport = new List<string>();</pre><br />
<br />
ex: <pre> //tbex.Add("tb_foto");<br />
          //tbex.Add("tb_test");<br />
<br />
empty = all Table<br />
</pre><br />







<br />
using (MySqlConnection conn = new MySqlConnection(constring))<br />
            {<br />
                using (MySqlCommand cmd = new MySqlCommand())<br />
                {<br />
                    using (MySqlBackup mb = new MySqlBackup(cmd))<br />
                    {<br />
                        cmd.Connection = conn;<br />
                        conn.Open();<br />
                        mb.ExportInfo.AddCreateDatabase = true;          <br />
                        mb.ExportInfo.ExportTableStructure = true;        <br />
                        mb.ExportInfo.ExportRows = true;                 <br />
                        mb.ExportInfo.TablesToBeExportedList = tbexport; <br />
<br />
                        file = path + "db_catalogo.sql";<br />
                        mb.ExportToFile(file);<br />
<br />
                        conn.Close();<br />
                    }<br />
                }<br />
            }<br />





恢复:创建Db架构(如果不存在),以及所有表

连接字符串,不指定dbname





Restore : create Db schema if not exist, and all Table
on connection string, not specify the dbname

<br />
<pre><br />
string constring = "server=localhost;user=root;pwd=your pwd";<br />
using (MySqlConnection conn = new MySqlConnection(constring))<br />
            {<br />
                using (MySqlCommand cmd = new MySqlCommand())<br />
                {<br />
                    using (MySqlBackup mb = new MySqlBackup(cmd))<br />
                    {<br />
                        cmd.Connection = conn;<br />
                        conn.Open();                        <br />
                        mb.ImportFromFile(file);<br />
                        conn.Close();<br />
                    }<br />
                }      <br />
      }<br />
</pre><br />


这篇关于错误访问被拒绝 - mysqlbackup n windows的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆