您在這裡部落格 / Admin 的部落格 / Drupal 誤刪管理員帳號之解決辦法!

Drupal 誤刪管理員帳號之解決辦法!


By Admin - 發佈 19 九月 2008

昨晚又隨手翻譯了 avatar_selection 和 reCAPTCHA 這兩個 Drupal 模組。在測試的時候總是因為 Drupal 的網頁快取,一些翻譯的詞句總是沒有被更新,一氣之下直接進入 MySQL 資料庫手動更改了這些詞句;結果一個不小心,竟然把管理員的帳號給刪除了!

網頁重新整理之後,竟然無法再次以管理員身分登入,所有以管理員身分發表的文章也都從站上消失了。當場傻眼 ─

 

因為這幾天根本沒有做資料備份!

 

沒轍!查了一下 Drupal 技術支援資料,在 "Accidentally deleted admin account" 這篇討論串裡找到解決之道,方法其實不難,記下來供後人參考。

Drupal 使用者資料庫會依據使用者註冊的時間先後順序"+1"遞增,為了安全起見,管理員的"uid"一定是一號 ─ 就是當初建站的第一個帳號。此帳號一旦被刪,之後就算再新建一個同名帳號,因為其"uid"已經不再是"1",所以也就不再與管理員一樣具有相同的管理權限;注意!重點來了!

要想賦予重新註冊的管理帳號管理員身分,必須先使用如"phpMyAdmin"一類的 MySQL 管理工具進入 Drupal 的資料庫 → 找到 users 資料表 → 找到要成為管理員的帳號名稱 → 進入編輯 →找到 uid 欄位 → 把這一欄的數字改為 1 → 執行儲存 → 大功告成!

現在應該又可以重新以管理員身分登入 Drupal 管理介面了!若是希望之前以管理員帳號發佈的文章都能再次出現,在重新註冊時把帳號名稱取成和之前誤刪的管理員帳號名稱相同的就行了。

標籤 (Tags)