2020-07-30 yps学習記録その3
2020/07/30
やったこと
- SQLのテーブル作成&バッチの作成
- php.iniの設定
- GitHubにファイルアップロード
yps1 task3
バックアップファイルとの比較で使うcolordiffをインストールしておく。
sudu yum install colordiff -y
-
SQLのテーブル作成&バッチの作成
cd /tmp sudo yum install wget wget http://tech.pjin.jp/wp-content/uploads/2016/04/worldcup2014.zip unzip http://worldcup2014.zip ls -la worldcup2014.sql mysql -u root -p
mysqlに入れたらテーブル作成。
create database worldcup2014db; use worldcup2014db; source ./worldcup2014.sql; show tables; // テーブル名確認 exit // 一旦抜ける
テーブル名が表示されたら作成できている。
次にバッチ作成を行う。バッチ処理とはあらかじめ一連の処理を登録しておいて、それを自動的に実行する処理方式のことらしい!
今回はデータベースから選手の名前を取り出す処理をあらかじめ登録してみる。cd /var/www/html/yps/ vi .env
「DB_DATABASE=worldcup2014db」に変更して保存。
php artisan make:model Models/Player ls -la app/Models/Player.php // ファイルがあるか確認
ここからVSCodeで作業する。 /var/www/html/yps/App/Console/Commands/TestCommand.php の中身をこちらの内容に更新する。
ターミナルで以下のコマンドで選手の名前が表示されればok!php artisan config:clear php artisan test_command
utf8mb4だとmysql cli(mysqlクライアント)で日本語が入力できない問題がある。
MySQLクライアントに日本語が入力できない理由 - Suzna Developer Blog
例えば「select * from players where name = ‘酒井’;」
SQLのファイルを作ってそれを読み込ませることで解決する。
cd /var/tmp
vi get_players.sql // 新規ファイル作成
中身に以下のSQLコマンドを入力して保存する。
use worldcup2014db;
select * from players where name = ‘酒井’;
そしたら、以下のコマンドでこのファイルを読み込んで使ってみる。
mysql -u root -p < ./get_players.sql
mysql -u root -p < ./get_players.sql > ./out.txt // ファイル出力もできる
データベースから酒井さんを検索できたらok!
- php.iniの設定
バックアップファイルを作ってから、php.iniをviで開く。
sudo cp /etc/php.ini /etc/php.ini.org
sudo vi /etc/php.ini
以下を参考に初期設定を行う。(先生の答えはこちら)
CentOSにPHP7をインストールしたらやっておくべき初期設定 | Affiwork
設定が終わったらphp-fpsとNginxを再起動して設定を有効化する。
sudo systemctl restart php-fpm
sudo systemctl restart nginx
上記の設定に加えphp.iniでエラーログの設定も行う。以下を加える。
errorlog= “/var/log/phperrors.log”
保存したらエラーログファイルを作る。
sudo touch /var/log/php_errors.log
sudo chown nginx:nginx /var/log/php_errors.log
また再起動して設定を有効化する。
- GitHubにファイルアップロード
Gitのインストールとリポジトリの作成。
sudo yum install git -y
cd /var/www/html/yps
git init
GitHubでリポジトリを作成して、.gitignoreにLalabelを指定おく。
READMEも追加したら、Codeボタンから「git@github.com:〜〜」をコピーしておく。
ターミナルに戻ってコンフィグを開く。
cd /var/www/html/yps/
vi .git/config
中身を以下の感じで更新。
[user]
name = 名前
email = メアド
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
url = git@github.com:GitHubのアカウント名/リポジトリ名.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
保存したら、次に秘密鍵を作る。
ssh-keygen -t rsa -b 4096 -C "メアド"
コマンド入力→エンターキーを1回押下→パスワードを2回入力。
キーファイルが作られるので中身を確認。
cat ~/.ssh/id_rsa.pub
中身をコピーして、GitHubのSettingsで登録する。
登録が終わったらターミナルでソースコードを登録する。
cd /var/www/html/yps/
git add .
git commit -am "initial"
git push origin master
何か聞かれるのでyes入力→パスワード入力
これでソースコードpushできたー!、、、となるはずが私はつまづいた。
READMEと.gitignoreをGitHubから直接追加したことでローカルと差分が出てしまったのが多分原因。
pushの前にpullして最新の状態にしてからpushしなきゃだったぽい。
結局無理やりpushするという力技に出た。Gitは要復習。。。
develop、featureブランチも作っておく。
git develop, feature branch作成からmergeするまで (自分用メモ) - Qiita
今日は以下の手順でdevelopブランチの作成まで。
git branch //masterにいることを確認
git branch develop // develop作成
git checkout develop // developに移動
git branch // developに移動してればok
git push origin develop // リポートリポジトリに反映
ブランチ作成後にdevelopになっていればok。ここで開発したものをpushして本番化するものをmasterにmergeする感じです、、、よね?
本日はここまで。
気づきなど
- 色々やったけど何はともあれGitを復習しようと強く感じた。
- 7月終わった!ypsは今日で三周目!なんだか早い。