啟動 EC2 後每小時就要開始收費,務必要記得沒有使用的時候就把EC2停止(stop),但不要把它終止掉(terminate),終止掉就會把整個個體回收,相對應的設定跟資料都會不見了,而停止狀態只會收取 EBS 的費用。
取得 EC2 的公有 IPv4 地址,登入到 EC2,詳細操作可以參考Amazon Elastic Compute Cloud (EC2)的 連線到 Amazon EC2 (Windows) 這個部分,因為目前的系統為 macOS 所以底下的操作會以 Mac 為主,設定 1.pem 檔的權限,並 2.以 ec2-user 的使用者登入到雲端主機,登入成功後會看到 3. 一些基本操作的提示,如下圖所示。
圖 1、在 macOS 中透過終端機連線到 AWS EC2
先建立的 EC2 通常會需要先進行手動更新套件,所以執行"sudo yum update"來進行更新。今天的目的是完成資料庫的建置、配置與新增使用者跟需要的資料。
安裝 MariaDB 在 Amazon Linux 2 的步驟如下:
sudo rpm -qa | grep mariadb
sudo yum search mariadb
sudo yum install mariadb-server
圖 2、安裝 MariaDB 在 Amazon Linux 2
sudo systemctl enable mariadb.service
sudo systemctl start mariadb.service
sudo mysql_secure_installation
MariaDB 初始化設定如下:
圖 3、MariaDB 資料庫初始化設定
有了資料庫後,接著把需要用的使用者帳號,資料庫,資料表以及資料都一併放入 MariaDB 資料庫伺服器。輸入下面指令登錄 MariaDB 資料庫,會出現要求輸入密碼的提示。
mysql -u root -p
進入資料庫的指令行操作介面,分別是創建資料庫,顯示資料庫列表,切換資料庫。接著創建一個使用者 fishuser 來存取這個資料庫,這是一個基本的安全考量,不用都用管理者身分來進行資料庫操作,密碼是 secretePasswordHere 記得要改成自己的密碼;建立一個資料表,包含了四個欄位,分別是:流水號 (mark),魚名 (fishName),分布 (distribution),拉丁名 (LatinName)。結果如下圖所示。
CREATE DATABASE fishdb;
show databases;
use fishdb;
GRANT ALL ON fishdb.* TO fishuser@localhost IDENTIFIED BY 'secretePasswordHere';
CREATE TABLE `fishInfoTbl` (
`mark` int(11) NOT NULL AUTO_INCREMENT,
`fishName` varchar(255) NOT NULL,
`distribution` text DEFAULT NULL,
`LatinName` varchar(255) NOT NULL,
PRIMARY KEY (`mark`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
圖 4、創建系統所需的資料庫,管理人員與資料表
最後,將所需要的資料新增到資料表中,並檢視結果,如下圖所示。
INSERT INTO `fishInfoTbl` (`fishName`, `distribution`, `LatinName`) VALUES
('黃金珍珠虎', '黃金珍珠虎,分佈於坦幹伊克湖沿岸淺灘中,是頗受喜愛的品種。體形扁平、背鰭底部前端突起,由於分佈極廣,因此有很多變異品種。體色由黃至紅都有。屬食葷性魚類。不會攻擊其他魚類,因此可以混養。', 'Altolamprologus compressiceps'),
('帝王鯛', '帝王鯛專以湖底的貝類為食,因此可見其頭部圓滑、口器居於下位且短小有力;牠們會先將貝類或螺類含入口中,再以口中的咽喉骨將其咬碎;雖然牠們平時個性並不特別凶惡,但由於其體型龐大常居於強勢地位,在搶食時其吻部容易對其他魚類造成殺傷力。牠們體側具有兩條粗橫帶、腹部有三、四條不明顯的垂直帶紋,公魚成熟後會呈現豔麗的藍綠色光澤,在後三鰭也有橙黃色的表現。', 'Chilotilapia rhoadesii'),
('麒麟鸚鵡', '唇部厚實,嘴形有圓嘴,平嘴基三角嘴,體色不乏紅,黃,銅,金等色,部分魚只頭部較圓潤頭有隆起,眼睛全是紅眼,後三鰭大包尾,體型最大可長到20公分。', 'Cichlasoma var. Kilin Parrot'),
('藍茉莉白子', '藍茉莉一直是很好混養的魚種,不兇,穩定度高,混養也不具有威脅性,餵食顆粒飼料即可。', 'Cyrtocara moorii Albino'),
('紅金波羅', '性格較溫順,對水質要求不嚴,要求寬大水體和砂石、水草的環境,愛在水下層遊動。', 'Heros severus');
select fishName,LatinName from fishInfoTbl;
quit;
圖 5、新增系統所需的資料
參考資料