摘要:本文將展示如何使用巨杉分布式數(shù)據(jù)庫替換,成為博客系統(tǒng)的后臺關(guān)系型數(shù)據(jù)庫。通過閱讀本文,用戶可以了解到如何使用巨杉數(shù)據(jù)庫的實例無縫替換標準數(shù)據(jù)庫。通過使用巨杉數(shù)據(jù)庫,用戶可以在滿足標準與協(xié)議的基礎(chǔ)上,實現(xiàn)近無限的彈性擴展能力。
介紹
很多互聯(lián)網(wǎng)應(yīng)用程序開發(fā)人員第一個接觸到的網(wǎng)站項目就是博客系統(tǒng)。而全球使用最廣的Wordpress常常被用戶用來快速搭建個人博客網(wǎng)站。默認情況下,Wordpress一般在后臺使用MySQL關(guān)系型數(shù)據(jù)庫存儲所有的博文及回復(fù)。本文將展示如何使用 SequoiaDB 巨杉分布式數(shù)據(jù)庫替換MySQL,成為Wordpress博客系統(tǒng)的后臺關(guān)系型數(shù)據(jù)庫。
通過閱讀本文,用戶可以了解到如何使用SequoiaDB巨杉數(shù)據(jù)庫的MySQL實例無縫替換標準MySQL數(shù)據(jù)庫。SequoiaDB巨杉數(shù)據(jù)庫允許用戶在不更改一行代碼的情況下直接對已有應(yīng)用進行后臺MySQL數(shù)據(jù)庫遷移。
通過使用SequoiaDB巨杉數(shù)據(jù)庫,用戶可以得到:
? 水平彈性擴張
? 100%全兼容MySQL
? 優(yōu)秀的交易性能
WordPress是使用PHP語言開發(fā)的博客平臺,用戶可以在支持PHP和MySQL數(shù)據(jù)庫的服務(wù)器上架設(shè)屬于自己的網(wǎng)站,也可以把 WordPress當作一個內(nèi)容管理系統(tǒng)(CMS)來使用。
WordPress有許多第三方開發(fā)的免費模板,安裝方式簡單易用。同時,WordPress官方支持中文版,并擁有成千上萬個各式插件和不計其數(shù)的主題模板樣式。
安裝SequoiaDB
本文使用Linux Ubuntu Server 18.10作為服務(wù)器,SequoiaDB巨杉數(shù)據(jù)庫版本為3.2.1。
本教程默認使用sudo用戶名密碼為“sequoiadb:sequoiadb”,默認home路徑為/home/sequoiadb。
對于使用CentOS等其他Linux版本的用戶,本文所描述的流程可能略有不同,需要根據(jù)實際情況自行調(diào)整。
1)下載并安裝SequoiaDB巨杉數(shù)據(jù)庫
$ wget http://cdn.sequoiadb.com/imag...
$ tar -zxvf sequoiadb-3.2.1-linux_x86_64.tar.gz
$ cd sequoiadb-3.2.1/
$ sudo ./setup.sh
之后一直回車確認各個默認參數(shù)即可。
2) 使用數(shù)據(jù)庫實例用戶創(chuàng)建默認實例
$ sudo su sdbadmin
$ /opt/sequoiadb/tools/deploy/quickDeploy.sh
3)連接數(shù)據(jù)庫并開啟事務(wù)功能并設(shè)置默認隔離級別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
更新系統(tǒng)包并安裝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官網(wǎng)下載頁面https://wordpress.org/downloa...
或登錄sequoiadb用戶,使用wget下載安裝包
$ wget https://wordpress.org/wordpre...
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" ); 變?yōu)? define( "DB_NAME", "wordpress’ );
define( "DB_USER", "username_here" ); 變?yōu)? define( "DB_USER", ‘sequoiadb’ );
define( "DB_PASSWORD", "password_here" ); 變?yōu)? define( "DB_PASSWORD", "sequoiadb" );
define( "DB_HOST", "localhost" ); 變?yōu)? define( "DB_HOST", ‘<服務(wù)器IP地址>’ );
4) 創(chuàng)建Wordpress數(shù)據(jù)庫
$ 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
5) 確認表被分散在多個分區(qū)
$ /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字段為該表分散在不同分區(qū)的一致性散列范圍,而分區(qū)鍵則為ShardingKey字段。對于wp_posts來說,其表結(jié)構(gòu)顯示數(shù)據(jù)根據(jù)ID字段進行散列切分,數(shù)據(jù)被打散至集群的三個分區(qū)中。
配置Wordpress
1) 通過瀏覽器登錄服務(wù)器IP地址
? Site Title: SDBWordpress
? Username: sequoiadb
? Password: sequoiadb
? 選擇Confirm use of weak password
? Your Email: test@test.com
? 點擊Install WordPress按鍵,得到安裝成功界面
2) 使用sequoiadb:sequoiadb作為用戶名密碼登錄
3) 更換桌面主題
4) 回到Wordpress博客首頁,可以嘗試更改博客內(nèi)容或添加評論
簡單編輯文章后
結(jié)論
SequoiaDB巨杉數(shù)據(jù)庫作為一款分布式數(shù)據(jù)庫,提供包括結(jié)構(gòu)化SQL、非結(jié)構(gòu)化文件系統(tǒng)和對象存儲的機制。
通過SequoiaDB創(chuàng)建的MySQL實例,能夠提供與標準MySQL全兼容的SQL與DDL能力,用戶無需調(diào)整DDL或SQL即可實現(xiàn)無縫透明地訪問分布式表結(jié)構(gòu)。
本文向讀者展示了如何通過SequoiaDB的MySQL實例,實現(xiàn)與標準MySQL的無縫遷移。通過使用SequoiaDB巨杉數(shù)據(jù)庫,用戶可以在滿足標準ACID與MySQL協(xié)議的基礎(chǔ)上,實現(xiàn)近無限的彈性擴展能力。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/18046.html
摘要:通過閱讀本文,用戶可以了解到如何使用巨杉數(shù)據(jù)庫的實例無縫替換標準數(shù)據(jù)庫。巨杉數(shù)據(jù)庫允許用戶在不更改一行代碼的情況下直接對已有應(yīng)用進行后臺數(shù)據(jù)庫遷移。 介紹JIRA是Atlassian公司出品的項目與事務(wù)跟蹤工具,被廣泛應(yīng)用于缺陷跟蹤、客戶服務(wù)、需求收集、流程審批、任務(wù)跟蹤、項目跟蹤和敏捷管理等工作領(lǐng)域。很多企業(yè)與互聯(lián)網(wǎng)公司都在使用Jira作為內(nèi)部流程管理系統(tǒng),進行團隊協(xié)作與問題單管理。...
閱讀 1971·2021-11-25 09:43
閱讀 652·2021-10-11 10:58
閱讀 1729·2019-08-30 15:55
閱讀 1724·2019-08-30 13:13
閱讀 735·2019-08-29 17:01
閱讀 1839·2019-08-29 15:30
閱讀 788·2019-08-29 13:49
閱讀 2171·2019-08-29 12:13