| 
 MySql Server安装步骤  
1安装MySql Server 
    
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
2 安装MySqlServer管理工具 
    
   
   
   
   
   
   
   
    
 解压中文语言包,将文件复制到安装目录下覆盖  
     
   
   
    
文件覆盖后,打开软件设置语言为中文(CN)  
    
   
   
   
3 MySqlServer开发注意事项(C#) 
 
 - 联接字符串:"Server=localhost;Database=100;Uid=root;Pwd='root'"
  
 - 引用MySql.Data.dll;
  
 - using MySql.Data.MySqlClient;
  
 - 使用MySqlConnection、MySqlParameter、MySqlDataAdapter、MySqlCommandBuilder、MySqlCommand、MySqlDataAdapter、MySqlTransaction等类
  
 - 使用MySqlCommand. ExecuteScalar()方法返回的object如果要转为int类型,必须使用Convert来强制转换,否则可能会出错。
  
 - 修改记录时,字段数据类型如果为Bit类型的时候,Sql语句中的字段值要使用Ture或False,不能像SqlServer中一样使用0或1。
  
 - 命令行工具:
  
  
public class Cmd  
{  
/// <summary>  
/// 执行Cmd命令  
/// </summary>  
/// <param name="workingDirectory">要启动的进程的目录</param>  
/// <param name="command">要执行的命令</param>  
public static void StartCmd(String workingDirectory, String command)  
{  
Process p = new Process();  
p.StartInfo.FileName = "cmd.exe";  
p.StartInfo.WorkingDirectory = workingDirectory;  
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(command);  
Thread.Sleep(10000);  
//p.StandardInput.WriteLine("exit");  
}  
public static void StartCmd()  
{  
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("net stop mysql");  
Thread.Sleep(5000);  
p.StandardInput.WriteLine("net start mysql");  
Thread.Sleep(5000);  
p.StandardInput.WriteLine("exit");  
}  
}  
 
 - 备份:
  
  
public static bool BackUp(string backupPath)  
{  
try  
{  
//构建执行的命令  
StringBuilder sbcommand = new StringBuilder();  
sbcommand.AppendFormat("mysqldump -f -l -q -uroot -proot Sciendox50 -r \"{0}\"", backupPath);  
String command = sbcommand.ToString();  
//获取mysqldump.exe所在路径  
String appDirecroty = @"C:\Program Files\MySQL\MySQL Server 5.5\bin\";  
Cmd.StartCmd(appDirecroty, command);  
Cmd.StartCmd();//重启mysql服务  
MessageBox.Show(@"数据库已成功备份到 " + backupPath + " 文件中", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);  
return true;  
}  
catch (Exception)  
{  
MessageBox.Show("数据库备份失败!");  
return false;  
}  
}  
 
 - 还原:
  
  
/// <summary>  
/// 数据还原  
/// </summary>  
/// <param name="FilePath">文件路径</param>  
/// <returns></returns>  
public static bool RestoreDB(string FilePath)  
{  
try  
{  
StringBuilder sbcommand = new StringBuilder();  
//在文件路径后面加上""避免空格出现异常  
sbcommand.AppendFormat("mysql -uroot -proot Sciendox50 <\"{0}\"", FilePath);  
String command = sbcommand.ToString();  
//获取mysql.exe所在路径  
String appDirecroty = @"C:\Program Files\MySQL\MySQL Server 5.5\bin\";  
DialogResult result = MessageBox.Show("您是否真的想覆盖以前的数据库吗?那么以前的数据库数据将丢失!!!", "警告", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);  
if (result == DialogResult.Yes)  
{  
Cmd.StartCmd(appDirecroty, command);  
Cmd.StartCmd();//重启mysql服务  
MessageBox.Show("数据库还原成功!");  
return true;  
}  
return false;  
}  
catch (Exception)  
{  
MessageBox.Show("数据库还原失败!");  
return false;  
}  
}  
   |