3

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站

 2 years ago
source link: https://blog.51cto.com/u_14981263/5367141
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站

原创

阿里云云起实验室 2022-06-08 15:22:35 ©著作权

文章标签 数据库 mysql php polardb ecs 文章分类 虚拟化 云计算 阅读数172

 本场景将提供一台基础环境为CentOS的ECS(云服务器)实例和已经创建好的PolarDB数据库实例。我们将会在这台服务器上安装WordPress,帮助您快速搭建自己的云上博客。

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_数据库

PolarDB数据库简介

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

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

集群架构,计算与存储分离。
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数据库账号

\1. 双击打开桌面 FireFox ESR浏览器,在RAM用户登录框中点击 下一步,复制 云产品资源 列表中 子用户密码 粘贴(lx shell粘贴快捷键ctrl+shift+v,其他地方粘贴是ctrl+v)到浏览器 RAM用户登录界面,即可登录当前子账号。

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_php_02

\2. 在 阿里云控制台首页 左侧导航栏,依次单击 产品与服务 > 云数据库PolarDB ,进入 云数据库PolarDB管理控制台

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_php_03

\3. 单击左侧 集群列表 ,然后选择云产品资源提供的地域。例如:华东2(上海)

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_php_04

\4. 创建数据库账号。

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

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_php_05

b. 单击左侧导航栏 配置与管理 > 账号管理

c. 单击左上方 创建账号

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_ecs_06

d. 参考说明配置账号信息,然后单击 确定

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_polardb_07
  • 数据库账号:输入数据库账号名称,例如:test_user 。
  • 账号类型:此处选择普通账号。
  • 密码:设置账号密码,例如:Password1213。
  • 确认密码:再次输入密码。

\5. 创建数据库。

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

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_mysql_08

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

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_php_09
  • 数据库(DB)名称:输入数据库名称,例如:pbootcms 。
  • 支持字符集:默认设为utf8mb4。
  • 授权账号:选择上一步创建的数据库账号test_user。
  • 账号类型:默认设置为读写。
  • 备注说明:非必填。用于备注该数据库的相关信息,便于后续数据库管理,最多支持256个字符。

\6. 设置数据库白名单。

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

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_polardb_10

在白名单界面将默认的白名单地址127.0.0.1更改为 0.0.0.0/0,然后点击 [确定] 使白名单地址生效。(如果找不到 **[确定]**按钮,请按F11,开启全屏模式就能看见了。再按一次F11可退出全屏模式)

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_数据库_11

安装LAMP环境

LAMP是指运行在Linux下的Apache、MySQL和PHP的环境。参考以下操作在云服务器上安装开发环境。

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

yum -y install httpd httpd-manual mod_ssl mod_perl mod_auth_mysql

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

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_mysql_12

\2. 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

\3. 执行以下命令下载并安装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 * --nogpgcheck mysql-community-server

\4. 执行以下命令启动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

\4. 向数据库中导入CMS的初始数据。

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

说明: 在执行命令前,请修改一下三个参数。

  • 数据库连接地址参见集群详情页面下方链接地址板块。
  • test_user为步骤二中创建的数据库账号。
  • Password1213步骤二中创建的数据库密码。
sql_file="/var/www/html/static/backup/sql/"$(ls /var/www/html/static/backup/sql/) &&
mysql -h数据库连接地址 -utest_user -pPassword1213 -Dpbootcms < $sql_file

\5. 执行以下命令,修改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' => 'Password1213', // PolarDB数据库的密码
        'port' => '3306', // 数据库端口
        'dbname' => 'pbootcms' //数据库名称
    )
);
EOF

\6. 返回ECS控制台,在ECS实例列表页面,单击已创建的ECS实例ID链接进入ECS详情页。

\7. 在左侧导航栏,单击 本实例安全组 ,然后单击安全组的ID链接查看安全组配置。

确保安全组开放了80端口访问,否则无法访问已搭建的门户网站。安全组是一种虚拟防火墙,具备状态检测和数据包过滤能力,用于在云端划分安全域。通过配置安全组规则,您可以控制安全组内一台或多台ECS实例的入流量和出流量。

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_数据库_13

\8. 访问程序。

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

systemctl restart httpd

在浏览器地址栏输入云服务器的公网IP地址,进入门户网站首页

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

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

阿里云618有奖体验:使用PolarDB和ECS搭建门户网站_mysql_14

Recommend

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK