Macのローカルにlaravel 5.6のインストール | アプリ開発のおぼえがき1

# 前提条件
・ある程度phpはわかってる人
・ある程度サーバはわかってる人
・ある程度MVCはわかってる人
・環境がmacの人(winは知らん)

# 目的
とあるwebシステム作らなきゃいけないから、どうせならlaravelでやってみるよー

# 環境
mac os sierra 10.12.6

# インストールから初期表示までの手順

1. homebrewインストール
https://brew.sh/
このコードコピペしてターミナルで実行

2. php7.2.6インストール
このへんを参考にインストール

3. mysqlをインストール
このへんを参考にインストール

4. laravelインストール
公式ドキュメントをもちろんみながらインストール
$ composer global require "laravel/installer=~1.1"

5. laravelプロジェクトの作成
$ laravel new projectname

6. cdする
$ cd projectname

7. artisan serveする
$ php artisan serve
Laravel development server started: <http://127.0.0.1:8000>

で、とりあえずプロジェクトは作れて、アクセスしてみれました。

# データベースとの接続を試してみる
rubyのmigrateみたいなのがあるらしいので、リファレンスにしたがってサンプルでmodelを作成

1. artisanでmakeってのがあるっぽい
$ php artisan make:model Article -m

2. projectname/database/migrations/にファイルが作られてた

3. 開いてcolumnをたしてみる

4. 保存してartisan migrateでデータベースができるっぽい
$ php artisan migrate

結果コケた

The server requested authentication method unknown to the client [caching_sha2_password]
(サーバーがクライアントに知られていない認証方法を要求しました[caching_sha2_password])

( ̄_J ̄)ん?

どうもcaching_sha2_passwordってのがなんかあるっぽいのでggr
するとこんな記事発見

そのまま引用すると

MySQL8.0からセキュリティが強化されたようです。

新しいハッシュかなんかがcaching_sha2_passwordになったってことですね

とりあえず確認

$ mysql -u root -p
Enter password: 

-------略-------

mysql > SELECT user, host, plugin FROM mysql.user;
+------------------+-----------+-----------------------+
| user             | host      | plugin                |
+------------------+-----------+-----------------------+
| sampleadm        | %         | caching_sha2_password |
| mysql.infoschema | localhost | mysql_native_password |
| mysql.session    | localhost | mysql_native_password |
| mysql.sys        | localhost | mysql_native_password |
| root             | localhost | caching_sha2_password |
+------------------+-----------+-----------------------+

なるほどってことで

mysql > ALTER USER 'sampleadm'@'%' IDENTIFIED WITH mysql_native_password;

で更新

結果

$ php artisan migrate
Migrating: 2014_10_12_000000_create_users_table
Migrated:  2014_10_12_000000_create_users_table
Migrating: 2014_10_12_100000_create_password_resets_table
Migrated:  2014_10_12_100000_create_password_resets_table
Migrating: 2018_07_04_193922_create_articles_table
Migrated:  2018_07_04_193922_create_articles_table

めでたしめでたし。


ここまでで詰まったのはhashのところくらい。

0からlaravelスタートをする同志のためにちょっと書いてみました、初note。

需要とモチベが続いたらアプリ完成まで書き殴ってこうと思います。

この記事が気に入ったらサポートをしてみませんか?