十分鐘快速搭建 Wordpress 部落格系統

2020-07-16 10:06:01

未標題-10.png

介紹

很多網際網路應用程式開發人員第一個接觸到的網站專案就是部落格系統。而全球使用最廣的Wordpress常常被使用者用來快速搭建個人部落格網站。預設情況下,Wordpress一般在後台使用MySQL關係型資料庫儲存所有的博文及回復。本文將展示如何使用 SequoiaDB 巨杉分散式資料庫替換MySQL,成為Wordpress部落格系統的後台關係型資料庫。

通過閱讀本文,使用者可以了解到如何使用SequoiaDB巨杉資料庫的MySQL範例無縫替換標準MySQL資料庫。SequoiaDB巨杉資料庫允許使用者在不更改一行程式碼的情況下直接對已有應用進行後台MySQL資料庫遷移。

通過使用SequoiaDB巨杉資料庫,使用者可以得到:

水平彈性擴張100%全相容MySQL優秀的交易效能

WordPress是使用PHP語言開發的部落格平台,使用者可以在支援PHP和MySQL資料庫的伺服器上架設屬於自己的網站,也可以把 WordPress當作一個內容管理系統(CMS)來使用。

WordPress有許多第三方開發的免費模板,安裝方式簡單易用。同時,WordPress官方支援中文版,並擁有成千上萬個各式外掛和不計其數的主題模板樣式。

1ec70bd8b3cd51455d612a070b2b98918c3.jpg

安裝SequoiaDB

本文使用Linux Ubuntu Server 18.10作為伺服器,SequoiaDB巨杉資料庫版本為3.2.1。

本教學預設使用sudo使用者名稱密碼為「sequoiadb:sequoiadb」,預設home路徑為/home/sequoiadb。

對於使用CentOS等其他Linux版本的使用者,本文所描述的流程可能略有不同,需要根據實際情況自行調整。

1)下載並安裝SequoiaDB巨杉資料庫

$ wget http://cdn.sequoiadb.com/images/sequoiadb/x86_64/sequoiadb-3.2.1-linux_x86_64.tar.gz
$ tar -zxvf sequoiadb-3.2.1-linux_x86_64.tar.gz
$ cd sequoiadb-3.2.1/
$ sudo ./setup.sh

之後一直迴車確認各個預設引數即可。

使用資料庫範例使用者建立預設範例

$ sudo su sdbadmin
$ /opt/sequoiadb/tools/deploy/quickDeploy

3)連線資料庫並開啟事務功能並設定預設隔離級別RC

$ /opt/sequoiadb/bin/sdb
> db = new Sdb() ;
> db.updateConf ( { transactionon: true, transisolation: 1 } ) ;
> quit ;
$ /opt/sequoiadb/bin/sdbstop
$ /opt/sequoiadb/bin/sdbstart

安裝Apache與PHP

更新系統包並安裝Apache與PHP

$ sudo apt-get update
$ sudo apt-get install apache2 php libapache2-mod-php php-mysql unzip php-xml

安裝Wordpress

本教學使用Wordpress 5.2.1。

1)登入Wordpress官網下載頁面

9c1dd49a8a0e176452a967e1aca48627048.jpg或登入sequoiadb使用者,使用wget下載安裝包

$ wget https://wordpress.org/wordpress-5.2.1.tar.gz

2)安裝Wordpress並設定

