初心者向けに、Laravelプロジェクトをエックスサーバーにデプロイする方法を解説しています。
今回は公開用のデータベースの準備について。
開発環境と本番環境では、データベースも別々になります。
ローカル上のデータベースを、本番環境に構築する手順を説明していきます。
これまでの流れは、こちらをご覧ください。
なお、わたしの環境はWindowとLaravel8です。
↓↓↓
10日間無料お試し可能です。
独自ドメインがひとつ無料で使えます。
(キャンペーン情報は変更があるかもしれないので、お申込み前にご確認ください。)
初めてLaravelプロジェクトをデプロイする人のためのエックスサーバーへのデータベース設定方法
まずはエックスサーバー上にデータベースを作成します。
次にこの情報をLaravelの公開用の.envファイルに反映していきます。
エックスサーバー上にデータベースを作成
① エックスサーバーのサーバーパネルにログイン。
画面の中央あたりの データベース から、MySQL設定を選択してください。
② MySQL追加タブ を選択。
MySQLデータベース名を設定し、確認画面へ進む ボタンをクリック。
③ 確認画面が表示されるので、追加する ボタンをクリック。
④ 次に MySQL一覧タブに移ります。
現在作成したデータベースの アクセス権未所有ユーザ の中からユーザーを選択し、追加ボタンをクリックします。
これで新たなデータバースが出来上がりました。
次にこのデータベースをLaravelのプロジェクトに反映させていきましょう。
Laravelプロジェクトと公開用データベースの連携
① 既存の.envファイルをコピーし、公開用の.envファイルを作成します。
② ①のファイルを編集し、今作成した公開用のデータベースの内容を反映します。
次の4箇所を変更してください。
DB_HOST | サーバーパネル/phpmyadminをクリック
phpmyadminが別タブに起動します。 上部の【サーバー:】の後の部分を入れます。 例)mysql1234.xserver.jp *MariaDB10.5では ‘localhost’ になっています。 参考サイト:https://www.xserver.ne.jp/support/faq/service_db_expire.php |
---|---|
DB_DATABASE | 今作成したデータベース名 |
DB_USERNAME | データベースのユーザー名 |
DB_PASSWORD | データベースのパスワード |
*ホスト名は、エックスサーバーのサーバー情報内にあります。
③ .envファイルは、他のファイルのようにプッシュ・プルができません。
そこで、②のファイルはFTPなどを使って手動でLaravelのプロジェクトの中にアップロードしてください。
*なお.envファイルは隠しファイルになるので、設定によっては、アップロードしても表示されないかもしれません。
④ データベースに変更を加えたら、マイグレートを実行する必要があります。
まずは本番用のプロジェクトに移動しましょう。
Git Bush を起動します。SourceTreeのターミナルをクリックしてもOKです。
前回までと同様の方法で下記を入力し、エックスサーバーにログインします。
アカウント名やホスト名の場所は、下記記事を参照してください。
⑤ cd laravel を実行し、laravelプロジェクトの公開用ディレクトリに移動します。
前回 laravelという名前で作成したものです。
1 |
cd laravel |
⑥ cd test を実行し、今回のlaravelプロジェクトのプル用ディレクトリに移動します。
1 |
cd test |
⑦ マイグレートのコマンドを実行します。
1 |
php artisan migrate |
これで、本番用のデータベースの準備が整いました。
データベースのエクスポートとインポート
もしローカルのデータベースを本番用に移行させたい場合には、エクスポートとインポートを実行します。
開発環境から本番環境にデータを移行することはあまりないかと思いますが、念の為、解説していきますね。
① まずはローカル上のデータベースにログイン。
エクスポートしたいテーブルを選び、エクスポートタブをクリックします。
デフォルトのまま、右下の実行ボタンを押します。
② 次にエックスサーバーの データベースメニューの中から phpmyadmin(MySQL5.7) をクリック。
phpMyAdminが別ウィンドウに起動します。
③ 左側の +ボタンを押して、データベースを展開します。今回のデータベースを選択し、インポートタブをクリック。
アップロードファイル から、エクスポートしたファイルを選択します。左下の実行ボタンを押します。
以上となります。
わざわざエクスポート・インポートせずとも、少量のデータであれば、手入力でも良いかと思います。
ただ、開発環境と同様、データベース上で直接カラムを追加したり、テーブルを増やしたりといったことはやめておきましょう!
それでは今回はここまで。
次回は、本番用のURLの作成方法を解説していきますね。
【Laravelをエックスサーバーで公開する方法 目次】