😊

EnvaderでMySQLの環境構築をしてみた

2022/03/05に公開

おっさんエンジニアもどきのゆうぞうです。

エンジニアにとってSQLは必須の技術ということらしいのですが、とりあえずプログラミング言語からという考えから、なんとなく敬遠していました。

ようやく重い腰をあげ、MySQLをインストールしたものの環境構築がうまくいかないという始末。

そんな時にEnvaderを知り、MySQLの環境構築ができるとのこと!
URLはこちら
https://envader.plus/

環境構築ってほんと難しいんですよねー。

その環境構築ができるということで早速やっていきます。

MySQLとは

MySQLとは、GNU General Public Lisence
の条件に基づいたオープンソースソフトウェア
リレーショナルデータベース管理システム(RDBMS)
です。

MySQLは世界でもっとも利用されているデータベース管理システムのことです。データベースの操作するために必要なんですね。

データベースとは?

データベースとは

  • 複数で共有すること
  • 検索、加工すること

を目的に整理されたデータの集まりのことです。

データを操作しないアプリケーションはないと言われますのでエンジニアにとってはデータベースやSQLの知識は必須です。

私は全然分かっていませんが・・・。

環境構築手順

では早速環境構築をしていきましょう!

今回のシナリオはこちら!

https://envader.plus/course/2/scenario/1035

aptを使用する場合はaptを最新の状態にしておく。

sudo apt update

mysql-serverをインストール

sudo apt install mysql-server

補足

MySQL本体とその依存関係のあるプログラムがまとめてインストールされる。

MySQLの起動

sudo service mysql start

MySQLの停止

sudo service mysql stop

MySQLの再起動

sudo service mysql restart

serviceコマンド

指定されたLinuxデーモンの起動や停止、ステータスの確認を実行したりするコマンド。

パスワード設定コマンド

sudo mysql_secure_installation

mysql_secure_installationとは

それぞれの意味

installation = インストール

secure = 安全

パスワード設定コマンドを入れると以下のようなコメントがでます。

Enter current password for root: 
#現在のrootのパスワードを入力します。
Set root password?: Y
#rootパスワードの設定?
New password: 新しく設定するパスワード
Re-enter new password: 新しく設定するパスワード
Remove anonymous users?: Y
#匿名ユーザーの削除?
Disallow root login remotely?: Y
#リモートでrootログインを無効にする?
Remove test database and access to it?: Y
#テストデータベースとそのアクセスを削除しますか?
Reload privilege tables now?: Y
#特権テーブルの再読み込みは今?

ほぼyesを押せばOKなようです。

DBに接続するコマンド

sudo mysql -u root

補足

オプション

mysql -h ホスト名 -u ユーザー名 -p データベース名
UPDATE user SET plugin='mysql_native_password' WHERE User='root';

SQL文解説

UPDATE : 列の値を更新する

SET : 更新する列名と値を記述

FLUSH PRIVILEGES;

データベース内のGRANTテーブルから再度読み込みを実行する。

PRIVILEGESの意味

特権

GRANTとは

アクセス権限を定義する。

grantの意味

許す

GRANT文は、1人または複数のユーザーにオブジェクトに関する特定の権限を付与するSQL文。

テーブルに対し、表への問い合わせ、更新、追加、削除などの操作権限を付与する。

DBに接続方法

mysql -u root -p
パスワード

コマンドを入力後にパスワードを入力すればMySQLの接続できます。

感想

自分のPCで環境構築って中々ハードルが高いですよね。

なんかPCがおかしくなったら嫌だったりします。

ですがEnvaderであればやりたい放題ww。

失敗してもいい環境っていうのは有り難いです。

他のシナリオもやって続けていきます!

https://envader.plus/courses

Discussion