$ tar -zxvf wordpress-5.2.1.tar.gz
$ cd wordpress
$ sudo rm /var/www/html/*
$ sudo cp -R * /var/www/html/
$ sudo cp /var/www/html/wp-config-sample.php /var/www/html/wp-config.php
$ sudo chown www-data:www-data /var/www/html/*

3)更改組態檔

$ sudo vi /var/www/html/wp-config.php
define( 'DB_NAME', 'database_name_here' ); 變為  define( 'DB_NAME', 'wordpress’ );
define( 'DB_USER', 'username_here' );      變為  define( 'DB_USER', ‘sequoiadb’ );
define( 'DB_PASSWORD', 'password_here' ); 變為  define( 'DB_PASSWORD', 'sequoiadb' );
define( 'DB_HOST', 'localhost' );           變為  define( 'DB_HOST', ‘<伺服器IP地址>’ );

建立Wordpress資料庫

$ sudo su sdbadmin
$ /opt/sequoiasql/mysql/bin/mysql -S /opt/sequoiasql/mysql/database/3306/mysqld.sock -u root
mysql> create user 'sequoiadb'@'localhost' identified by 'sequoiadb';
mysql> create database wordpress;
mysql> grant all on wordpress.* to ‘sequoiadb'@’localhost';
mysql> grant all privileges on *.* to 'sequoiadb'@'%' identified by 'sequoiadb' with grant option;
mysql> exit

確認表被分散在多個分割區

$ /opt/sequoiadb/bin/sdb
> db=new Sdb() ;
> db.snapshot(SDB_SNAP_CATALOG) ;
……
{
  "_id": {
    "$oid": "5cecf121116eae6117df17dc"
  },
  "Name": "wordpress.wp_posts",
  "UniqueID": 4294967308,
  "Version": 1,
  "ReplSize": -1,
  "Attribute": 1,
  "AttributeDesc": "Compressed",
  "CompressionType": 1,
  "CompressionTypeDesc": "lzw",
  "ShardingKey": {
    "ID": 1
  },
  "EnsureShardingIndex": false,
  "ShardingType": "hash",
  "Partition": 4096,
  "InternalV": 3,
  "CataInfo": [
    {
      "ID": 0,
      "GroupID": 1000,
      "GroupName": "group1",
      "LowBound": {
        "": 0
      },
      "UpBound": {
        "": 1365
      }
    },
    {
      "ID": 1,
      "GroupID": 1001,
      "GroupName": "group2",
      "LowBound": {
        "": 1365
      },
      "UpBound": {
        "": 2730
      }
    },
    {
      "ID": 2,
      "GroupID": 1002,
      "GroupName": "group3",
      "LowBound": {
        "": 2730
      },
      "UpBound": {
        "": 4096
      }
    }
  ],
  "AutoSplit": true,
  "AutoIncrement": [
    {
      "SequenceName": "SYS_4294967308_ID_SEQ",
      "Field": "ID",
      "Generated": "default",
      "SequenceID": 11
    }
  ]
}
……

其中針對每個表的CataInfo欄位為該表分散在不同分割區的一致性雜湊範圍,而分割區鍵則為ShardingKey欄位。對於wp_posts來說,其表結構顯示資料根據ID欄位進行雜湊切分,資料被打散至叢集的三個分割區中。

設定Wordpress

通過瀏覽器登入伺服器IP地址

76c342973f0665b2400ca00be279e191bf2.jpg

  1. Site Title: SDBWordpress

  2. Username: sequoiadb

  3. Password: sequoiadb

  4. 選擇Confirm use of weak password

  5. Your Email: [email protected]

  6. 點選Install WordPress按鍵,得到安裝成功介面

587892f16b13715b9fdb66fae21a612f33b.jpg

使用sequoiadb:sequoiadb作為使用者名稱密碼登入

ec91b47cd95915c0f97b65fd9c505603087.jpg

更換桌面主題

2dc464e0f932107f015191cdbe2d03c45a6.jpgf4c6d5ff7b0b5e24f4879922be247e37deb.jpg4915c6900fa2c1b1697b43985846fdb79f9.jpg回到Wordpress部落格首頁,可以嘗試更改部落格內容或新增評論

71da11e2345daa97e1aee9daa06f1ab543e.jpg

簡單編輯文章後

a148d9a897d9e26f48e1ff4106ed38aeeff.jpg

結論

SequoiaDB巨杉資料庫作為一款分散式資料庫,提供包括結構化SQL、非結構化檔案系統和物件儲存的機制

通過SequoiaDB建立的MySQL範例,能夠提供與標準MySQL全相容的SQL與DDL能力,使用者無需調整DDL或SQL即可實現無縫透明地存取分散式表結構。

本文向讀者展示了如何通過SequoiaDB的MySQL範例,實現與標準MySQL的無縫遷移。通過使用SequoiaDB巨杉資料庫,使用者可以在滿足標準ACID與MySQL協定的基礎上,實現近無限的彈性擴充套件能力

推薦教學:MySQL視訊教學

以上就是十分鐘快速搭建 Wordpress 部落格系統的詳細內容,更多請關注TW511.COM其它相關文章!