さわぴかのなんでもノート!

学びのアウトプット!なにについて書くかはわかりません!なんでもノートです!

【今日学んだこと】未経験からエンジニアへの道「12日目」MySQL繋がったーーー!!

今日の所感

MySQL、今日もうまく繋がらなかったら諦めて見てもらおうと思ってたけど… 解決!しました!! 動き出した瞬間ひとりでめっちゃ喜んだ…勝った…めっちゃ嬉しかった…! こういうのの繰り返しなんだろうな。

あと、少しずつ自分が関わってたプロダクトとかの、

あの部分これ使ってたんだろうな!

みたいな部分がわかってきて嬉しくなる。 うん、頑張ろう!

やったこと

  • ドットインストール :310分
  • 基本情報技術者(午前):24分
  • この振り返りブログ:76分
  • 英語:21分

学んだこと

MySQLを繋げるのを解決できた

最終的には

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)

のエラーが出てて、「less /var/log/mysqld.log」で確認しに行ったら、この文言。

f:id:pikahika:20190826203455p:plain
InnoDBとかいうのがなんかうまく行ってないっぽい?

昨日一昨日は訳も分からず出てきたコマンド打ちまくってたので、正直どれが1番効いていたのかはわからない…けど、 けど、最終的に、以下の記事にあった「ib_logfile0, ib_logfile1, ibdata1」ファイルを消したらつながりました!

https://www.ilovex.co.jp/blog/system/projectandsystemdevelopment/mycnfinnodbmysql.html

繋がった!と思って喜んだ後、 一応…と思って念の為もう一回「less /var/log/mysqld.log」で確認したら…

f:id:pikahika:20190826203545p:plain
MySQL繋がったのに大量のエラー、、、

??あれおかしい繋がったのになんだか得体の知れないエラーまみれに…

追加でググったら以下の記事でてきて、記事にある通り「mysql_upgrade」やったらこちらはすぐ解決しました。 blog.jicoman.info

何となくあたりをつけれるようになってきたのかもしれない…!

全部は覚えてないけど、エラーでまくってたときにやってみた記事を残しておきます。

socketファイルがなんかおかしそう?っぽかったので以下の記事にも従ったし、 http://tech-blog.tsukaby.com/archives/265

MariaDBというのではないけど、エラーは確かにこの順番だった saton2.hatenablog.com

ファイルサイズが小さいかも?みたいな感じでこれもやってみた。 support.plesk.com

何かのファイルがないかもしれない?ということでこれもやったり。

krs1.hatenablog.com

いろんな方の苦労で私もたどり着けました!皆さまありがとうございます! 私も悩んだら残していこう…!

ドットインストール

自分のPCが使えるようになったので、再度 「MySQL入門 (全36回)」(SELECT周りは2倍速で流した) PHPデータベース入門 (全13回) 、5回分

  • MySQL入門 (全36回)」

f:id:pikahika:20190826204212p:plain
データ型とか

f:id:pikahika:20190826204246p:plain

f:id:pikahika:20190826204339p:plain
テーブルに主キーつけたり。

f:id:pikahika:20190826204436p:plain
alterとかとか

f:id:pikahika:20190826204516p:plain
enumとset

f:id:pikahika:20190826204556p:plain
テーブルごとコピーしたり

f:id:pikahika:20190826204627p:plain
viewとか

f:id:pikahika:20190826204701p:plain
transatcion

f:id:pikahika:20190826204748p:plain
トリガー。なるほどここにデータ入ったときにここ更新される、みたいなのあったけどこれだろうな。みたいなのわかると嬉しくなった。笑

f:id:pikahika:20190826204849p:plain
複数のトリガーの時

f:id:pikahika:20190826204920p:plain
created_atとupdate_atはとてもお世話になったけど、自動で入るようにできるのがあるんだ!ってなった!

  • PHPデータベース入門 (全13回) 、5回分

f:id:pikahika:20190826230344p:plain
そもそもPDOがなんなんだかわかってない、、、

f:id:pikahika:20190826230438p:plain

基本情報技術者(午前)
  • OSのタスク状態推移:待機状態→実行可能状態(待ち行列に並んで実行待ち)→実行状態(←時間切れや優先順位の高いタスクに割り込まれたら戻ることも)→タスクの消滅or待機状態→…

マルチタスク

  • アイドル時間:CPUなどが動作可能な時間のうち動作していない時間
  • CPU使用率:CPU使ってる時間の割合
  • マルチプログラミング:あるプログラムが入力装置を使うためにCPUが空いたときに、他のプログラムがCPUを使用することでアイドル時間を少なくし、効率をあげる方式。
  • マルチタスク、マルチプロセス:見かけ上同時に実行できる。どのタスクにCPUを割り当てるか、スケジューリングが重要。
  • プリエンプティブ・マルチタスク:一定時間ごとにCPUを使用するタスクを切り替えたり、優先順位の高いタスクを割り込ませたりできる方式。
  • ノンプリエンプティブ:あるタスクが実行を始めると、他のタスクがCPUに割り込めない方式。

  • FCFS(First-Come First-Served):到着順方式。割り込めない、後に到着すると長く待たされるが、いつかは順番が来る

  • ラウンドロビン方式:一定時間を割り当て、時間切れになったら待ち列の最後に並び直す。対話型処理(漢字の変換とか、人が判断しながら処理や操作を行う方式)むき。全てのタスクが1回で終われば到着順と同じになる。頻繁にタスクを切り替えるからオーバーヘッドタイムが大きい。
  • 優先順方式:タスクに優先順位をつけ、その順にCPU時間を割り当てる。優先度が高いと低いタスクの実行中でも割り込める。
  • スタベーション:飢餓状態。長い時間が経過してもCPU割り当てがなく、待ち続ける状態。もしかしたら永遠に順番が来ないかも。
  • CPUバウンド:入出力装置(I/O)よりもCPUを使う時間が長いこと。困ったタスク
  • I/Oバウンド:CPUよりも、入出力装置(I/O)を使う時間がながいこと。すぐにでもCPUを割り当てたいタスク。
英語

わからないこと、わからなかったこと

  • exec()とquery()とprepare()のそれぞれの意味はわかっても、使い分けがいまいちピンと来てない
  • PDOがいまいちなんなのかわかってない

明日の意気込みなど

PHPをもう少し詰めてやっていくべし…一回やったくらいじゃもう忘れてしまった笑 頑張る。