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

Wesley13
• 阅读 603

连接到Lightsail数据库

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

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

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

4、在SSH窗口中,创建一个名为(LS_ENDPOINT)的环境变量,以通过以下方式保存数据库端点的值: ①粘贴:**LS_ENDPOINT=’MYENDPOINT’** ##注意,此处的MYENDPOINT请替换为刚刚的数据库端点,按ENDER键生效 示例: (三)Amazon Lightsail 部署LAMP应用程序之连接到Lightsail数据库 5、为默认用户名创建环境变量(dbmasteruser),和您之前创建的密码(taskstasks); LS_username=dbmasteruser && LS_PASSWORD=taskstasks

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

7、创建一个指向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

**

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

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

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

11、在新浏览器选项卡中,运行install.php脚本以通过以下方式配置数据库: 在浏览器中输入: http://PUBLIC-IP/install.php ##将PUBLIC-IP替换为Lightsail实例的公有IP地址

再次刷新网页,因为前端现在指向新数据库;

12、在浏览器中,通过以下方式测试新数据库: 在浏览器中输入: http://PUBLIC-IP ##将PUBLIC-IP替换为您Lightsail中实例的公有IP地址 ##因为您已将前端指向新数据库引擎,所有不应该显示任何任务。

13、接下来您将从本地的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条警告 ##请注意,在真实的生产环境中,您不应该通过命令行提供密码,尤其是在脚本中。

14、再次刷新网页,您应该可以看到最初创建的任务现在存在于由Lightsail管理的数据库中。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
3年前
java将前端的json数组字符串转换为列表
记录下在前端通过ajax提交了一个json数组的字符串,在后端如何转换为列表。前端数据转化与请求varcontracts{id:'1',name:'yanggb合同1'},{id:'2',name:'yanggb合同2'},{id:'3',name:'yang
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Java修道之路,问鼎巅峰,我辈代码修仙法力齐天
<center<fontcolor00FF7Fsize5face"黑体"代码尽头谁为峰,一见秃头道成空。</font<center<fontcolor00FF00size5face"黑体"编程修真路破折,一步一劫渡飞升。</font众所周知,编程修真有八大境界:1.Javase练气筑基2.数据库结丹3.web前端元婴4.Jav
Stella981 Stella981
3年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Stella981 Stella981
3年前
Django之Django模板
1、问:html页面从数据库中读出DateTimeField字段时,显示的时间格式和数据库中存放的格式不一致,比如数据库字段内容为2012082616:00:00,但是页面显示的却是Aug.26,2012,4p.m.答:为了页面和数据库中显示一致,需要在页面格式化时间,需要添加<td{{dayrecord.p\_time|date:
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这