Day4:在ECS上使用PolarDB搭建PbootCMS门户网站

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: ECS的基础应用之一就是用于搭建门户/博客站点。本次实验将使用阿里云自研数据库PolarDB来尝试在阿里云ECS上搭建PbootCMS门户站。

背景知识:PolarDB数据库

简介

img

PolarDB阿里云自研的下一代关系型云数据库,有三个独立的引擎,分别可以100%兼容MySQL、100%兼容PostgreSQL、高度兼容Oracle语法,存储容量最高可达100TB,单库最多可扩展到16个节点,适用于企业多样化的数据库应用场景。

PolarDB采用存储和计算分离的架构,所有计算节点共享一份数据,提供分钟级的配置升降级、秒级的故障恢复、全局数据一致性和免费的数据备份容灾服务。PolarDB既融合了商业数据库稳定可靠、高性能、可扩展的特征,又具有开源云数据库简单开放、自我迭代的优势,例如PolarDB MySQL性能最高可以提升至MySQL的6倍,而成本只有商用数据库的1/10。集群架构,计算与存储分离。

PolarDB如有如下两大特性:

  • 集群架构,计算与存储分离

PolarDB采用多节点集群的架构,集群中有一个Writer节点(主节点)和多个Reader节点(读节点),各节点通过分布式文件系统(PolarFileSystem)共享底层的存储(PolarStore)。

  • 读写分离

当应用程序使用集群地址时,PolarDB MySQL/PostgreSQL通过内部的代理层(Proxy)对外提供服务,应用程序的请求都先经过代理,然后才访问到数据库节点。代理层不仅可以做安全认证和保护,还可以解析SQL,把写操作(例如事务、UPDATE、INSERT、DELETE、DDL等)发送到主节点,把读操作(例如SELECT)均衡地分发到多个只读节点,实现自动的读写分离。对于应用程序来说,就像使用一个单点的MySQL数据库一样简单。内部的代理层(Proxy)后续将支持PolarDB兼容Oracle语法引擎。

产品优势

用户可以像使用MySQL、PostgreSQL、Oracle一样使用PolarDB,此外,PolarDB还有传统数据库不具备的优势:

  • 容量大

最高100TB,用户不再需要因为单机容量的天花板而去购买多个实例做分片,由此简化应用开发,降低运维负担。

  • 高性价比

PolarDB的计算与存储分离,每增加一个只读节点只收取计算资源的费用,而传统的只读节点同时包含计算和存储资源,每增加一个只读节点需要支付相应的存储费用。

PolarDB的存储空间无需手动配置,根据数据量自动伸缩,用户只需为实际使用的数据量按小时付费。

为了更好地帮助用户降低存储成本,PolarDB推出了预付费形式的存储包。当用户的数据量较大时,推荐用户使用PolarDB存储包,相比按小时付费,预付费购买存储包有折扣,购买的容量越大,折扣力度就越大。

  • 分钟级弹性

存储与计算分离的架构,配合共享存储,使得快速升级成为现实。

  • 读一致性

集群地址利用LSN(Log Sequence Number)确保读取数据时的全局一致性,避免因为主备延迟引起的不一致。

  • 毫秒级延迟(物理复制)

利用基于Redo的物理复制代替基于Binlog的逻辑复制,提升主备复制的效率和稳定性。即使对大表进行加索引、加字段等DDL操作,也不会造成数据库的延迟。

  • 无锁备份

利用存储层的快照,可以在60秒内完成对2TB数据量大小的数据库的备份,而且备份过程不会对数据库加锁,对应用程序几乎无影响,全天24小时均可进行备份。

申请相关资源并创建PolarDB数据库账号

申请相关资源在Day1-3中均有叙述,这里不再赘述,重点记录与往期的不同之处。

