2016-02-22 50 views
1
Dim myProcess As New Process() 
myProcess.StartInfo.FileName = "cmd.exe" 
myProcess.StartInfo.UseShellExecute = False 
myProcess.StartInfo.WorkingDirectory = "C:\Program Files\MySQL\MySQL Server 5.7\bin\" 
myProcess.StartInfo.RedirectStandardInput = True 
myProcess.StartInfo.RedirectStandardOutput = True 
myProcess.Start() 
Dim myStreamWriter As StreamWriter = myProcess.StandardInput 
Dim mystreamreader As StreamReader = myProcess.StandardOutput 
myStreamWriter.WriteLine("mysql -u root -p******* tryagain < C:\Users\deo\Documents\dumps\Dump20160221.sql ") 
myStreamWriter.Close() 
myProcess.WaitForExit() 
myProcess.Close() 

我使用的是MySQL服务器5.7,并通过MysqlWorkbench查看的DBFILES。
我想要做的是通过使用vb.net恢复.sql数据库
但是,这个错误阻止我这样做。错误1049(42000):未知的数据库 'TRYAGAIN'

我搜索了很多与我的问题有关但与我的错误情况没有匹配的人。
任何建议将不胜感激。

+0

转储文件包含多少个数据库? –

+0

只有一个数据库文件sir – Deo

+0

尝试在转储文件的顶部添加'USE '。 –

回答

1

您的转储文件缺少顶部的USE语句,导致MySQL无法找到脚本所引用的数据库。将以下行添加到转储文件的顶部:

USE tryagain 

阅读this SO question了解更多信息。

相关问题