(三)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管理的數據庫中。

相關文章
相關標籤/搜索