实测这次创建资源耗时相比于前几日来说非常长,希望阿里云优化一下。

  1. 首先登陆 阿里云管理平台(过程类似于Day3),选择资源所在的地域,进入 云数据库PolarDB管理控制台
  2. 创建数据库账号

    1. 集群列表 页面,单击 集群ID ,进入 集群详情界面

    image.png

    1. 单击左侧导航栏 配置与管理 > 账号管理,然后单击左上方 创建账号

    image.png

    1. 参考下面的图示配置账号信息,然后单击 确定

    image.png

      - **数据库账号**:输入数据库账号名称,例如:`test_user` 。
      - **账号类型**:此处选择普通账号。
      - **密码**:设置账号密码,例如:`X123456!`。**务必记住这里的密码!**
    • 确认密码:再次输入密码。
  3. 创建数据库

    1. 在实例详情页,单击左侧导航栏的 数据库管理 ,然后单击 创建数据库

    image.png

    1. 参考说明配置数据库信息,然后单击 创建

    image.png

    • 数据库(DB)名称:输入数据库名称,例如:pbootcms
    • 支持字符集:默认设为utf8mb4
    • 授权账号:选择上一步创建的数据库账号test_user
    • 账号类型:默认设置为读写。
    • 备注说明:(非必填)用于备注该数据库的相关信息,便于后续数据库管理,最多支持256个字符。
  4. 设置数据库白名单

    1. 连接数据库需要设置数据库白名单,点击 [集群白名单],然后点击 [设置] 设置数据库集群白名单。

    image.png

    1. 在白名单界面将默认的白名单地址127.0.0.1更改为0.0.0.0/0,然后点击 [确定] 使白名单地址生效。

    image.png

连接ECS服务器并安装LAMP环境

连接ECS服务器在Day1中有叙述,可能会遇到连接不上的问题,参考Day1解决,这里不再赘述,这里重点记录安装LAMP环境过程。

所谓LAMP是指运行在Linux下的Apache、MySQL和PHP的环境。

  1. 在ECS服务器上,执行以下命令安装Apache服务及其扩展包。

    yum -y install httpd httpd-manual mod_ssl mod_perl mod_auth_mysql

返回类似如下图结果则表示安装成功。

img

  1. PbootCMS是使用PHP语言开发的CMS系统。参考以下操作安装PHP环境。

执行以下命令,安装PHP。

yum -y install php php-mysql gd php-gd gd-devel php-xml php-common php-mbstring php-ldap php-pear php-xmlrpc php-imap
  1. 执行以下命令下载并安装MySQL。

    wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
    yum -y install mysql57-community-release-el7-10.noarch.rpm
    yum -y install mysql-community-server
  2. 执行以下命令启动MySQL数据库。

    systemctl start mysqld

搭建门户网站

