とりあえずSQL実行できる環境作る方法 ~Dockerを使ったMySQL環境構築
1.はじめに
メンターをしていて、SQLに苦手意識がある人が結構いるように感じました。できるだけ早いタイミングで本物のDBに触って欲しいという思いから、一番楽に構築できる方法を考えた結果、Dockerを使って環境構築する方法に行きつきました。
なるべく難しい話はしないので、きちんと理解したい方は途中に貼ってある記事をご参照ください。
筆者のPCはWindows 10 home を利用している都合上、Docker Desktop ではなくDocker ToolBoxを利用している事をご了承ください。
※インストールで発生した問題に関しては責任を負いかねますので自己責任でお願いします。
2.Dockerとは何か?
詳しい説明は多くの記事が出ていますので、そちらの記事をお読みください。
本当に知らない人に簡単に説明すると、「自分のパソコンの中に簡単に仮想のサーバができる。」って理解しておいてください。
3.SQLを実行するまでにやることの流れ
Dockerをインストール→DockerにMySQLコンテナ作成→接続というが大まかな流れです。だいたい所要時間1時間です。
DockerにMySQLコンテナ作成という点で負荷が高そうに感じた方。大丈夫です。DockerにはDockerHubというものがあります。「うまい人が作ったサーバの設定をコピーできる、素敵なサービス(DockerHub)」と思ってください。
DockerHubを詳しく知りたい方、下記のスライドがとてもわかりやすかくておすすめです。
4.Dockerのインストール
DockerDesktopを使おうとしたのですが、筆者は下記のエラーに遭遇しました。下記のエラーが出た人はDockerToolBoxを使ってください。DockerDesktopの古いバージョンがDockerToolBoxであって、古いパソコンはDockerToolBoxだと動くとご理解ください。
ですので、DockerToolBoxのインストールについて記載致します。下記の記事を参考にさせていただきました。
とっても雑で乱暴な言い方ですが、下記のサイトからインストーラを落として、すべてNextを押したらインストールできました。 ※自己責任でお願いします
5.MySQLのコンテナ作成
下記の記事を参考にさせて頂きました。
記事の内容を転載するのも失礼なので、直接ご確認いただきたいのです。こちらも、とっても雑で乱暴な言い方ですが、3.4.5のセクションに記載されているSQLコマンドをDocker Quickstart Terminalへ入力していけば、環境を構築することができました。
参考までに、途中のSQLでバインドされているSQLの記載イメージは下記の通りです。
$ CREATE USER {ユーザ名}@{ホスト} IDENTIFIED BY '{パスワード}'; → $ CREATE USER user_name@192.168.99.1 IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO {ユーザ名}@{ホスト} WITH GRANT OPTION; → GRANT ALL PRIVILEGES ON *.* TO user_name@192.168.99.1 WITH GRANT OPTION;
次は、HeidiSqlで接続して、何ができるのか、をまとめたいと思います。
この記事が気に入ったらサポートをしてみませんか?