萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> 教你給數據庫設置交叉權限

教你給數據庫設置交叉權限

由於 SupeSite 需要調用 Discuz! 和 UCHome 的數據,所以如果它們不安裝在同一個數據庫,SupeSite 的數據庫用戶必須要對 Discuz! 和 UCHome 的數據庫有讀取、修改、刪除等權限。這就需要在 MySQL 中對用戶權限進行修改,授予需要的權限。

本文將演示這種情況,並給出詳細的解決步驟。

本文示例的配置如下:

Discuz!
數據庫名:discuz_7_sc_utf8
數據庫用戶名:discuz_mysql
權限:操作 discuz_7_sc_utf8 的全部權限

SupeSite/X-space
數據庫名:ss_601_xs_401_sc_utf8
數據庫用戶名:ss_mysql
權限:操作 ss_mysql 的全部權限

出現情況:安裝 SupeSite/X-space 時無法檢測到 Discuz! 的數據庫。

解決方法:授予 ss_mysql 操作 discuz_7_sc_utf8 的全部權限。

如果為了方便,可以創建一個數據庫用戶,授予該用戶操作 Discuz! 和 SupeSite 數據庫的全部權限,在安裝時,都使用這個數據庫用戶,就不會出現本文的這種情況。以後安裝別的產品,比如 UCenter Home,再授予該用戶操作 UCenter Home 數據庫的權限即可。

一、安裝 Discuz_7.0.0_SC_UTF8

1、在 MySQL 中創建數據庫 discuz_7_sc_utf8

打開 phpMyAdmin => 創建一個新的數據庫

教你給數據庫設置交叉權限 三聯

2、在 MySQL 中創建數據庫用戶 discuz_mysql,授予操作數據庫 discuz_7_sc_utf8 的權限

打開 phpMyAdmin => 權限 => 添加新用戶

為了安全,不授予 discuz_mysql 這個用戶訪問其他數據庫的權利,所以全局權限不選。設計完畢,點擊“執行”。

跳轉到“編輯權限”的頁面,“按數據庫指定權限”選擇“discuz_7_sc_utf8”

在這裡,授予數據庫用戶 discuz_mysql 操作數據庫 discuz_7_sc_utf8 的全部權限,如圖所示。

3、Discuz_7.0.0_SC_UTF8 的安裝設置

在 Discuz! 安裝時,輸入剛才創建的數據庫名、用戶名和密碼。

二、安裝 SupeSite6.0.1_X-Space4.0.1_UC_SC_UTF8

1、在 MySQL 中創建數據庫 ss_601_xs_401_sc_utf8

2、在 MySQL 中創建數據庫用戶 ss_mysql,授予操作數據庫 ss_601_xs_401_sc_utf8 的權限

3、SupeSite6.0.1_X-Space4.0.1_UC_SC_UTF8 的安裝設置

安裝 SuperSite 時,輸入剛才創建的數據庫名:ss_601_xs_401_sc_utf8,數據庫用戶名:ss_mysql,以及已安裝的論壇 Discuz 的數據庫名 discuz_7_sc_utf8,如圖所示。

因為剛才只是授予數據庫用戶 ss_mysql 操作數據庫 ss_601_xs_401_sc_utf8 的權限,所以數據庫用戶 ss_mysql 並沒有操作數據庫 discuz_7_sc_utf8 的權限,這安裝時出現錯誤,提示“發生錯誤,您指定的 Discuz!數據庫(discuz_7_sc_utf8)不存在,請修正”。

4、授予用戶 ss_mysql 操作數據庫 discuz_7_sc_utf8 的權限,安裝成功

出現這種情況,就需要授予 ss_mysql 操作數據庫 discuz_7_sc_utf8 的權限。打開 phpMyAdmin => 權限 => 編輯權限,如圖所示。

SupeSite 需要 讀取、插入、刪除數據庫 discuz_7_sc_utf8 中的數據,所以授予用戶 ss_mysql 操作數據庫 discuz_7_sc_utf8 的全部權限。

授予權限之後,通過安裝程序的檢測,可以繼續安裝了。

需要注意的是,如果希望 SupeSite 和 Discuz!同步登錄,SupeSite 的 Cookie 設置要和 Discuz! 目錄下 config.inc.php 文件中的值相同,如圖所示。

現在安裝完畢,SupeSite 和 X-space 能夠正常顯示論壇中的內容。

copyright © 萬盛學電腦網 all rights reserved