windows下mysql的备份

目前我试了2种方式进行备份数据库

先查询mysql安装路径:select @@basedir as basePath from dual

 

 第一种方式:然后进入安装目录找到data文件夹,直接将里面的文件备份

如果安装目录下没有data文件夹,使用show variables like 'datadir';进行查询数据目录

 

 

第二种方式,进入安装目录的bin文件夹,然后在地址栏里面输cmd,回车进入命令行

输入命令:mysqldump -uroot -p world > world.sql     这句的意思是将world数据库备份到world.sql文件中,备份为sql脚本

完整命令为mysqldump -h主机地址ip -P(大写)端口号 -u用户名 -p密码 数据库名>路径名

例:mysqldump -h127.0.0.1 -P3306 -uroot -p123456 userdata>test.sql

(恢复命令为mysql -h主机地址ip -P(大写)端口号 -u用户名 -p密码 数据库名 < 路径名)

然后输入数据库密码,完成备份

第二种方式的C#示例代码

string mysqlPath = @"C:\Program Files\MySQL\MySQL Server 5.7\bin";
string backupName = Guid.NewGuid().ToString("N");
string pwd = "123456";
//使用命令行执行备份命令
Process p = new Process();
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = true;
p.Start();
p.StandardInput.WriteLine($@"cd /d{mysqlPath}");
p.StandardInput.WriteLine($@"mysqldump -uroot -p{pwd} userdata >{backupName}.sql");
p.StandardInput.WriteLine("exit");
p.WaitForExit();
p.Start();
Console.WriteLine("ok");
Console.ReadKey();

posted @ 2021-07-30 14:34  奇迹之耀  阅读(1057)  评论(0编辑  收藏  举报