2011-04-18 111 views
2

有沒有辦法在MySQL中爲特定用戶分配默認數據庫,以便在查詢時不需要指定數據庫名稱?MySQL的默認數據庫

+2

你用什麼來連接MySQL?如果是shell,你可以使用合適的〜/ my.cnf。 – Lmwangi 2011-04-18 07:26:11

回答

2

我認爲你需要重新審視一些概念 - 正如Lomwangi指出的,如果你正在連接mysql客戶端,my.cnf可以設置它。

但是,您使用單詞查詢表明您正在討論從某些編程環境進行連接 - 在這種情況下,您將始終需要一個連接對象。要創建連接對象,在這種情況下,要連接到默認數據庫將不會有任何改進(就速度或簡單性而言)。有效地管理你的連接可能對你很有趣 - 但爲此你應該讓我們知道你的環境究竟是什麼。

1

將權限分配給每個用戶組時,還可以在同一文件中爲該組指定幾件事情,例如用戶組需要使用的數據庫。

您可以使用規範文件(取決於您使用的語言)作爲簡單變量來執行此操作。稍後,您只需查找該變量即可知道需要使用哪個數據庫。但是,我再說一遍,這取決於語言。規範文件可以是XML,phpspecs文件或類似的東西。

1

最好的辦法是在連接上使用MySQL觸發器。但是,MySQL只接受更新,刪除和插入的觸發器。 Google的快速搜索產生了一個有趣的存儲過程替代方案。請 見MySQL Logon trigger

1

如果使用數據庫模式,則不必每次都指定數據庫名稱,但需要選擇數據庫名稱。

+0

指定和選擇(在這種情況下)有什麼區別? – 2015-11-09 11:14:07