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