前言
隨著云計(jì)算技術(shù)的不斷進(jìn)步,企業(yè)對(duì)于靈活、高效的計(jì)算資源需求日益增長(zhǎng)。華為云推出的 Flexus 云服務(wù)器 X 實(shí)例,正是為滿足這一需求而設(shè)計(jì)的新一代云服務(wù)器解決方案。憑借其卓越的性能、彈性的資源調(diào)度能力和全面的安全保障體系,F(xiàn)lexus 云服務(wù)器 X 實(shí)例已成為眾多中小企業(yè)和開(kāi)發(fā)者青睞的選擇。本文將詳細(xì)介紹如何在華為云 Flexus 云服務(wù)器 X 實(shí)例上部署基于 openEuler 操作系統(tǒng)的 SQLite 數(shù)據(jù)庫(kù),并使用先進(jìn)的 Web 數(shù)據(jù)庫(kù)瀏覽器 sqlite-web 來(lái)管理和操作 SQLite 數(shù)據(jù)庫(kù)。通過(guò)這一部署方案,用戶不僅可以體驗(yàn)到華為云的強(qiáng)大算力支持,還能享受到 sqlite-web 帶來(lái)的便捷數(shù)據(jù)庫(kù)管理體驗(yàn),進(jìn)一步提升開(kāi)發(fā)效率和運(yùn)維管理水平。
一、Flexus 云服務(wù)器 X 實(shí)例介紹
1.1 Flexus 云服務(wù)器 X 實(shí)例簡(jiǎn)介
·官網(wǎng)地址:華為云Flexus云服務(wù)器X實(shí)例
華為云 Flexus 云服務(wù)器 X 實(shí)例是新一代面向中小企業(yè)和開(kāi)發(fā)者的柔性算力云服務(wù)器。它能夠智能感知業(yè)務(wù)負(fù)載的變化,自動(dòng)調(diào)整資源配置。這款服務(wù)器特別適用于中低負(fù)載的應(yīng)用場(chǎng)景,例如電商直播、企業(yè)網(wǎng)站建設(shè)、開(kāi)發(fā)測(cè)試環(huán)境、游戲服務(wù)器以及音視頻服務(wù)等。X 實(shí)例的設(shè)計(jì)理念旨在為用戶提供更加靈活和高效的計(jì)算資源管理方式。通過(guò)智能調(diào)整,它可以更好地滿足不同業(yè)務(wù)的需求,提高資源利用率。
1.2 Flexus 云服務(wù)器 X 實(shí)例特點(diǎn)
·提供豐富的公共鏡像:Flexus 云服務(wù)器 X 實(shí)例提供多種公共鏡像供用戶選擇,方便快速部署各種應(yīng)用和服務(wù)。
·可靈活自定義 vCPU 內(nèi)存配比:用戶可以根據(jù)自己的需要靈活調(diào)整虛擬 CPU 和內(nèi)存的配比,以滿足不同場(chǎng)景的需求。
·智能感知業(yè)務(wù)動(dòng)態(tài)升降配:Flexus 云服務(wù)器 X 實(shí)例能夠智能感知業(yè)務(wù)的負(fù)載情況,并根據(jù)需要自動(dòng)升降配,以滿足業(yè)務(wù)的需求,提高系統(tǒng)的穩(wěn)定性和性能。
·負(fù)載范圍更高:相對(duì)于 Flexus 應(yīng)用服務(wù)器 L 實(shí)例,F(xiàn)lexus 云服務(wù)器 X 實(shí)例能夠處理更高的負(fù)載,適用于更復(fù)雜和繁忙的場(chǎng)景。
1.3 Flexus 云服務(wù)器 X 實(shí)例使用場(chǎng)景
Flexus 云服務(wù)器 X 實(shí)例針對(duì)不同的使用場(chǎng)景展現(xiàn)出其獨(dú)特的優(yōu)勢(shì):
1.電商直播:利用 X 實(shí)例搭建電商交易平臺(tái),可以有效應(yīng)對(duì)電商市場(chǎng)的瞬息萬(wàn)變,從容處理業(yè)務(wù)壓力波動(dòng),確保交易過(guò)程順暢無(wú)阻。
2.企業(yè)建站:面向博客、論壇和企業(yè)門戶等應(yīng)用場(chǎng)景,X 實(shí)例幫助企業(yè)高效傳播價(jià)值信息,促進(jìn)信息共享與交流,支持構(gòu)建多功能傳播和交互平臺(tái)。
3.個(gè)人開(kāi)發(fā)測(cè)試:開(kāi)發(fā)者在開(kāi)發(fā)和測(cè)試過(guò)程中所需的環(huán)境資源可以通過(guò) X 實(shí)例便捷獲取,不僅提高了搭建效率,而且降低了成本。
4.游戲服務(wù)器:適用于搭建游戲后臺(tái)服務(wù)器,強(qiáng)大的計(jì)算能力可以輕松應(yīng)對(duì)大量玩家同時(shí)在線的情況,同時(shí)支持平滑擴(kuò)容,快速應(yīng)對(duì)玩家數(shù)量增長(zhǎng)的需求,以及提供出色的網(wǎng)絡(luò)加速能力以提升用戶體驗(yàn)。
二、sqlite-web 介紹
2.1 sqlite-web 簡(jiǎn)介
sqlite-web是一個(gè)用 Python 編寫的基于 Web 的 SQLite 數(shù)據(jù)庫(kù)瀏覽器,它提供了一個(gè)圖形化用戶界面來(lái)管理和操作 SQLite 數(shù)據(jù)庫(kù)。
2.2 sqlite-web 主要功能
·兼容性:可以直接連接到現(xiàn)有的 SQLite 數(shù)據(jù)庫(kù),也可以用于創(chuàng)建新的數(shù)據(jù)庫(kù)。
·數(shù)據(jù)庫(kù)對(duì)象管理:允許用戶添加或移除數(shù)據(jù)庫(kù)中的表格。
·表結(jié)構(gòu)管理:支持對(duì)表格進(jìn)行列的增刪操作,兼容舊版 SQLite。
·索引管理:能夠創(chuàng)建和刪除索引以優(yōu)化數(shù)據(jù)庫(kù)性能。
·數(shù)據(jù)導(dǎo)出:支持將數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)出為 JSON 或 CSV 格式文件。
·數(shù)據(jù)導(dǎo)入:可以從 JSON 或 CSV 格式的文件中導(dǎo)入數(shù)據(jù)到數(shù)據(jù)庫(kù)。
·數(shù)據(jù)瀏覽:提供了一個(gè)直觀的方式來(lái)瀏覽數(shù)據(jù)庫(kù)中的表格數(shù)據(jù)。
·數(shù)據(jù)編輯:允許用戶插入新的記錄行,更新現(xiàn)有記錄,或者刪除不需要的行。
三、本次實(shí)踐介紹
3.1 本次實(shí)踐簡(jiǎn)介
1.本次實(shí)踐為個(gè)人測(cè)試學(xué)習(xí)環(huán)境,旨在快速部署應(yīng)用,生產(chǎn)環(huán)境請(qǐng)謹(jǐn)慎;2.本次實(shí)踐環(huán)境為云華為云 Flexus 云服務(wù)器 X 實(shí)例,使用的操作系統(tǒng)為 openEuler 22.03 LTS;3.本次實(shí)踐在 Docker 環(huán)境下部署 SQLite 數(shù)據(jù)庫(kù)瀏覽器 sqlite-web。
3.2 本次環(huán)境規(guī)劃
四、遠(yuǎn)程連接華為云 Flexus 云服務(wù)器 X 實(shí)例
4.1 購(gòu)買 Flexus 云服務(wù)器 X 實(shí)例
進(jìn)入華為云官網(wǎng):https://activity.huaweicloud.com/,登錄自己的華為云賬號(hào),進(jìn)入華為云首頁(yè)。
·鏡像選擇:本次實(shí)踐使用 openEuler 作為公共鏡像,請(qǐng)根據(jù)實(shí)際需求自定義選擇合適的操作系統(tǒng)鏡像。
·鏡像切換說(shuō)明:參考的公共鏡像原為 Huawei Cloud EulerOS,但本次實(shí)踐中已切換至 openEuler。
·基礎(chǔ)配置參考:購(gòu)買時(shí)可參考以下基礎(chǔ)配置進(jìn)行選擇。
1.計(jì)費(fèi)模式:包年/包月,這里選擇此模式;2.區(qū)域:華北—北京四,可用區(qū):隨機(jī)即可;3.實(shí)例規(guī)格:關(guān)閉性能模式,選擇自定義,4vCPUs | 12GiB;4.鏡像:公共鏡像,Huawei Cloud EulerOS,版本,Huawei Cloud EulerOS 2.0 Standard 64 bit(10GiB);5.應(yīng)用加速:這里選擇不加速;6.存儲(chǔ):系統(tǒng)盤,通用型 SSD100G;7.網(wǎng)絡(luò):選擇默認(rèn)即可;8.安全組:選擇默認(rèn)即可;9.彈性公網(wǎng) IP:選擇“現(xiàn)在購(gòu)買”,全動(dòng)態(tài) BGP,帶寬 3Mbit/s;10.云服務(wù)器名稱:可自定義設(shè)置,這里選擇默認(rèn)的名稱;11.登錄憑證:自定義設(shè)置密碼;12.云備份:暫不購(gòu)買;其余配置默認(rèn)即可。
·確認(rèn)配置及購(gòu)買:在確認(rèn)配置頁(yè)面仔細(xì)檢查 Flexus 云服務(wù)器 X 實(shí)例的各項(xiàng)設(shè)置,確保無(wú)誤后點(diǎn)擊“立即購(gòu)買”,完成付款流程即可成功購(gòu)買。
4.2 查看 Flexus 云服務(wù)器 X 實(shí)例狀態(tài)
進(jìn)入華為云 Flexus 云服務(wù)的控制臺(tái),選擇 Flexus 云服務(wù)器 X 實(shí)例,可以看到已經(jīng)正在運(yùn)行的 Flexus 云服務(wù)器 X 實(shí)例。
4.3 使用 Xshell 遠(yuǎn)程連接
·復(fù)制 Flexus 云服務(wù)器 X 實(shí)例的彈性公網(wǎng) IP 地址
·主要填寫 Flexus 云服務(wù)器 X 實(shí)例的彈性公網(wǎng) IP 地址,輸入其登錄用戶和密碼,連接即可。
五、檢查 Flexus 云服務(wù)器 X 實(shí)例系統(tǒng)環(huán)境
5.1 檢查操作系統(tǒng)版本
檢查 Flexus 云服務(wù)器 X 實(shí)例的操作系統(tǒng)版本,本次實(shí)踐選擇的版本為 openEuler 22.03 LTS
[root@flexusx-51a1 ~]# cat /etc/os-releaseNAME="openEuler"VERSION="22.03 LTS"ID="openEuler"VERSION_ID="22.03"PRETTY_NAME="openEuler 22.03 LTS"ANSI_COLOR="0;31"
5.2 檢查內(nèi)核版本
檢查當(dāng)前操作系統(tǒng)的內(nèi)核版本,當(dāng)前內(nèi)核版本為 5.10.0-60.109.0.136.oe2203.x86_64。
[root@flexusx-51a1 ~]# uname -r5.10.0-60.109.0.136.oe2203.x86_64
5.3 檢查 Docker 版本
部署該項(xiàng)目需要提前安裝 Docker 環(huán)境,檢查 Docker 版本,當(dāng)前安裝的 Docker 版本為26.1.3。
[root@flexusx-51a1 ~]# docker -vDocker version 26.1.3, build b72abbb
5.4 檢查 Docker 服務(wù)狀態(tài)
檢查 Docker 服務(wù)狀態(tài),確保 Docker 服務(wù)正常。
[root@flexusx-51a1 ~]# systemctl status docker●docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)Active: active (running) since Wed 2024-09-04 21:23:44 CST; 15min agoTriggeredBy:●docker.socketDocs: https://docs.docker.comMain PID: 10018 (dockerd)Tasks: 10Memory: 196.3MCGroup: /system.slice/docker.service└─10018 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
5.5 檢查 Docker compose 版本
檢查 docker compose 版本,當(dāng)前默認(rèn)安裝版本為 v2.27.0`。
[root@flexusx-51a1 ~]# docker compose versionDocker Compose version v2.27.0
六、安裝 SQLite 數(shù)據(jù)庫(kù)
6.1 安裝 SQLite
SQLite 是一個(gè)開(kāi)源的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),它以源代碼形式嵌入應(yīng)用程序中,無(wú)需獨(dú)立的服務(wù)器進(jìn)程或管理系統(tǒng)。SQLite 支持多種操作系統(tǒng),提供了豐富的 SQL 功能,并以其簡(jiǎn)單易用、高效可靠的特點(diǎn)廣受好評(píng)。在 openEuler 系統(tǒng)上,我們直接安裝 SQLite。
yum install sqlite -y
6.2 檢查 SQLite 安裝版本
可以執(zhí)行以下命令,查看當(dāng)前安裝 SQLite 版本。
[root@flexusx-51a1 ~]# sqlite3 -version3.37.2 2022-01-06 13:25:41 872ba256cbf61d9290b571c0e6d82a20c224ca3ad82971edc46b29818d5dalt1
6.3 創(chuàng)建數(shù)據(jù)庫(kù)目錄
創(chuàng)建/data/sqlite/data 目錄,用作 SQLite 的數(shù)據(jù)存儲(chǔ)目錄。
[root@flexusx-51a1 ~]# mkdir -p /data/sqlite/data && cd /data/sqlite/data[root@flexusx-51a1 data]#
6.4 新建 test.db 文件
我們使用 sqlite3 命令,創(chuàng)建并且打開(kāi)一個(gè) test.db 數(shù)據(jù)庫(kù)文件。我們可在這個(gè)數(shù)據(jù)庫(kù)環(huán)境下執(zhí)行各種 SQLite 相關(guān)操作,如創(chuàng)建表、查詢數(shù)據(jù)等。
sqlite3 test.db
6.5 寫入數(shù)據(jù)
執(zhí)行以下命令,寫入測(cè)試數(shù)據(jù)。
CREATE TABLE example_table (id INTEGER PRIMARY KEY,name TEXT NOT NULL,age INTEGER);INSERT INTO example_table (name, age) VALUES ('張三', 30);INSERT INTO example_table (name, age) VALUES ('李四', 22);INSERT INTO example_table (name, age) VALUES ('王一云', 40);INSERT INTO example_table (name, age) VALUES ('趙三車', 38);
查詢剛才插入數(shù)據(jù),可以看到數(shù)據(jù)正常寫入。
SELECT * FROM example_table;
當(dāng)我們完成 SQLite 的會(huì)話并且確認(rèn) test.db 文件已正確創(chuàng)建并包含數(shù)據(jù)后,可以通過(guò)輸入 .exit 來(lái)退出 SQLite 命令行界面。
.exit
七、安裝 sqlite-web 工具
7.1 拉取 sqlite-web 鏡像
我們直接在 docker hub 倉(cāng)庫(kù)拉取 sqlite-web 鏡像,鏡像名稱為:coleifer/sqlite-web:latest。
[root@flexusx-51a1 data]# docker pull coleifer/sqlite-web:latestlatest: Pulling from coleifer/sqlite-web48ecbb6b270e: Pull complete692f29ee68fa: Pull complete6439819450d1: Pull complete3c7be240f7bf: Pull completeca4b349df8ed: Pull completeef2d243c98cf: Pull complete260a6c14518f: Pull complete28e32c8ef834: Pull completeDigest: sha256:b0d4094b883ee274d2242d8e5b4173f40e56a1d137660cf78d67c87164db9490Status: Downloaded newer image for coleifer/sqlite-web:latestdocker.io/coleifer/sqlite-web:latest
7.2 進(jìn)入部署目錄
我們進(jìn)入/data/sqlite/目錄,作為 sqlite-web 的部署目錄。
[root@flexusx-51a1 data]# cd /data/sqlite/[root@flexusx-51a1 sqlite]# lsdata
7.3 編輯 docker-compose.yaml 文件
本次使用 docker compose 方式部署,需要新建及編輯 docker-compose.yaml 文件。在部署文件中,可以自定義修改宿主機(jī)映射端口等信息,注意防止端口沖突。
vim docker-compose.yaml
services:sqlite-web:image: coleifer/sqlite-webcontainer_name: sqlite-webrestart: alwaysports:- 8700:8080volumes:- /data/sqlite/data:/dataenvironment:- SQLITE_DATABASE=test.db
7.4 創(chuàng)建 sqlite-web 容器
執(zhí)行以下命令,快速創(chuàng)建 sqlite-web 容器容器。
[root@flexusx-51a1 sqlite]# docker compose up -d[+] Running 2/2?Network sqlite_default Created 0.0s?Container sqlite-web Started 0.2s
7.5 查看 sqlite-web 容器狀態(tài)
檢查 sqlite-web 容器狀態(tài),確保 sqlite-web 容器正常啟動(dòng)。
[root@flexusx-51a1 sqlite]# docker compose psNAME IMAGE COMMAND SERVICE CREATED STATUS PORTSsqlite-web coleifer/sqlite-web "/bin/sh -c 'sqlite_…" sqlite-web 53 seconds ago Up 53 seconds 0.0.0.0:8700->8080/tcp, :::8700->8080/tcp
7.6 查看 sqlite-web 容器日志
檢查 sqlite-web 容器日志,確保 sqlite-web 服務(wù)正常運(yùn)行。
[root@flexusx-51a1 sqlite]# docker compose logssqlite-web | * Serving Flask app "sqlite_web.sqlite_web" (lazy loading)sqlite-web | * Environment: productionsqlite-web | WARNING: This is a development server. Do not use it in a production deployment.sqlite-web | Use a production WSGI server instead.sqlite-web | * Debug mode: offsqlite-web | * Running on http://0.0.0.0:8080/ (Press CTRL+C to quit)
八、訪問(wèn) sqlite-web 網(wǎng)頁(yè)
8.1 關(guān)閉防火墻與 selinux
·關(guān)閉防火墻
systemctl stop firewalld && systemctl disable firewalld
·關(guān)閉 selinux
setenforce 0sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
8.2 Flexus 云服務(wù)器 X 實(shí)例安全組配置
進(jìn)入 Flexus 云服務(wù)器 X 實(shí)例控制臺(tái),進(jìn)行安全組規(guī)則配置。在安全組入方向規(guī)則上,放行 8700 端口。
8.3 訪問(wèn) sqlite-web 初始頁(yè)
瀏覽器訪問(wèn)地址:http://彈性公網(wǎng) IP 地址:8700,將 IP 替換為自己服務(wù)器 IP 地址。在瀏覽器中打開(kāi) sqlite-web 主頁(yè)后,頁(yè)面會(huì)顯示數(shù)據(jù)庫(kù)的一些基本信息,包括表和索引的數(shù)量,以及數(shù)據(jù)庫(kù)文件在磁盤上的大小。
8.4 查詢數(shù)據(jù)相關(guān)操作
當(dāng)我們點(diǎn)擊之前新建的 example_table數(shù)據(jù)表時(shí),可以在“Structure”選項(xiàng)卡中查看該表的結(jié)構(gòu)信息,包括列、索引、觸發(fā)器及外鍵(如果存在)。在此界面,用戶還可以執(zhí)行創(chuàng)建、重命名或刪除列和索引的操作。
在“Content”選項(xiàng)卡中,可以瀏覽數(shù)據(jù)表中的所有記錄。通過(guò)這個(gè)界面,用戶能夠清晰地查看每一行數(shù)據(jù)的詳細(xì)內(nèi)容。
在“Query”選項(xiàng)中,我們可以執(zhí)行相應(yīng)的 SQL 語(yǔ)句進(jìn)行查詢操作。查詢結(jié)果將以表格形式展示,并支持導(dǎo)出為 JSON 或 CSV 格式。
九、使用體驗(yàn)與總結(jié)
在華為云 Flexus 云服務(wù)器 X 實(shí)例上部署 sqlite-web 的過(guò)程中,我們充分體驗(yàn)到了華為云卓越的性能和穩(wěn)定性。從創(chuàng)建實(shí)例到配置 openEuler 系統(tǒng),每一步都展現(xiàn)出了華為云在資源管理方面的高效率。sqlite-we 的安裝和運(yùn)行異常順利,這得益于華為云服務(wù)器的強(qiáng)大計(jì)算能力和優(yōu)秀的網(wǎng)絡(luò)支持。使用 sqlite-web 管理 SQLite 數(shù)據(jù)庫(kù)時(shí),其響應(yīng)速度令人印象深刻,即使是復(fù)雜查詢也能快速反饋結(jié)果。簡(jiǎn)潔的 Web 界面讓數(shù)據(jù)庫(kù)操作變得更加直觀簡(jiǎn)便,極大地提升了我們的工作效率。華為云 Flexus 云服務(wù)器 X 實(shí)例為我們提供了一個(gè)穩(wěn)定、高效的工作平臺(tái),使數(shù)據(jù)庫(kù)管理任務(wù)變得輕松愉快。
把握華為云 828 B2B 企業(yè)節(jié)的契機(jī),探索 Flexus X 實(shí)例帶來(lái)的超值優(yōu)惠,體驗(yàn)技術(shù)與創(chuàng)新的無(wú)縫融合。無(wú)論是在高性能計(jì)算領(lǐng)域還是智能監(jiān)控方面,華為云都以卓越的品質(zhì)和細(xì)致的服務(wù)展現(xiàn)了其領(lǐng)先優(yōu)勢(shì)。選擇華為云,意味著不僅僅獲得了強(qiáng)大的技術(shù)支持,更是向著數(shù)字化未來(lái)邁進(jìn)的重要一步。讓我們共同攜手,在華為云平臺(tái)上譜寫新的成功故事!
審核編輯 黃宇
-
云服務(wù)器
+關(guān)注
關(guān)注
0文章
662瀏覽量
13380 -
華為云
+關(guān)注
關(guān)注
3文章
2605瀏覽量
17475 -
openEuler
+關(guān)注
關(guān)注
2文章
319瀏覽量
5913
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論