2017-04-18 41 views
0

我有一個問題,我需要解決,但不知道如何。我有一個連接到在線MySQL服務器的WinForms應用程序(C#) - 沒有問題。在這個應用程序中,我可以選擇進行數據庫備份(基本上,我將這個數據庫轉儲到計算機上的本地文件中)。MySQL c#Winform的 - 從轉儲文件(本地主機)創建新的數據庫

我想在客戶端計算機上本地「打開」這個備份(檢查一些舊數據) - 我不想在我的服務器上進行數據庫恢復,因爲數據庫必須仍然被其他用戶使用。我想在本地計算機上進行乾淨的MySQL安裝,並通過localhost連接到它(與我一樣進行測試),但我沒有物理訪問該計算機的權限。我可以將MySQL安裝程序發送到我的客戶端,但是如何從我的轉儲文件中自動創建具有密碼和數據庫的用戶?

我知道如何創建一個新的數據庫,如果它不存在,但如何做到這一點,如果它乾淨安裝的MySQL服務器 - 沒有用戶和密碼呢。

string connStr = "server=localhost;user=root;port=3306;password=????;"; 
using (var conn = new MySqlConnection(connStr)) 
using (var cmd = conn.CreateCommand()) 
{ 
    conn.Open(); 
    cmd.CommandText = "CREATE DATABASE IF NOT EXISTS `hello`;"; 
    cmd.ExecuteNonQuery(); 
} 

任何幫助和方向表示讚賞。

問候!

+1

難道你不能只用一個不同的數據庫名稱恢復服務器上的數據庫,並讓客戶端連接到那個? – millimoose

+0

我想過......但理論上來說,來自不同計算機的多個用戶可能決定同時查看他們的備份,所以我將不得不創建多個新數據庫,否則他們只會覆蓋其他人。這就是爲什麼我寧願去當地... – user1080533

+0

給每個用戶一個不同的數據庫名稱。老實說,介紹數據庫由非技術用戶在本地安裝的情況似乎會導致比它的價值更大的麻煩,除非通過選擇可以輕鬆嵌入流程中的數據庫等明確計劃。哪個MySQL不是。 – millimoose

回答

0

我不知道我是否理解你的問題。但是,如果安裝新的Mysql,則可以通過不使用數據庫來使用root用戶。 無論如何,你需要知道的一件事,連接數據庫必須有userpasswordmysqlsqlserver

您可能需要更加簡明地描述您的問題。

相關問題