一、前言
在今天快速發(fā)展的數(shù)字化時代,數(shù)據(jù)庫技術(shù)日新月異。本文將帶領(lǐng)您追溯數(shù)據(jù)庫的歷程,探討云原生數(shù)據(jù)庫的概念,并重點關(guān)注騰訊云的創(chuàng)新力作——TDSQL-C 數(shù)據(jù)庫
。
我們將揭示傳統(tǒng) MySQL 架構(gòu)的問題,探究 TDSQL-C 數(shù)據(jù)庫的計算與存儲分離架構(gòu)所帶來的優(yōu)勢。
通過實例,您將逐步了解如何構(gòu)建穩(wěn)定的 LNMP 應(yīng)用環(huán)境,包括服務(wù)器設(shè)置、Nginx 和 PHP 的安裝,以及 TDSQL-C 數(shù)據(jù)庫的配置。最后,我們將以 WordPress 案例驗證環(huán)境搭建效果。本文將幫助您深入了解數(shù)據(jù)庫發(fā)展和云計算融合的前沿探索。
二、數(shù)據(jù)庫發(fā)展與云原生數(shù)據(jù)庫
2.1 數(shù)據(jù)庫發(fā)展簡介
從下圖中可以看出來,在早起也就是上個世紀(jì)的 80 年代左右,數(shù)據(jù)庫的產(chǎn)業(yè)主要是以商業(yè)數(shù)據(jù)庫為主,基本大家都有聽說過的或者使用過的數(shù)據(jù)庫:Oracle、DB2、SQL Server等;在 90 年代后,主要是開源數(shù)據(jù)庫為主了,比如:MySQL,同時分析型數(shù)據(jù)庫也開始快速增長;從 2000 年到 2010 年,以互聯(lián)網(wǎng)公司 Google 的三大件: Google File System
、Google Bigtable
和 Google MapReduce
為代表,他們主要解決了分布式數(shù)據(jù)庫的問題,大家應(yīng)該知道在傳統(tǒng)的數(shù)據(jù)庫中,對于數(shù)據(jù)具有強一致性,這樣數(shù)據(jù)庫系統(tǒng)很難進(jìn)行水平擴(kuò)展,以及對海量數(shù)據(jù)進(jìn)行分析能力降低。而 Google 推出的3個套件,對數(shù)據(jù)庫的強一致性進(jìn)行了弱化,并且進(jìn)行分布式集群的時候,對數(shù)據(jù)庫的水平做了很好的擴(kuò)展。在這之后,很快 NoSQL 數(shù)據(jù)庫(非結(jié)構(gòu)化數(shù)據(jù)庫)開始興起,比如:MongoDB、Redis等;而到了如今,云原生數(shù)據(jù)庫開始興起,比較出名的是亞馬遜云科技的 Amazon Aurora 以及今天的重點介紹對象:騰訊云的 TDSQL-C。
而下面的數(shù)據(jù)圖譜數(shù)據(jù)主要來源于:中國信息通信研究院 2022 年的數(shù)據(jù),從圖中可以看出有三條線,一條是國外的數(shù)據(jù)庫發(fā)展時間線,另一條是國內(nèi)數(shù)據(jù)庫的發(fā)展時間線,中間的一條線為國家的一些政策。主要可以看出,數(shù)據(jù)庫經(jīng)歷了3個重大的變革時期:
第一階段:2000~2009年,國外數(shù)據(jù)庫產(chǎn)業(yè)發(fā)展成熟,國內(nèi)數(shù)據(jù)庫初具雛形。
第二階段:2009~2018年,國外數(shù)據(jù)庫開始與云融合,國內(nèi)數(shù)據(jù)庫逐漸繁榮。
第三階段:2018~2022年,全球數(shù)據(jù)庫格局風(fēng)云變革,國內(nèi)自主數(shù)據(jù)庫百家爭鳴。
2.2 云原生數(shù)據(jù)庫簡介
看了不少視頻和文檔,個人總結(jié)起來云原生數(shù)據(jù)庫是指專為云環(huán)境設(shè)計和構(gòu)建的數(shù)據(jù)庫系統(tǒng),可以充分發(fā)揮云計算的優(yōu)勢,并適應(yīng)現(xiàn)代應(yīng)用開發(fā)和部署的需求。云原生數(shù)據(jù)庫強調(diào)高可用性、彈性擴(kuò)展、自動化管理以及與容器化、微服務(wù)架構(gòu)等技術(shù)的緊密集成。
2.2.1 云數(shù)據(jù)庫與云原生數(shù)據(jù)庫區(qū)別
其實到這里可能有同學(xué)會問,我之前在某某某云廠商,直接租了一個云數(shù)據(jù)庫,這種數(shù)據(jù)庫難道不是云原生數(shù)據(jù)庫嗎,如果不是,和云原生數(shù)據(jù)庫有什么區(qū)別么?
下面我用一個腦圖來做對比,結(jié)合上面我總結(jié)的云原生數(shù)據(jù)庫的概念,你應(yīng)該就清晰明白了。
首先要明確云數(shù)據(jù)庫與云原生數(shù)據(jù)庫是兩個完全不同的概念,一定不要混淆
云數(shù)據(jù)庫是指在云計算環(huán)境中托管和管理的數(shù)據(jù)庫服務(wù)。它可以是傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(如MySQL、PostgreSQL、SQL Server)或NoSQL數(shù)據(jù)庫(如MongoDB、Cassandra、Redis)等。這些數(shù)據(jù)庫被部署在云提供商的基礎(chǔ)設(shè)施上,用戶可以通過網(wǎng)絡(luò)訪問和管理這些數(shù)據(jù)庫。云數(shù)據(jù)庫具有自動擴(kuò)展、備份、恢復(fù)、高可用性等特性,使用戶可以專注于應(yīng)用程序開發(fā),而無需擔(dān)心底層基礎(chǔ)設(shè)施的管理,這里可以理解為云數(shù)據(jù)庫是一種云計算中的PaaS
服務(wù)。
云原生數(shù)據(jù)庫是指專門設(shè)計和構(gòu)建為云環(huán)境的數(shù)據(jù)庫系統(tǒng)。它們充分利用了云計算的優(yōu)勢,如彈性擴(kuò)展、自動管理、容器化等。云原生數(shù)據(jù)庫可以輕松地適應(yīng)動態(tài)變化的工作負(fù)載和資源需求。這些數(shù)據(jù)庫更加靈活、可擴(kuò)展,以提供更高的敏捷性和可靠性。
三、騰訊云 TDSQL-C 數(shù)據(jù)庫
3.1 什么是騰訊云 TDSQL-C 數(shù)據(jù)庫
TDSQL-C 現(xiàn)階段分為兩個版本:MySQL 版(TDSQL-C for MySQL)和 PostgreSQL 版(TDSQL-C for PostgreSQL) 。TDSQL-C 是騰訊云自研的新一代云原生關(guān)系型數(shù)據(jù)庫。融合了傳統(tǒng)數(shù)據(jù)庫、云計算與新硬件技術(shù)的優(yōu)勢,為用戶提供具備極致彈性、高性能、海量存儲、安全可靠的數(shù)據(jù)庫服務(wù)。TDSQL-C MySQL 版100%兼容 MySQL 5.7、8.0;而 TDSQL-C PostgreSQL 版100%兼容 PostgreSQL。實現(xiàn)超百萬級 QPS 的高吞吐,最高 PB 級智能存儲,保障數(shù)據(jù)安全可靠。
3.2 為什么推出 TDSQL-C 數(shù)據(jù)庫?傳統(tǒng) MySQL 架構(gòu)存在較多痛點
TDSQL-C數(shù)據(jù)庫的推出源于對于傳統(tǒng)MySQL架構(gòu)存在的多個問題的回應(yīng)。隨著互聯(lián)網(wǎng)的發(fā)展,業(yè)務(wù)數(shù)據(jù)急劇增長,用戶對數(shù)據(jù)庫計算與存儲能力的需求不斷增加。然而,在業(yè)務(wù)需求持續(xù)增長的情況下,傳統(tǒng)MySQL架構(gòu)的優(yōu)化和升級變得困難重重。因此,為了解決這些挑戰(zhàn),TDSQL-C數(shù)據(jù)庫應(yīng)運而生,利用計算與存儲分離、新硬件潛力、物理復(fù)制特性以及分布式系統(tǒng)優(yōu)勢等,提供了高性能、低成本、大存儲能力、低主從復(fù)制延遲、秒級擴(kuò)縮容、極速回檔和無服務(wù)器化等一系列獨特優(yōu)勢,彌補了傳統(tǒng)MySQL架構(gòu)的痛點。
3.2.1 傳統(tǒng) MySQL 的主從架構(gòu)存在的痛點
從上圖中可以看出,左側(cè)為傳統(tǒng) MySQL 的主從架構(gòu),使用 MySQL 的同學(xué)應(yīng)該不會莫生此架構(gòu)。根據(jù)自身我們自身經(jīng)驗并結(jié)合騰訊云TDSQL-C
數(shù)據(jù)庫官方文檔,我們可以總結(jié)出傳統(tǒng) MySQL 的主從架構(gòu)存在的一些痛點:
- 數(shù)據(jù)同步會有延遲,可能存在高延遲的情況
- 寫入性能有限制,主從部署 IO 較大,單條的 SQL 響應(yīng)時間會被拉長。
- 性能拓展效率會降低,單個 MySQL 升級規(guī)格的時候,或者增加從機時,數(shù)據(jù)遷移時間會拉長,耗時嚴(yán)重(1T數(shù)據(jù)可能耗時數(shù)小時)
- 存儲空間受限,這種傳統(tǒng) MySQL 的主從架構(gòu)在進(jìn)行備份數(shù)據(jù)庫的時候,耗時和回檔時間過長。
- 如果設(shè)計高可用架構(gòu)的時候,必須要多節(jié)點,硬件資源配置要求較高,即成本會增加。
3.2.2 TDSQL-C 計算與存儲分離架構(gòu)的優(yōu)勢
上述右半部分圖示呈現(xiàn)了 TDSQL-C 的整體架構(gòu),清晰劃分為上層計算層與下層存儲層。
計算層由一個讀寫節(jié)點負(fù)責(zé)處理讀寫請求,以及多個只讀節(jié)點,即Master
節(jié)點和Slave
節(jié)點,負(fù)責(zé)滿足讀取需求。在處理讀寫請求,特別是寫請求時,Master節(jié)點(即讀寫節(jié)點)會對數(shù)據(jù)進(jìn)行修改,隨后將 InnoDB Redo Log 中的修改傳送至整個存儲層,并將 Redo Log 分發(fā)至自身的 RO 節(jié)點。
存儲層則承擔(dān)數(shù)據(jù)管理職責(zé),一旦產(chǎn)生的 Redo 日志傳輸至存儲層,它負(fù)責(zé)回放這些日志。
其寫入的流程可以總結(jié)為:
基于共享存儲架構(gòu),整體讀寫 IO 減少 60% 以上,寫入性能明顯提高,系統(tǒng)實現(xiàn)了秒級故障切換以及秒級增加 Slave 從機,單個計算節(jié)點可以實現(xiàn)高可用,節(jié)省 50% 的計算節(jié)點成本,涵蓋秒級快照備份和回檔。由于存儲層和計算層均具備彈性,因此可在一定程度上實現(xiàn)Serverless 架構(gòu)。
四、騰訊云 TDSQL-C 數(shù)據(jù)庫項目實戰(zhàn)案例
4.1 項目介紹以及架構(gòu)
LNMP 是一種用于搭建和配置服務(wù)器環(huán)境的技術(shù)棧,它包括 Linux、Nginx、MySQL(或MariaDB)、PHP 這四個關(guān)鍵組件的首字母縮寫。每個組件都有其特定的功能,將它們組合在一起可以創(chuàng)建一個適用于托管網(wǎng)站、應(yīng)用程序和服務(wù)的完整服務(wù)器環(huán)境。
項目名稱:基于騰訊云輕量服務(wù)器以及 TDSQL-C 搭建 LNMP WordPress 博客系統(tǒng)
官網(wǎng)地址:https://wordpress.org
項目簡介:WordPress 不僅是一款個人博客系統(tǒng),還可充當(dāng)內(nèi)容管理系統(tǒng)(CMS)使用。它采用 PHP 語言和 MySQL 數(shù)據(jù)庫開發(fā)而成。在此案例中,我們選擇了騰訊云 TDSQL-C 作為數(shù)據(jù)庫,而非直接使用本地安裝的 MySQL。這意味著用戶可以在配備 PHP 和騰訊云 TDSQL-C 數(shù)據(jù)庫支持的服務(wù)器上,輕松搭建自己的博客。
開發(fā)語言:PHP
應(yīng)用運行環(huán)境:CentOS、Nginx、PHP、騰訊云 TDSQL-C 數(shù)據(jù)庫
涉及云服務(wù):騰訊云輕量服務(wù)器、彈性 IP、騰訊云 TDSQL-C 數(shù)據(jù)庫、私有云 VPC
WordPress 搭建好后,可通過 EIP 進(jìn)行訪問,整體的應(yīng)用架構(gòu)拓?fù)淙缦聢D所示:
4.2 實戰(zhàn)搭建詳細(xì)步驟
4.2.1 使用騰訊云輕量服務(wù)器搭建 LNMP 應(yīng)用運行環(huán)境
(1) 準(zhǔn)備服務(wù)器(如果已有個人服務(wù)器可跳過)
本案例使用的是騰訊云輕量服務(wù)器(TencentCloud Lighthouse),輕量服務(wù)器相較普通的服務(wù)器,你可以簡單的理解其適合中小企業(yè)或者個人開發(fā)者,具有性價比高等特點。此處不是本文重點,不做過多贅述。
購買騰訊云輕量服務(wù)器
我這里直接搞了一個首單3年的輕量服務(wù)器,剛好有3折活動,感覺個人使用還是比較劃算的。
應(yīng)該定期有促銷活動,具體什么時間什么具體價格關(guān)注他們官方網(wǎng)站:https://cloud.tencent.com/act
確認(rèn)訂單信息和所需價格,之后勾選購買協(xié)議,點擊下一步即可。
點擊支付后,會有返回按鈕,點擊返回按鈕后如下圖所示,可以點擊查看實例,如果你不知道如何重置密碼,可以按下圖所示,先點擊重置密碼,查看里面的幫助文檔,如何進(jìn)行重置密碼,如果你已經(jīng)知道如何重置密碼,那么可以直接點擊查看實例。按照我的步驟設(shè)置也可以。
重置服務(wù)器密碼
在服務(wù)器實例選項卡頁面,點擊更多
按鈕,會出現(xiàn)重置密碼選項,點擊重置密碼即可。
可以在更多頁面看到,除了重置密碼外,開關(guān)機,重裝系統(tǒng),制作鏡像等選項都在其中。
在新彈出的窗口內(nèi),直接輸入新密碼點擊重置即可,注意重置頁面里,用戶名默認(rèn)選項是root
,如果你的實例機器里面已經(jīng)有多個賬號,可以點擊選項,此處不做過多介紹。
修改完密碼后,使用 SSH 工具(XShell、MobaXterm)進(jìn)行連接即可,具體方式本文不做介紹可以自行查找。
(2) 安裝 Nginx
1. 配置yum
源
沒有特別需求的情況下,可使用 yum 進(jìn)行安裝,如果有各種歷史版本的要求,可以根據(jù)自身情況直接配置 yum 源,官網(wǎng)源配置可參考官網(wǎng)地址:https://nginx.org/en/linux_packages.html。此處我們略過,不進(jìn)行配置,直接自己使用yum默認(rèn)騰訊云的配置進(jìn)行安裝 Nginx。
2. 使用yum進(jìn)行安裝 Nginx
使用 yum 直接安裝還是比較方便的,直接執(zhí)行下面的命令即可。
yum -y install nginx
等待一會安裝信息出現(xiàn) Complete
即表示 Nginx安裝成功:
3. 啟動 Nginx 并進(jìn)行測試
使用以下命令進(jìn)行啟動并設(shè)置開機自啟動:
[root@VM-8-7-centos ~]# systemctl start nginx
[root@VM-8-7-centos ~]# systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.
可使用瀏覽器訪問http://彈性IP地址
,若 Nginx 安裝成功,則會顯示類似如下頁面(不同版本顯示的樣式可能不同):
(3) 安裝 PHP 并配置 Nginx 啟用其支持
1. 添加安裝源
因為 LNMP 中可能會出現(xiàn) PHP 不兼容的情況,所以這里采用 yum 指定安裝版本的方式進(jìn)行安裝
[root@VM-8-7-centos ~]# yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
[root@VM-8-7-centos ~]# yum repolist
查看源中包含PHP各版本相關(guān)的軟件包:
[root@VM-8-7-centos ~]# yum --showduplicate --enablerepo=remi --enablerepo=remi-php74 list php
2. 安裝 PHP 以及 PHP 擴(kuò)展包
執(zhí)行以下命令安裝PHP7.4
和一些所需的 PHP 擴(kuò)展:
yum -y install --enablerepo=remi --enablerepo=remi-php74 php php-tidy php-common php-devel php-pdo php-mysql* php-gd php-ldap php-mbstring php-mcrypt php-fpm
完成安裝提示:
3. 啟動php-fpm
服務(wù)
執(zhí)行下面的系列命令,進(jìn)行啟動php-fpm
服務(wù):
[root@VM-8-7-centos ~]# php -v
PHP 7.4.33 (cli) (built: Aug 1 2023 09:00:17) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
[root@VM-8-7-centos ~]#
[root@VM-8-7-centos ~]# systemctl start php-fpm
[root@VM-8-7-centos ~]# systemctl enable php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to /usr/lib/systemd/system/php-fpm.service.
[root@VM-8-7-centos ~]#
[root@VM-8-7-centos ~]#
[root@VM-8-7-centos ~]# netstat -nplt | grep 9000
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 29097/php-fpm: mast
執(zhí)行步驟圖如下:
4. 啟用PHP支持
修改nginx配置文件,配置啟用PHP支持。如果擔(dān)心修改配置文件出錯,可備份一下默認(rèn)的配置文件。
[root@VM-8-7-centos nginx]# vim nginx.conf
[root@VM-8-7-centos nginx]#
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 4096;
include /etc/nginx/mime.types;
default_type application/octet-stream;
# Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf;
server {
listen 80;
listen [::]:80;
server_name _;
location / {
root /usr/share/nginx/html;
index index.html index.htm index.php;
}
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
error_page 404 /404.html;
location = /404.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
# add fastcgi_params of php support.
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
}
[root@VM-8-7-centos nginx]#
[root@VM-8-7-centos nginx]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@VM-8-7-centos nginx]#
[root@VM-8-7-centos nginx]# nginx -s reload
[root@VM-8-7-centos nginx]#
5. 測試 LNMP 的 PHP 支持
編輯 PHP 測試頁面
[root@VM-8-7-centos nginx]# echo "<?php phpinfo(); ?>" > /usr/share/nginx/html/index.php
編輯了頁面后,重載服務(wù)后生效:
[root@VM-8-7-centos nginx]# systemctl reload nginx
使用瀏覽器訪問http://彈性IP地址/index.php
,顯示如下圖頁面,說明 PHP 安裝成功:
到此處,關(guān)于 LNMP 的 Nginx 以及 PHP 已經(jīng)配置完成,接下來開始配置 騰訊云 TDSQL-C 數(shù)據(jù)庫。
4.2.2 騰訊云 TDSQL-C 配置及搭建
(1) 創(chuàng)建私有云 VPC
為什么要創(chuàng)建私有云 VPC,這里簡單提一下,在后面購買 TDSQL-C的時候會有選擇,選擇加入的 VPC 是哪一個,如果不提前創(chuàng)建會選擇默認(rèn)的 VPC,這里不建議用默認(rèn)的 VPC來在云上作業(yè),默認(rèn)的 VPC 個人總結(jié)起來就是一個 default 預(yù)留 VPC,即使是我做練習(xí)都不會使用它,真實生產(chǎn)環(huán)境更不建議用默認(rèn)的 VPC 來作業(yè)。
進(jìn)入到騰訊云中的私有網(wǎng)絡(luò)菜單后,點擊私有網(wǎng)絡(luò)菜單下的新建按鈕,進(jìn)行創(chuàng)建新的私有網(wǎng)云 VPC,如圖所示:
在創(chuàng)建詳細(xì)的 VPC 步驟中,除了如圖中的填寫私有網(wǎng)絡(luò)的信息外,還要創(chuàng)建初始的子網(wǎng),其實在創(chuàng)建 VPC 這里會有不少的操作,比如創(chuàng)建路由表等,因為不是本文的重點,這里略過,在下圖中,我們主要填寫私有云的 CIDR 以及子網(wǎng)的一些信息。
這里提一下我這里設(shè)置的
/16
是什么意思,CIDR 表示法中的 “/16” 意味著子網(wǎng)掩碼中有 16 位為網(wǎng)絡(luò)地址,剩余的 32 - 16 = 16 位為主機地址。這意味著在該子網(wǎng)中,有 2^16 個不同的 IP 地址可以用于主機。
計算出來是 2^16 = 65536。因此,CIDR 為 “/16” 的子網(wǎng)中有 65536 個可用的 IP 地址。這些 IP 地址將從該子網(wǎng)的第一個地址開始(通常是網(wǎng)絡(luò)地址)到最后一個地址結(jié)束(通常是廣播地址),剩余的地址可以用于主機。需要注意的是,某些 IP 地址可能被保留用于特定用途,因此實際可用的主機 IP 地址數(shù)量可能會稍微少于這個數(shù)目。
關(guān)于 CIDR 設(shè)置規(guī)則,以及 ABC 網(wǎng)絡(luò)等,此處不是重點,如果想學(xué)習(xí)的同學(xué)可以關(guān)注本博客,或者后續(xù)自行查找網(wǎng)絡(luò)資源進(jìn)行學(xué)習(xí)。
(2) 創(chuàng)建云原生數(shù)據(jù)庫 TDSQL-C
如果是直接在 TDSQL-C 中購買產(chǎn)品可以看到如下的選項配置價格等。
我們這里是學(xué)習(xí)使用,在這里我們購買了一個免費的 TDSQL 集群版,來做演示
(3) 為 TDSQL-C 配置網(wǎng)絡(luò)安全組
配置網(wǎng)絡(luò)安全組,根據(jù)自身需要可以開啟外網(wǎng)地址。注意如果是真實環(huán)境不建議配置外網(wǎng)地址。
配置安全組,注意下圖,在配置安全組的時候,會出現(xiàn)sg
安全組的 id,這個代表之前你已經(jīng)創(chuàng)建了安全組規(guī)則,具體創(chuàng)建安全組規(guī)則的位置是:點擊進(jìn)入私有網(wǎng)絡(luò),之后點擊安全,之后點擊創(chuàng)建安全組。
注意我這里為了方便演示,直接設(shè)置的安全組為放行所有端口,如果是真實案例,請根據(jù)自身情況設(shè)置所需要開放的端口。
(4) 使用騰訊云數(shù)據(jù)庫管理工具 DMC 連接數(shù)據(jù)庫
數(shù)據(jù)庫管理工具 DMC,是騰訊云自帶的管理工具,當(dāng)然你也可以使用自己習(xí)慣的數(shù)據(jù)庫鏈接客戶端,比如:mysql workbench 或者 Navicat 都可以。
(5) 創(chuàng)建 LNMP 數(shù)據(jù)庫并驗證連接
在數(shù)據(jù)庫管理中,新建一個新的數(shù)據(jù)庫wordpress
,如下圖所示:
在 騰訊云輕量服務(wù)器內(nèi)連接到我們創(chuàng)建的 TDSQL-C 數(shù)據(jù)庫后,可以看到剛剛創(chuàng)建的wordpress
數(shù)據(jù)庫:
4.2.3 安裝并配置 WordPress
(1) 下載 WordPress 軟件包
打開 WordPress 的中文網(wǎng)站進(jìn)行下載,下載地址:https://cn.wordpress.org/download/
將下載的 WordPress 軟件包從本地上傳至 騰訊云輕量服務(wù)器 中,這里可以使用WinSCP
或者FileZilla
來上傳都可以,根據(jù)自身習(xí)慣來選擇。
另外一種方式是在服務(wù)器內(nèi)直接使用wget
命令來下載,這種情況是服務(wù)器可以訪問外網(wǎng)的情況下,如果不能訪問還是需要按照上述方法來走。
wget https://cn.wordpress.org/latest-zh_CN.tar.gz -O wordpress-6.3-zh_CN.tar.gz
(2) 移動并配置 WordPress 包
依次執(zhí)行下面的命令進(jìn)行安裝 WordPress 包,這幾個命令的順序作用是:
- 先是解壓開所下載的 WordPress 包,
- 之后移動其到 nginx 頁面目錄下
- 授權(quán)移動后的 WordPress 包的所屬用戶組和權(quán)限為
apache
用戶(如果不設(shè)置,在啟動后更換主題和插件的時候會出現(xiàn)連接信息錯誤)
[root@VM-8-7-centos data]# tar -xzvf wordpress-6.3-zh_CN.tar.gz
[root@VM-8-7-centos data]#
[root@VM-8-7-centos data]# mv wordpress /usr/share/nginx/html/
[root@VM-8-7-centos data]# chown -R apache:apache /usr/share/nginx/html/wordpress/
[root@VM-8-7-centos data]# ll /usr/share/nginx/html/wordpress/
(3) 編輯修改 WordPress 配置文件
復(fù)制模板文件
進(jìn)入 WordPress 項目目錄,將wp-config-sample.php
文件復(fù)制名為wp-config.php
的文件用作配置文件,并保留示例配置文件以作備份。
cd /usr/share/nginx/html/wordpress
cp wp-config-sample.php wp-config.php
編輯修改 WordPress 的配置文件
使用vim 命令
進(jìn)行編輯配置文件,把DB_NAME
(數(shù)據(jù)庫名稱)、DB_USER
(數(shù)據(jù)庫用戶名)、DB_PASSWORD
(數(shù)據(jù)庫密碼)以及DB_HOST
(數(shù)據(jù)庫主機地址)更改為之前所配置的設(shè)置。
vim wp-config.php
直接修改下圖所示的4個 TDSQL-C 的信息:
(4) 安裝 WordPress
在瀏覽器地址欄輸入http://彈性IP地址/wordpress
即可跳轉(zhuǎn)至安裝頁面,填寫完對應(yīng)的表單信息后,即可點擊安裝WordPress按鈕
進(jìn)行安裝。
安裝成功后的頁面如下圖所示:
(5) 登錄并配置管理后臺
完成安裝界面輸入密碼選擇登錄,或者在瀏覽器輸入http://彈性IP地址/wordpress/wp-admin
進(jìn)入后臺登錄界面,并輸入賬號和密碼即可登錄管理后臺。登陸成功進(jìn)入到后臺后,可以看到儀表盤頁面如下圖所示:
(6) 訪問博客主頁驗證效果
在儀表盤的左上角點擊查看站點
或者在瀏覽器輸入http://彈性IP地址/wordpress
即可查看主頁。
五、文末總結(jié)
本文通過介紹數(shù)據(jù)庫發(fā)展與云原生數(shù)據(jù)庫,以及騰訊云 TDSQL-C 數(shù)據(jù)庫,深入探討了傳統(tǒng) MySQL 架構(gòu)的問題和痛點,以及 TDSQL-C 數(shù)據(jù)庫的計算與存儲分離架構(gòu)的優(yōu)勢。
通過一個實際的項目案例,詳細(xì)展示了使用騰訊云輕量服務(wù)器搭建 LNMP 應(yīng)用運行環(huán)境的步驟,包括服務(wù)器準(zhǔn)備、Nginx 和 PHP 的安裝配置,以及 TDSQL-C 數(shù)據(jù)庫的配置與搭建,通過本案例可以完美證實騰訊云的 TDSQL-C 可以完美兼容 MySQL 數(shù)據(jù)庫,最后成功使用 TDSQL-C 代替 MySQL 搭建成功 LNMP 的 WorPress。文章來源:http://www.zghlxwxcb.cn/news/detail-665494.html
本文提供了完整的安裝并配置 WordPress 的步驟,并強調(diào)了對博客主頁的訪問以驗證效果。希望閱讀完本文的小伙伴,可以深入了解數(shù)據(jù)庫架構(gòu)的發(fā)展、云原生數(shù)據(jù)庫的概念,以及在實際項目中如何利用騰訊云的服務(wù)構(gòu)建穩(wěn)定高效的應(yīng)用環(huán)境。文章來源地址http://www.zghlxwxcb.cn/news/detail-665494.html
到了這里,關(guān)于【騰訊云 TDSQL-C Serverless 產(chǎn)品體驗】基于騰訊云輕量服務(wù)器以及 TDSQL-C 搭建 LNMP WordPress 博客系統(tǒng)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!