(三)Amazon Lightsail 部署LAMP应用程序之链接到Lightsail数据库

链接到Lightsail数据库

简介:应用程序的Web前端的第一次迭代不建议固有的可伸缩性,由于数据库和前端位于同一台机器,只须要额外的前端容量,添加额外的数据库实例就会出现问题,若想解决此问题,须要分离前端和数据库,在此步骤中,您将调整PHP前端的配置,使其指向先前部署的Lightsail数据库。php

在这里插入图片描述

一、进入Lightsail控制台主页:
https://lightsail.aws.amazon.com/ls/webapp/home/
单击 “数据库”
二、单击 todo-db (注意:这是以前建立的Lightsail数据库名)
三、在 “链接详细信息”下,将“EndPoint(端点)”复制到文本编辑器.
示例:
该Endpoint相似于ls-996d5vf212312123f1ds1fsd23fs2d1s2d31fs23d1f32s1f23ds.cucxkvhp11zu.us-west-2.rds.amazonaws.com前端

四、在SSH窗口中,建立一个名为(LS_ENDPOINT)的环境变量,以经过如下方式保存数据库端点的值:
①粘贴:LS_ENDPOINT=’MYENDPOINT’mysql

注意,此处的MYENDPOINT请替换为刚刚的数据库端点,按ENDER键生效

示例:
在这里插入图片描述
五、为默认用户名建立环境变量(dbmasteruser),和您以前建立的密码(taskstasks);
LS_username=dbmasteruser && LS_PASSWORD=taskstasksweb

六、验证是否成功并正确的设置了环境变量:
echo "Endpoint = "$LS_ENDPOINT && echo "username = "$LS_username && echo "Password = "$LS_PASSWORDsql

七、建立一个指向Lightsail数据库的新配置文件:
**数据库

cat /opt/bitnami/apache2/configs/config.php.bak | \
    sed "s/<endpoint>/$LS_ENDPOINT/; \
    s/<username>/$LS_username/; \
    s/<password>/$LS_PASSWORD/;" \
    >> /opt/bitnami/apache2/configs/config.php.lightsail_db

**apache

八、验证文件是否已正确修改:
cat /opt/bitnami/apache2/configs/config.php.lightsail_db浏览器

九、激活新配置:
cp /opt/bitnami/apache2/configs/config.php.lightsail_db /opt/bitnami/apache2/configs/config.phpapp

十、验证是否已修改活动配置文件:
cat /opt/bitnami/apache2/configs/config.phpwebapp

十一、在新浏览器选项卡中,运行install.php脚本以经过如下方式配置数据库:
在浏览器中输入:
http://PUBLIC-IP/install.php

将PUBLIC-IP替换为Lightsail实例的公有IP地址

再次刷新网页,由于前端如今指向新数据库;

十二、在浏览器中,经过如下方式测试新数据库:
在浏览器中输入:
http://PUBLIC-IP

将PUBLIC-IP替换为您Lightsail中实例的公有IP地址

由于您已将前端指向新数据库引擎,全部不该该显示任何任务。

1三、接下来您将从本地的MySQL数据库迁移到由Lightsail甘丽的数据库中,这是经过使用2个命令行实用程序来完成的:mysqldump和mysql。下面的命令使用mysqldump从本地数据中提取内容,而后将其做为输入传递给mysql使用程序命令,该命令将输入加载到由Lightsail管理的数据库中。
在SSH窗口中,输入:
**

mysqldump -u root \
    --databases tasks \
    --single-transaction \
    --compress \
    --order-by-primary  \
    -p$(cat /home/bitnami/bitnami_application_password) \
    | mysql -u $LS_username \
    --port=3306 \
    --host=$LS_ENDPOINT \
    -p$LS_PASSWORD

**

在执行完此命令后,您将看到2条警告信息,请您忽略这2条警告

请注意,在真实的生产环境中,您不该该经过命令行提供密码,尤为是在脚本中。

1四、再次刷新网页,您应该能够看到最初建立的任务如今存在于由Lightsail管理的数据库中。

相关文章
相关标签/搜索