一、主要内容
使用CentOS7的ECS和已经创建好的PolarDB数据库实例,安装WordPress,快速搭建自己的云上博客。
二、背景介绍
PolarDB数据库
PolarDB是阿里云自研的下一代关系型云数据库,有三个独立的引擎,分别可以100%兼容MySQL、100%兼容PostgreSQL、高度兼容Oracle语法,存储容量最高可达100TB,单库最多可扩展到16个节点。
采用存储和计算分离的架构,所有计算节点共享一份数据,提供分钟级的配置升降级、秒级的故障恢复、全局数据一致性和免费的数据备份容灾服务。
PolarDB还有传统数据库不具备的优势:
容量大:最高100TB,您不再需要因为单机容量的天花板而去购买多个实例做分片,由此简化应用开发,降低运维负担。
高性价比:PolarDB的计算与存储分离,每增加一个只读节点只收取计算资源的费用,而传统的只读节点同时包含计算和存储资源,每增加一个只读节点需要支付相应的存储费用。
分钟级弹性:存储与计算分离的架构,配合共享存储,使得快速升级成为现实。
读一致性:集群地址利用LSN(Log Sequence Number)确保读取数据时的全局一致性,避免因为主备延迟引起的不一致。
毫秒级延迟(物理复制):利用基于Redo的物理复制代替基于Binlog的逻辑复制,提升主备复制的效率和稳定性。即使对大表进行加索引、加字段等DDL操作,也不会造成数据库的延迟。
无锁备份:利用存储层的快照,可以在60秒内完成对2TB数据量大小的数据库的备份,而且备份过程不会对数据库加锁,对应用程序几乎无影响,全天24小时均可进行备份。
三、实验步骤
1、创建PolarDB数据库
首页搜索云数据库PolarDB,进入云数据库PolarDB管理控制台。在集群列表页面,单击集群ID,进入集群详情界面。然后在账号管理创建普通账号,在数据库管理创建数据库(选utf8字符集,授权账号为刚才创建的账号,账号类型读写)。
然后在集群白名单将默认的白名单地址127.0.0.1更改为 0.0.0.0/0,这样就可以用ECS服务器连接了。
2、ECS服务器配置
主要就是安装LAMP环境,LAMP是指运行在Linux下的Apache、MySQL和PHP的环境。
安装Apache及其相关依赖:
yum -y install httpd httpd-manual mod_ssl mod_perl mod_auth_mysql
安装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
安装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
启动MySQL数据库:
systemctl start mysqld
相比于Windows,Linux在安装软件上是真的挺方便,几行命令就搞定了。
3、搭建门户网站
在完成环境部署后,参考以下操作搭建门户网站。
安装Git,下载PbootCMS源码文件:
yum -y install git
cd ~ && git clone https://gitee.com/hnaoyun/PbootCMS.git
将安装包拷贝到Apache的wwwroot目录下。
cp -r PbootCMS/* /var/www/html/
修改站点根目录文件权限。
chmod -R a+w /var/www/html
执行以下命令初始化数据库pbootcms的表结构和数据。
sql_file="/var/www/html/static/backup/sql/"$(ls /var/www/html/static/backup/sql/) &&
mysql -h数据库连接地址 -u数据库账号 -p数据库密码 -D数据库名称 < $sql_file
sql_file="/var/www/html/static/backup/sql/"$(ls /var/www/html/static/backup/sql/) &&
mysql -hpc-uf6s6wcq9hb0452i4.mysql.polardb.rds.aliyuncs.com -utest_user -pPassword1213 -Duser_db < $sql_file
执行以下命令,修改CMS系统数据库配置。
cat > /var/www/html/config/database.php << EOF
<?php
return array(
'database' => array(
'type' => 'mysqli', // 数据库连接驱动类型: mysqli,sqlite,pdo_mysql,pdo_sqlite
'host' => 'pc-uf6s6wcq9hb0452i4.mysql.polardb.rds.aliyuncs.com', // PolarDB数据库链接地址
'user' => 'test_user', // PolarDB数据库的用户名
'passwd' => 'Password1213', // PolarDB数据库的密码
'port' => '3306', // 数据库端口
'dbname' => 'user_db' //数据库名称
)
);
EOF
最后确保安全组开放了80端口访问,否则无法访问,并重启Apache服务。
systemctl restart httpd
在浏览器地址栏输入http://公网IP地址>/admin.php,进入门户网站首页。默认账号为admin,密码为123456。