升級到2.9.1.1版本/正體中文官網上線

今天將 wordpress mu 升級到 2.9.1.1 版本, 但原來是 2.8.2 的版本, 所以需要經過這個步驟 (http://ocaoimh.ie/wordpress-mu-2-8-3/), 先升級到 2.8.3, 否則在使用自動升級會中止無法順利自動升級版本. (使用手動升級的就不會有這個問題)

升級完成後, 也順便找一下繁體中文的語言檔, 發現一件很開心的事, 就是 wordpress 有正式的官方網站囉, 而且這樣一來, 繁體中文的更新速度就會快更多了呢! 官網在此: http://tw.wordpress.org/ , 而新的語系檔可以到該 svn 下載, http://svn.automattic.com/wordpress-i18n/zh_TW/trunk/messages/zh_TW.mo, 放到 wordpress mu 的目錄: /wp-includes/languages 中即可, 這樣升級含中文方便多了.

真方便!

Broken Link Checker-WordPress Plugin

在寫網頁時, 有時要去檢查自己網站內的連結是否還是可用的, 通常需要一些小工具或外部服務來幫忙, 不過在 wordpress 中, 有個貼心的小插件(plugin), Broken Link Checker, 可供使用.

安裝之後, 會在[工具]中多一項 Broken Links 的功能選項, 而且會自動進行網誌內的連結檢查(包含內部及外部的), 十分方便好用, 不再需要一個一個檢查或是找其他的外部工具來檢查, 因為這個 plugin 會將網誌內的 link 逐一檢查, 不但有效率, 也很快速.

t-bl

官方的連結在這裡: http://wordpress.org/extend/plugins/broken-link-checker/ 大家可以用看看囉!

SQL Server全文檢索資料庫的復原

一般資料庫我們備份後, 由於全文檢索技術, 和資料庫引擎不同, 是使用檔案及全文檢索引擎架構的一種方式, 所以在回復到異地後, 資料庫上線了, 但 fulltext catalog 內的資全文檢索資料不能用的問題, 這時候, 只需要再做一次 rebuild 即可, 因為所有的資料庫及相關欄位等設定其實都在, 但路徑上及檔案結構上的問題, 導致會有無法讀取的狀況. 這時候, 於 restore 資料庫後, 做一次 fulltext catalog 的 rebuild, 問題就能順利解決了.

若是原地復原, 則沒有這個問題.

wordpress中好看的字型

在 wordpress 中, 預設的字型(英數)是 Georgia, 這個字型還蠻好看的, 所以在 wordpress 內寫英文字句都令人很賞心閱目, 而今天又發現另一個字型也有這樣的特性, 是 Constantia. 這兩種字型的特性, 就是英數時, 會高高低低的, 有一種硬硬的打字機的感覺. 這樣將在 word 中使用該兩種字體的圖擷下來供參考:

good-font

post revision功能真是不錯

原來在版本 2.6 時已經有了一個很特別的新功能, 稱之前 post revisions, 也就是文章版本管理(控制), 這個功能還蠻強大好用的, 一方面像是時光還原器, 一方面還能做版本比對, 的確是對於寫長篇大論的文章有非常方便之處, 而且其實有時若是沒有存到檔, 配合的 auto save 功能也能發揮作用, 讓損失降到最低.

預設功能在發表文章頁面上, 有個”文章版本”, 這個區塊, 如下:

post-revisions

點擊進去後, 就可以看到一個很友善的版本選擇及管理功能, 如下:

post-revisions2

然後可以挑選要比較的版本, 並按下[比較不同版本]後, 就可以列出兩個比較, 如下:

post-revisions3

如此一來, 便能一目了然, 方便文章的撰寫, (真的是在寫文章編輯的好工具), 這樣的計設, 功能真的很強大.

當然, 有這個功能, 也會需要一些空間來存放, 若是覺得會浪費空間或是要刪除這個備份, 當然也有可以取消地方, 可以參考: http://blog.dogg3h.com/how-to-disable-wordpress-post-revision

原來我現在才發現這個功能, 真的 lag 很久耶.

安裝了Akismet的AntiSpam功能

因為太多垃圾留言(雖然不會在前台顯示, 不過還是要去標示他為垃圾), 所以打算用強一點的方式來管理, 這個 Akismet 的 antispam 功能還蠻強大的, 主要是在寫入時, 就直接處理, 若判定是 spam 就會被阻擋掉, 很自動的功能, 遠比自行標示為已經進來的垃圾留言為垃圾還方便.

在用 wordpress 的人, 一定要用的好物. Akismet antispam: http://akismet.com/

wordpress plugin: http://akismet.com/download/

更新2.8.2

升上了2.7之後, 就有後台自動更新的功能, 不需要手動下載, 然後上傳等煩瑣的步驟來進行更新. 利用後台的自動更新, 將版本昇到 2.8.2 了, 並附上成功更新的畫面, 基本上, 真的是太人性化的設計了耶.

autoupdate282

不過其實更新前一樣都要先做好備份網站程式及資料庫的工作, 才不會發生問題時, 沒得補救哦.

wordpress2.8 release了

真是好消息, wordpress 2.8 release 了, 請參考: http://wordpress.org/development/2009/06/wordpress-28/ , 不過, 回到 http://mu.wordpress.com/ 時, 發現 mu 版本並未一併更新, 通常應該會遲一點, 不過可以先看看官方 blog 中的 wordpress 2.8 介紹, 先了解一下新增的功能.

屆時有 wordpress for mu 2.8 release 時, 再來進行升級更新, 不過其實目前的 wordpress for mu 我已經覺得很好用也很方便了, 期待它的新版本更新, 能修掉一些 bug 並強化更多功能.

查詢分割資料表的資料存放位置

由於資料量龐大, 為能改善效能, SQL Server 2005 增加了 Partition Table 功能將 table 依 partition function 來做分塊”橫切”的方式存放, 以將常用資料及不常用資料(如歷史訂單資料), 做實體的存放位置劃分, 讓它實際上是同一個表, 但在存放上是在不同的 filegroup 上, 如此一來, 便能有效將資料表做分塊(分區橫切)管理, 若是 partition function 切割有效的話, 對於查詢應用及備份應用應該會有非常大的幫助.

接下來, 我們需要了解的是實作完成後的 partition table 內, 各分區的資料存放筆數狀況, 可以利用兩個系統表來操作取得, 分別為:

  1. sys.partitions : (http://msdn.microsoft.com/zh-tw/library/ms175012.aspx)
  2. sys.dm_db_partition_stats: (http://msdn.microsoft.com/zh-tw/library/ms187737.aspx)

若是要取得某 table 名為 tblTest 這個 table 在各 partition table 中的存放筆數, 可以利用這個查詢:


SELECT ps.partition_number
,ps.row_count, ps.index_id
FROM sys.dm_db_partition_stats ps
INNER JOIN sys.partitions p
ON ps.partition_id = p.partition_id
AND p.[object_id] = OBJECT_ID('tblUsers')

這樣取得的結果, 一般若非 partition table, 會得到一筆資料, 例如:

d1

其中三個欄位說明如下:

  • partition_number: 指對應的資料分割編號(以1為基礎), 把他想成存放的分區代碼
  • row_count: 這個就是資料筆數
  • index_id: 這個很重要, 0為堆積, 1為clustered, 2以上為non-clustered

若是有無切分 partition table , 但又有多個 index 的 table 會得到如下結果:

d2

其中, 就是 1為clustered, 而9, 11, 12為 non-clustered 的資料.

再來就是看有切 partition table 的結果:

d3

這個案例來自於這篇文章: [SQL Server]如何將現有table調整為partition table (http://bbs.diary.tw/viewtopic.php?f=13&t=464)

其中, 可以清楚地看到 index_id 為0的, 是 partition_number 為1, 2, 3的資料存放筆數狀況, 而 index_id為2的是後來利用增加 primary key non-clustered index 的方式加入的索引, 得到總筆數的一個 index 存放狀況.

簡而言之, 資料存放的方式為 parititon1 放了 2筆, partitiona2放了 3筆, partition3放了4筆資料, 這樣的查詢結果對於要查目前的 partition table內存放資料的對應 parition 狀況應該就有很清楚的結果呈現了.