在完成环境部署后,参考以下操作搭建门户网站。

  1. 在ECS服务器上,执行以下命令,安装Git。

    yum -y install git
  2. 在ECS服务器上,执行以下命令下载PbootCMS源码文件。

    cd ~ && git clone https://gitee.com/hnaoyun/PbootCMS.git
  3. 执行以下命令将安装包拷贝到Apache的wwwroot目录下。

    cp -r PbootCMS/* /var/www/html/
  4. 执行以下命令修改站点根目录文件权限。

    chmod -R a+w /var/www/html
  5. 向数据库中导入CMS的初始数据。

执行以下命令初始化数据库pbootcms的表结构和数据。

说明:在执行命令前,请修改一下两个参数。(原教程有误,-p后面不能有参数,执行命令时再根据提示输入密码,输入时密码不可见)

  • 数据库连接地址参见集群详情页面下方链接地址板块。
  • test_user为步骤二中创建的数据库账号。
sql_file="/var/www/html/static/backup/sql/"$(ls /var/www/html/static/backup/sql/) &&
mysql -h 数据库连接地址 -u test_user -p -D pbootcms < $sql_file
  1. 执行以下命令,修改CMS系统数据库配置。

说明: 在执行命令前,请根据参数说明替换您的数据库配置。

cat > /var/www/html/config/database.php << EOF
<?php
return array(
    'database' => array(
        'type' => 'mysqli', // 数据库连接驱动类型: mysqli,sqlite,pdo_mysql,pdo_sqlite
        'host' => '<数据库连接地址>', // PolarDB数据库链接地址
        'user' => 'test_user', // PolarDB数据库的用户名
        'passwd' => 'X123456!', // PolarDB数据库的密码
        'port' => '3306', // 数据库端口
        'dbname' => 'pbootcms' //数据库名称
    )
);
EOF
  1. 返回ECS控制台,在ECS实例列表页面,单击已创建的ECS实例ID链接进入ECS详情页。在左侧导航栏,单击 本实例安全组 ,然后单击安全组的ID链接查看安全组配置。

确保安全组开放了80端口访问,否则无法访问已搭建的门户网站。(教学场景下,默认已对本地机器IP开放所有端口,本步骤无需操作)

安全组是一种虚拟防火墙,具备状态检测和数据包过滤能力,用于在云端划分安全域。通过配置安全组规则,您可以控制安全组内一台或多台ECS实例的入流量和出流量。

image.png

  1. 执行以下命令重启 Apache服务。

    systemctl restart httpd
  2. 在浏览器地址栏输入云服务器的公网访问地址http://<ECS公网IP地址>,进入门户网站首页

    系统后台默认访问路径为http://<ECS公网IP地址>/admin.php。默认账号为admin,密码为123456

    image.png

至此已完成门户网站的搭建,可以根据公司的需求自定义门户网站的内容。

image.png

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
目录
相关文章
|
11月前
|
固态存储 安全 程序员
搭建程序员个人博客网站的服务器配置怎么选?
搭建个人博客网站时,合理选择服务器配置至关重要。推荐1核CPU、2GiB内存、SSD硬盘及2M-10M带宽,适合大多数个人博客。操作系统方面,Linux更为经济高效。建议选择如阿里云等知名云服务商,同时考虑服务器的可扩展性和安全性,确保网站稳定运行与良好体验。
1247 2
|
30天前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
2月前
|
安全 应用服务中间件 Apache
小成本大效果:用一台服务器搞定多个网站
只需一台云服务器,即可搭建多个独立网站,实现数字空间多点开花。本文详解域名配置、虚拟主机、数据库隔离、安全防护与性能优化等关键步骤,助你高效利用服务器资源,节省成本、提升管理效率,适用于个人博客、企业官网、SEO站群等多种场景。
316 27
|
5月前
|
域名解析 弹性计算 安全
阿里云服务器安装宝塔面板、安装网站(新手图文教程)
本文详细介绍了从注册阿里云账号到使用宝塔面板安装网站的完整流程,包括阿里云账号的企业认证、服务器购买与安全规则配置、宝塔面板的安装及网站部署等步骤。通过图文并茂的方式,帮助用户轻松完成阿里云服务器的搭建和管理。适合新手快速上手,实现网站从零到有的全过程。如果觉得有用,别忘了点赞收藏!
4972 3
阿里云服务器安装宝塔面板、安装网站(新手图文教程)
|
5月前
|
缓存 PHP 数据库
WordPress网站服务器性能优化方法,站长必备。
最后,当你将这些方法组合起来并实施时,您将发现你的WordPress网站性能有了显著的提高。别忘了,这不是一次性的任务,要定期执行,保持你的车(网站)始终在轨道上飞驰。
185 21
|
5月前
|
前端开发 JavaScript 应用服务中间件
服务器如何设置可以提升网站打开速度?
首先关闭掉php版本中的输出详细错误信息功能;具体步骤为软件商店-对应php版本-设置-配置修改 找到“display_errors”参数,选择“关闭”保存即可。
118 0
|
6月前
|
自然语言处理 安全 开发工具
分享一个纯净无广、原版操作系统、开发人员工具、服务器等资源免费下载的网站
分享一个纯净无广、原版操作系统、开发人员工具、服务器等资源免费下载的网站
278 4
|
11月前
|
运维 安全 Linux
怎么使用云服务器搭建个人博客网站
使用云服务器搭建个人博客网站是一个涉及多个步骤的过程,包括购买云服务器、域名注册和备案、环境配置、安装博客系统、部署SSL证书以及网站上线和维护。通过选择合适的云服务提供商(如阿里云、腾讯云等),配置服务器,安装宝塔面板,选择合适的博客程序(如Typecho、WordPress等),并确保安全措施到位,您可以成功搭建并运行自己的个人博客网站。
|
7月前
|
弹性计算 人工智能 API
基于ECS部署DeepSeek个人专属AI网站
本方案介绍了如何基于云服务器ECS集成百炼API和Open WebUI服务,一键部署体验DeepSeek个人专属AI网站。用户不仅可以以极低的成本,拥有个人专属的AI网站,进行稳定的AI对话,还能够切换DeepSeek-V3、DeepSeek-R1、Qwen-max等模型进行体验。同时Open WebUI还具备开源能力,支持定制工具的开发。您还可以创建其他子账号,将您的专属AI网站分享给他人使用。
|
7月前
|
弹性计算 运维 网络安全
阿里云轻量应用服务器产品解析与搭建个人博客网站教程参考
轻量应用服务器(Simple Application Server)作为阿里云面向单机应用场景推出的云服务器产品,以其一键部署、一站式管理、高性价比等特性,深受个人开发者、中小企业及入门级用户的喜爱。本文将全面解析阿里云轻量应用服务器的产品优势、应用场景、使用须知,以及使用轻量应用服务器搭建个人博客网站的详细教程,帮助用户更好地了解和使用这一产品。

热门文章

最新文章