2009-12-15

小技巧:刪除登入帳戶(Logins,伺服器層級),也一併刪除資料庫使用者(DB Users,資料庫層級)



在 SQL Server 2005/2008 版本,若是要刪除登入帳戶(Login,伺服器層級),在管理工具 SSMS 上會出現以下的警告訊息:


刪除伺服器登入不會刪除與登入相關聯的資料庫使用者。
若要完成處理序,請刪除每個資料庫中的使用者。可能必須先將結構描述的擁有權轉移給新使用者。



也就是說,刪除了登入帳戶(Login,伺服器層級),但是在資料庫內仍然有此資料庫使用者(DB Users,資料庫層級)。
可能需要額外再到此資料庫內,刪除此資料庫使用者(DB Users,資料庫層級)。




若僅是一兩個資料庫,這種手動逐一刪除資料庫使用者的方式,或許還可以接受。
假若此登入帳戶(Login,伺服器層級),可以進入到多個資料庫呢?




這種手動逐一刪除資料庫使用者的方式,可能就十分吃力了。

建議的作法是:

1. 先選取要被刪除的登入帳戶,滑鼠右鍵,選擇「屬性」。
2. 在「登入屬性」視窗,在左邊的「選取頁面」窗格,點選「使用者對應」頁籤。
3. 在右邊的「已對應到此登入的使用者」區域,取消勾選先前所允許登入的資料庫。





4. 點選「確定」。
5. 再刪除此登入帳戶。


經由上述的作法,可以達成:刪除登入帳戶(Logins,伺服器層級),也一併刪除資料庫使用者(DB Users,資料庫層級)之需求。

2009-12-10

新手學SQL Server 2008 「多伺服器作業(Multi-Server Jobs)」 (下)



一般而言,SQL Server在企業上的應用,不會是僅有一兩台,而是有多台資料庫伺服器的使用,這對於資料庫管理師而言,在日常維護作業上,需要同時管理眾多的伺服器,將造成沈重的管理負載。

所以在面對擁有多台伺服器的環境,如何管理自動化,將是一大課題,關於多伺服器管理自動化的主題,包含十分廣泛,本文將以「多伺服器作業(Multi-Server Jobs)」進行討論。

資料庫伺服器所包含的日常維護作業,十分繁瑣,例如:備份資料庫與交易記錄、重組索引、更新索引統計值、對資料庫執行內部一致性檢查、轉檔作業等等。

雖然SQL Server有提供「維護計畫精靈」可以輕鬆地完成上述部分作業,但是面對擁有多台伺服器的環境,對每台資料庫伺服器逐一進行設定,以及後續的變更修正,將是讓人不得不去碰觸的難題。

在過往經驗中,待過百多台SQL Server的單位,也見識到擁有數千台SQL Server的單位,但專屬的資料庫管理人員可能是個位數,真是將「以更少做更多(Do More With Less)」的精神發揮到極致,利用SQL Server內建的「多伺服器作業(Multi-Server Jobs)」,將可以協助資料庫管理人員輕鬆地自動化管理多台伺服器的日常維護作業。

上集設定多伺服器作業,本集接續上集的內容,繼續將後半段練習設定完
畢。
(續)實作練習 1:建置「多伺服器作業」的基礎環境
...


完整的文章,請參考:第94期之一《新手學SQL Server 2008 「多伺服器作業(Multi-Server Jobs)」(下)》


相關參考資料:
新手學SQL Server 2008 「多伺服器作業(Multi-Server Jobs)」 (上)
http://sharedderrick.blogspot.com/2009/11/sql-server-2008-multi-server-jobs.html

更多相關的技術文章,請參考:DB World 資料庫專家電子雜誌
http://www.dbworld.com.tw/