2013-01-23 162 views

回答

2

不可以。您只能擁有一個具有任何名稱的MySQL數據庫 - 您將需要更改一個(或兩個!)數據庫的名稱。

+0

這是因爲它們都可以提供給root用戶,所以存在衝突? – mt0s

+0

這是想法的一種方式。更準確的解釋是,MySQL會根據名稱跟蹤數據庫的所有內容(例如,所有數據位於以數據庫命名的文件夾中),因此無法區分多個數據庫名稱。 – duskwuff

2

兩個不同的數據庫必須有兩個不同的名稱; MySQL無法通過名稱來區分它們。在託管例如Web服務的一種常見做法,是前綴與用戶名的數據庫名稱,所以數據庫將被稱爲:

CREATE DATABASE user1_dbname 
CREATE DATABASE user2_dbname 

MySQL的可以單獨的權限表中每個用戶一個數據庫,這將使得user1只能訪問特定的一組表,並且user2可以訪問不同的集合,但這是令人困惑的問題。真的,他們應該分開命名。

/* Separate SELECT permissions for user1 and user2 by table */ 
GRANT SELECT ON shared_dbname.user1table1,shared_dbname.user1table2 TO [email protected] 
GRANT SELECT ON shared_dbname.user2table1,shared_dbname.user2table2 TO [email protected] 
相關問題