這陣子經常在台中教書,每次換到不同班的學生就會遇到一次這個問題,因為從 SQL Server 2008 開始 Management Studio 管理工具預設會防止儲存需要資料表重建的變更(Prevent saving changes that require table re-creation),意思是說,當你在修改資料庫表格結構時,當修正的幅度過大,例如移除欄位、變更欄位順序、變更欄位型態、變更欄位長度、變更是否允許 NULL等狀況,預設都會拒絕你變更資料表結構,導致按下儲存按鈕之後並沒有真正的變更資料結構(Schema),這個預設設定對剛踏入 IT 屆小白兔來說實在有點挫折,不過這點安全控制也保護了資料庫遺失資料的風險。
... 繼續閱讀 ...
在我們代管眾多客戶的 SQL Server 資料庫中其中有個客戶的資料庫非常特殊,他們的資料表命名都會有小數點在內,例如:[dbo].[Order.Profile],至於為什麼這樣命名已經不可考 (我猜是為了讓表格在 Management Studio 裡排序的比較整齊吧?!),這樣的設計在開發上的確沒有什麼問題,只要適切的加上中括弧 ( [xxxx] ) 即可,但是在管理面來說,就不是那樣可愛了,像我昨天為了要執行 DBCC CHECKTABLE 來檢查資料表時就試了好久無法成功,直到詢問微軟技術支援中心才得到解答。
... 繼續閱讀 ...
SQL Server 提供的 Database Mail 功能非常好用,設定也很簡單,不過有在使用的人一定會遭遇到運作記錄過大的問題 ( Database Mail 紀錄 ),因此當到了需要清除的時候,就可以參考此篇文章說明進行記錄清除等作業。另一個使用的機會就是當有大量 Database Mail 郵件被產生或因為 SMTP 異常導致失敗時若需要批次刪除這些大量郵件,也可以透過系統內建的預儲程序進行刪除,以下是我的資料庫管理筆記。
... 繼續閱讀 ...
在有多個應用程式使用相同 SQL 登入帳號存取 SQL Server 資料庫時,經常會無法在 SQL Server 管理介面中分析連線來源到底是誰,例如同時有一個網站與另一個 Windows 服務同時都在運作並連接資料庫的時候。遇到這種情況如果當資料庫發生負載過重時經常無法有效區別出到底是哪個應用程式發生問題,這時就可以利用今天的技巧來協助分析。
... 繼續閱讀 ...
最近發現我們有台 SQL Server 伺服器由 SQL Server Agent 所管理的其中一個 syspolicy_purge_history 作業發生執行失敗的問題,從記錄檔檢視器中得知是「無法連接到伺服器」的錯誤,進一步瞭解才得知原來這是在 SQL Server 叢集架構下才有可能會出現此問題。
... 繼續閱讀 ...
暨【安裝 SQL Server 2008 容錯轉移叢集心得筆記 – 第 1 篇】與【安裝 SQL Server 2008 容錯轉移叢集心得筆記 – 第 2 篇】之後,今天將是完結篇的時候,我們要把第二台 SQL Server 2008 叢集主機設定完成,以達成 高可用性(High Availability; HA) 的目的。
... 繼續閱讀 ...
昨天的【安裝 SQL Server 2008 容錯轉移叢集心得筆記 – 第 1 篇】已經將叢集所需的基本環境建立完成,今天就要開始開始設定 Windows 叢集與架設 SQL Server 2008 容錯轉移的重頭戲了,好戲即將上場,敬請專心備戰。
... 繼續閱讀 ...
SQL Server 2008 容錯轉移叢集架設沒想像這麼簡單,絕對不是照著安裝精靈按下一步、下一步就能夠完成的,而且 SQL Server 2008 RTM 版本根本無法成功架設叢集,害我第一次架設了 6 小時然後在最後一步失敗,最後安裝失敗的 SQL 資料庫實體還移不掉,只好從作業系統全部重新再來一次,這難得的經驗還是要記錄一下,但由於步驟太多,所以會區分幾篇文章。
... 繼續閱讀 ...
我有訂閱 MSDN Blogs RSS 的習慣,但這個 RSS 每天都差不多會有幾十篇到上百篇的文章在這裡出現,我當然無法全部看完,所以這個 RSS 對我來說純粹是一個「隨緣」的 RSS 訂閱,但三不五時就會發現一些不錯的部落格與文章,像是今天要介紹的 Common tips and tricks from a SQL Developer Support perspective 部落格就是一例,裡面有好多跟 SQL Server 開發相關的技巧,真的挖到寶了。
... 繼續閱讀 ...