#はじめに
題名通りで、EC2にDB管理ツールのAdminerを設置します。
#前提
・EC2とRDSを事前に設置
インターネットゲートウェイやサブネットも作成済み
こちらを参考にしました
・RDSはMYSQL
・EC2のインバウンドのセキュリティーグループはこちらの設定にしてください。
#流れ
①EC2にapacheをインストール
②PHPとMySQLのPHP拡張をインストール
③adminerをec2に設置
④adminerログイン
#EC2の初期設定
##EC2ポートの変更
EC2を起動時、セキュリティーの観点から、sshポートを変更します。(やらなくても可)
$ sudo vim /etc/ssh/sshd_config
Port 49923
設定を反映します。セキュリティーグループの変更を忘れずに。
セキュリティーグループのタイプはSSH
ではなくカスタム TCP
です。
$ sudo service sshd reload
##日本時間の設定
下記記事参照
#EC2にPHPとnginxをインストール
amazon-linux-extras
コマンドで、PHPとnginxのインストール可能なバージョンを確認します
#①EC2にapacheをインストール
まずEC2にSSH接続します
$ ssh -i ~/.ssh/ec2-key.pem ec2-user@✕✕.✕✕✕.✕✕✕.✕✕
[詳しくはこちら](https://qiita.com/holdout0521/items/7010ab2401c813d67d0f#ssh%E6%8E%A5%E7%B6%9A%E6%96%B9%E6%B3%95)
管理者権限で実行
$ sudo su
アップデート実行
yum update -y
apacheインストール
yum install httpd -y
apache起動
service httpd start
Redirecting to /bin/systemctl start httpd.service
apacheが起動していることを確認
systemctl status httpd
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
Active: active (running) since 以下省略
ブラウザにEC2のパブリックIPアドレスを入力し、Webサーバとして稼働していることを確認します。
<img width="400" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/988747/b97fb221-3c41-9f2a-146c-07e695c2e4dd.png">
<img width="800" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/988747/43b019f0-704d-a2e8-b28e-0bc151a2a6cf.png">
#②PHPとMySQLのPHP拡張をインストール
yum -y install php
yum -y install php-mysql
MySQLのPHP拡張を確認
php -m | grep mysql
mysql
mysqli
mysqlnd
pdo_mysql
php.iniの設定を変更します。
php.iniを「vim」で開いたら、「/extension=msql.so」と入力し検索を行います。コメントアウトされている場合はコメントを外します。検索に引っかからない場合は追記します。
vim /etc/php.ini
extension=msql.so <= 追記
<img width="400" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/988747/52855065-f12d-1fac-5d56-0ba36dbcebb3.png">
↓
<img width="400" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/988747/f0d0de9e-08de-49b7-0661-bf43ca6bdc77.png">
追記後、httpd設定を読み込みます。apacheは停止しません。
service httpd reload
また、サーバー再起動時、apacheを自動起動する設定をします。
自動起動設定を確認し、「disabled」と表示されると、再起動しませんので「enabled」となるようにします。
systemctl is-enabled httpd
disabled
# systemctl enable httpd.service
# systemctl is-enabled httpd
enabled
#③adminerをEC2に設置
こちらから最新バージョンをダウンロードします。
現時点では、`Adminer 4.8.1`が最新版です。
https://www.adminer.org/
<img width="800" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/988747/1dbac7c2-d448-32cd-4540-ec55ee3d419a.png">
ローカルにダウンロードした`adminer-4.8.1.php`ファイルをEC2にアップします。
scpコマンドを使用します。
まずEC2サーバーの/var/www/htmlディレクトリの権限を変えます。
cd /var/www
chmod 777 html/
ローカルでコマンド実行します。
ローカル
$ scp [オプション] [鍵].pem コピー元パス ユーザ名@サーバのホスト名(or IPアドレス):保存先パス
$ sudo scp -p -i ~/Downloads/ec2-key.pem ~/Downloads/adminer-4.8.1.php ec2-user@xxx.xxx.xxx:/var/www/html
サーバー側で権限を755に変更、ファイル名を変更します。
ファイル名を変更しないと、ブラウザに表示されません。
cd /var/www
chmod 755 html/
# mv adminer-4.8.1.php adm.php
ブラウザにURL:`EC2のパブリックIPアドレス/adm.php`でadminerが表示されます。
<img width="800" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/988747/15341b0f-4979-e427-2474-0c7491b38d85.png">
#④adminerログイン
adminerに以下の情報を入れるとログインできます。
・データベース種類:MySQL
・サーバ:RDSのエンドポイント (下図)
・ユーザ名:RDSのユーザー名
・パスワード:RDSのパスワード
・データベース:記入なし
・永続的にログイン:チェック!
サーバ:RDSのエンドポイント
↓
<img width="400" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/988747/a76a5135-aa5d-6e08-6d07-e1bb1b8b7a2e.png">
無事ログインできました。
参考
[Adminerを設置する](https://qiita.com/nissuk/items/2b1aee7f81f351c7ab05)
[お使いのサーバーの PHP では WordPress に必要な MySQL 拡張を利用できないようです。](https://blog.kujira-station.com/201501261644)