首頁  >  文章  >  CMS教程  >  遷移 WordPress 資料庫入門:基本資料庫知識

遷移 WordPress 資料庫入門:基本資料庫知識

WBOY
WBOY原創
2023-09-04 17:05:04524瀏覽

在處理基於 WordPress 的專案時,可以說部署中最令人沮喪或最乏味的方面之一實際上是使環境中的資料庫彼此同步。

當然,在開發中使用測試數據、在暫存中使用用戶數據以及在生產中使用實際數據是有道理的,但沒有什麼靈丹妙藥,對吧?這意味著測試資料有時會起作用;其他時候則不會。

例如,假設您繼承了一個項目,您必須為其拉取資料庫,然後開始使用現有資料。或者假設您必須將整個網站或應用程式從一台伺服器遷移到另一台伺服器。

在這種情況下,測試數據並沒有太大幫助。相反,您需要一個工具。當然,WordPress 導入器對於基本遷移來說是一個不錯的工具,如果您熟悉資料庫前端並使用 SQL 本身,那麼執行 SQL 匯出和匯入是可以的。

但是那些介於兩者之間的人呢?


讓遷移變得更容易

事實是,當涉及到 WordPress 資料庫遷移時,這是一個魚龍混雜的情況,因為我們中的許多人的技能水平因我們最常使用的堆疊的哪一部分而異。

我的意思是:

  • 那些更熟悉前端工作的人可能不太熟悉應用程式層和/或資料庫層
  • 習慣應用層工作的人可能對前端也很擅長,但對資料庫卻不太擅長(反之亦然)
  • 那些生活在資料庫中的人可能會對上面的層感到不舒服

這並不是說沒有全端開發人員。顯然,有;然而,並不是每個人都處於這個位置。

因此,當涉及到遷移 WordPress 資料庫時,有些人的處境比其他人困難得多。或者,儘管人們對 SQL 很熟悉,但有些人可能只是在尋找一種工具來幫助簡化整個過程。

在本系列中,我們將介紹一個能夠實現此目的的實用程序,但在此之前,讓我們快速了解一下 WordPress 資料庫,以確保我們能夠都在同一頁上。


WordPress 資料庫

當談到討論 WordPress 資料庫時,可以寫一整系列的文章來討論每個表格、每個欄位、架構、如何寫最佳查詢等等。

這不是一個系列。

相反,我們將在本文中做兩件事:

  1. 我們將確保我們都對資料庫有一個清晰的概念性理解,以便我們知道如何在腦海中描繪它
  2. 我們將查看 WordPress 資料庫中的每個表格,以了解每個表格保存的資料類型

最終,這應該有助於為那些在前端花費更多時間的人解釋或揭開一些底層工作的神秘面紗,並可能幫助那些花更多時間在應用程式層使用WordPress API 的人了解哪些功能會匹配到哪個表(這最終可以編寫更好的程式碼)。

什麼是資料庫?

總的來說,我想Wptuts 的大多數讀者都知道什麼是資料庫。

直接來自維基百科:

資料庫是有組織的資料集合。這些數據通常被組織為對現實的相關方面進行建模(例如,酒店房間的可用性),以支援需要此資訊的流程(例如,查找有空房的酒店)。

這是一個公平的定義,但我認為它不能很好地說明 WordPress 資料庫或類似的 Web 應用程式 - 它有點太籠統了。因此,從這裡開始,讓我們創建自己的工作定義,以便在本系列的其餘部分中使用。

迁移 WordPress 数据库入门:基本数据库知识

#讓我們試試這個:

資料庫至少由一張表組成。表由行和列組成,每行儲存唯一的資訊。每行稱為一筆記錄。一個資料庫中可以存在多個表,有時表之間可以相互關聯。

也許我上面分享的內容中最令人困惑的部分是表格可以相互關聯。我們將在文章結束之前重新討論這個想法 - 但首先,讓我們討論一下 WordPress 資料庫。

WordPress 資料庫架構

簡而言之,WordPress 資料庫由 11 個表組成(除非您使用 Multisite,但這超出了本系列的範圍)。

現在,每個表還有自己的一組列,表示表中儲存的各種資訊。例如,wp_posts 表有一個名為 post_content 的列,它表示儲存在貼文中的實際內容。

表格及其說明如下:

  • wp_users 包含註冊 WordPress 安裝的使用者清單。這包括電子郵件地址、密碼、顯示名稱等。
  • wp_usermeta包含與每個使用者相關的資訊。您可以在此處儲存有關每個使用者的其他資訊。
  • wp_posts 是儲存所有貼文資訊的地方。事實上,無論是貼文、頁面還是自訂貼文類型,標題、內容等所有資訊都儲存在此。
  • wp_postmeta 是儲存每個貼文的元資料的位置。透過此表,您可以保存和檢索有關每個帖子的更多資訊。
  • wp_comments 是儲存每個貼文的評論(同樣,無論類型為何)的位置。
  • wp_commentmeta 與其他「元」表一樣,您可以儲存比評論表中已保存的更多有關每條評論的資訊。
  • wp_terms 是儲存類別和標籤的位置。由於貼文、頁面、自訂貼文類型、類別和標籤之間的關係可能​​會變得更加複雜,因此需要一些額外的表格。
  • wp_term_taxonomy 提供 wp_terms 表格中類別或標籤(甚至是鏈接,如果您仍在使用它們)的說明。
  • wp_term_relationship 儲存給定貼文與其類別(或多個類別)和/或標籤(或多個標籤)的關係。
  • wp_options 是保存所有設定的位置 - 這包括使用 WordPress 附帶和配置的設定以及使用設定 API 建立的設定。
  • wp_links 是一個仍然存在於 WordPress 資料庫中的表,儘管不再有資料的 UI 選項。如果您曾經使用過此功能,那麼您就會熟悉連結及其工作原理,並且這是儲存它們的表。

這就是 WordPress 資料庫的全部內容。它相對簡單明了,對嗎?

貼文保存在貼文表中,評論保存在評論表中,用戶保存在用戶表中,等等。當然,有一些細微的差別(例如頁面儲存在 Posts 表中);然而,這是一個相對不複雜的模式。

這是一件好事。

另外,還記得我們之前提到過一些表格可以互相引用嗎?評論表和貼文表就是一個很好的例子。由於評論是在特定帖子上留下的,因此評論需要知道它與哪個帖子 ID 關聯,以便在加載帖子時,可以檢索與該帖子 ID 相關的評論。

迁移 WordPress 数据库入门:基本数据库知识

#無論如何,這比我們在本系列中深入探討的細節要多,但希望這足以給您一個想法。如果您對更多技術資訊、表格之間的關係、列等感興趣,那麼請務必查看有關資料庫描述的 WordPress Codex 文章。


結論

至此,我們已經涵蓋了 WordPress 資料庫入門知識中需要涵蓋的所有內容。希望這有助於揭開您在 WordPress 中保存資訊時幕後發生的事情的帷幕,但現在我們已經介紹了這一點,是時候看看一個可以使資料遷移變得極其簡單的工具了。

考慮到我們現在已經了解了資料庫的組織方式,我們也應該了解遷移的工作原理。

#

以上是遷移 WordPress 資料庫入門:基本資料庫知識的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn