MySql Server安裝步驟 1安裝MySql Server 2 安裝MySqlServer管理工具 解壓中文語言包,將文件複製到安裝目錄下覆蓋 文件覆蓋後,打開軟體設置語言為中文(CN) 3 MySqlServer開發註意事項(C#) public class Cmd { /// <summa ...
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;
}
}