#概要
・GoとGORMを使った勉強(3)の続き ※さらに続きあります(作成中)
・前回まで:ローカル環境でDBに接続してテーブルの情報を画面に表示
今回 :レンタルサーバーでDBに接続してテーブルの情報を画面に表示
#準備
・レンタルサーバーを借りる
・レンタルサーバーにSSH接続しておく
よければこちらの記事を参考にしてください
さくらのレンタルサーバーに接続する方法(超初心者向け)
#レンタルサーバーでDBを用意する
最終的にサーバーでファイルを送ってもDBがなければ動かないので、DBを用意します。
さくらインターネット公式のサポート情報に写真付きでわかりやすく手順が書いてあるのでこの通りにデータベースを作ってください。
####表示させる予定のテーブルを用意する
GoとGORMを使った勉強(1) で用意したようなテーブルを作ります。
なお、今回は
「サーバコントロールパネル」から「phpMyAdmin」へログインして、SQLを使って作ることにしました。
####作成したいテーブルを確認
#usersテーブルの状態
desc users;
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | MUL | NULL | auto_increment |
| name | varchar(255) | YES | | NULL | |
| created_at | datetime | YES | | NULL | |
| updated_at | datetime | YES | | NULL | |
| deleted_at | datetime | YES | | NULL | |
+------------+--------------+------+-----+---------+----------------+
select * from users;
+----+-------------+------------+------------+------------+
| id | name | created_at | updated_at | deleted_at |
+----+-------------+------------+------------+------------+
| 1 | sample_user | NULL | NULL | NULL |
+----+-------------+------------+------------+------------+
####phpMyAdminへのログイン
1.さくらのレンタルサーバーのサーバコントロールパネルにログインします。
2.Webサイト/データから『データベース』を選択し、そこから『phpMyAdminログイン』をクリックします。
3.phpMyAdminのログイン画面が表示されるので「ユーザー名」、「パスワード」を入力して 『実行』をクリックし、ログインしてください。
ユーザ名 初期ドメインのサブドメイン部分
(例:初期ドメインが example.sakura.ne.jpの場合、exampleと入力)
パスワード データベース作成時に設定したパスワード
####テーブルを作る
1.phpMyAdminへログインできたら上のメニューバーから「データベース」をクリックします
2.先ほど作成したデータベース名をクリックして移動します。
3.移動したら上のメニューバーから「SQL」をクリックします。
4.入力スペースにSQLを入力して「実行」をクリックすることでテーブルを作ることができます。
#usersテーブルを作成
create table users(id int auto_increment,name varchar(255),index(id),created_at datetime,updated_at datetime,deleted_at datetime);
#データを追加:phpMyAdmin_SQL入力スペース
insert into users values(null,"sample_user",now(),now(),null);
#####これでテーブルの用意はできました。
#サーバーに「index.cgi」を送る
前回の記事でmain.goをbuildしてできた「index.cgi」をサーバーに送ります。
今回はscpコマンド
を使って送ります。
scpコマンド
リモートマシンとローカルマシン、あるいはリモートマシン同士でファイルをコピーする際に使用するLinuxのコマンド。
通信にはsshを使用する。sshコマンドと同じ認証でデータ転送の通信を暗号化する。sshを使用するため、ssh接続をできるようにしておく必要があります。
使い方:scp [オプション] コピー元パス 保存先パス
#scpでファイルを送ります
scp index.cgi piyo:/home/hoge/www
#サーバーに「.env」ファイルを用意する
####サーバーに接続する
ssh hoge
#Welcome to FreeBSD!と表示されたらログイン成功です。
####「index.cgi」を送った場所に移動する
今回の場合は/home/hoge/www
へ移動します。
####.envファイルを作る
#Vimを開く
% vim .env
####「.envファイル」に接続情報を書く
接続情報はレンタルサーバのコントロールパネルホームから確認してください。
GIN_MODE=release
DB_USER=hoge
DB_PASS=hogehoge
DB_HOST=mysql57.hoge.sakura.ne.jp
DB_NAME=hoge_fuga
#確認
http://初期ドメイン/users
#####レンタルしているホームページを確認してuser情報を画面に表示できたら成功