MySQLとは何者?インストール方法から使い方まで画像付きで紹介!
2022.06.24


データベース管理システムで頻繁に使われる「MySQL」の初期設定から使い方まで詳しく紹介します。MacとWindwosどちらのユーザでも設定できるように解説したので、ぜひ最後までご覧ください!


1.MySQLとは?

MySQLとはオープンソースで開発されているデータベース管理システムです。


有名企業米オラクルが開発・提供を行っているサービスで、データの使用・取得が簡単などの特徴があげられます。

2.MySQLの特徴


データベース管理システムの中でも、MySQLには特に以下のような特徴があります。


・操作が簡単

・小さなアプリケーションから大規模なアプリケーションまで対応可能

・WordPressとの相性がいい

・オープンソースのため、基本的に無料で使用できる

・バックアップ機能やリカバリー機能も搭載

・セキュリティが高い



3.MySQLを使うために理解しておきたい知識


MySQLを扱う前に理解しておくべき知識が2点あります。実際に動かす前に押さえておきましょう。

①リレーショナルデータベース

「リレーショナル」とは英単語の「relation」から来ており、関連付けるという意味です。

リレーショナルデータベースとは、事前に定義された項目に値を入れていくデータの集合体です。Excelのように列と行をもつ表の集合として構成されます。


表の行(横)をレコード、列(縦)をフィールドと呼び、表自体をテーブルと呼びます。


テーブルの各列には特定の種類、または属性の実際の値を保存するフィールドが作成されるのです。


またテーブル同士の関係を設定し関連付けることで、複数のテーブルを結合できます。関連性のあるフィールドの値を更新することで、関連付けている別テーブルの値も自動的に更新されます。

②RDBMS(Relational DataBase Management System)

SQLを使用し、リレーショナルデータベースを管理するシステムはRDBMS(Relational DataBase Management System)と呼ばれ、MySQLもRDBMSを代表するサービスのひとつです。


RDBMSの特徴は以下の点が挙げられます。


・SQLを用いて操作する

・複雑なデータが扱える

・仕様変更の柔軟性が低い

・処理速度が遅い


反対にSQLを使わないデータベース管理システムも存在します。

NoSQLと呼ばれ、以下のような特徴があります。


・大規模データへの対応が可能

・データの整合性を保つのが困難

・データ加工が困難

それぞれのデータベース管理システムに長所短所が存在します。特徴を理解し使い分けるようにしましょう。

③クライアントサーバーモデル

MySQLはクライアントサーバーモデルで作成されています。


クライアントサーバーモデルとは機能やサービスを提供するサーバーと、利用するクライアントを分離し、ネットワーク通信によって接続するコンピュータのソフトウェアモデルです。

データが格納されているサーバーにアクセスするために、SQLを用いて各クライアントが要求を送信します。


クライアント側にプログラムをインストールし、サーバーと通信するという役割分担制になっているため、エラーが発生した際に原因を特定しやすいなどの特徴が挙げられます。


また、お互いが独立しているので一点に負荷が集中せず、分散させやすいという特徴もあります。



4.MySQLをインストールする前の準備


さっそくMySQLをインストールして使いたいところですが、MySQL単体ではCMSは動きません。PHPやWebサーバーなどが必要です。


MySQLの関連ツールとして以下の使用を検討してみてください。

1.phpMyAdmin

Webブラウザ上でデータ管理できるサービスです。ブラウザで操作するためOSを問わず使用できます。

2.Sequal Ace

Mac向けの軽くて使いやすいツールです。

3.HeidiSQL

動作が軽く、高性能なWindows向けツールです。




5.MySQLのインストール方法(Mac編)

ここからはMacにおけるMySQLのインストール方法を紹介します。Windowsの方法も下記にて紹介していますので、Windowsユーザの方は下記をご覧ください。

①インストール方法

MacでMySQLをインストールする方法はいくつか存在します。今回は最も手軽に利用できる「Homebrew」を用いてインストールしていきます。

1.Homebrewがインストールされているか確認

以下のコマンドを実行してください。

brew --version
Homebrewのバージョン表示画面

画像のようにHomebrewのバージョンが表示された場合、インストールされています。

2.MySQLをインストール

Homebrewを用いたMySQLのインストールコマンドは下記です。

brew install MySQL

インストールされたか確認するコマンドは下記です。

mysql --version

これで無事インストールできました。

②インストールできないときは

インストールが上手くいかなかった場合は、以下を試してみてください。


・入力したコマンドを再度確認

・コマンドを実行している場所を確認し、再度実行

・記事内コマンドが古くなっていないか確認

・ターミナルを再起動、再度実行

6.MySQLのインストール方法(Windows編)


続いて、Windows環境でMySQLをインストールする方法を紹介します。

①MySQLのダウンロード

以下のページにアクセスし、ダウンロードしてください。


https://dev.mysql.com/downloads/installer/


ページへアクセスするとさまざまなバージョンのMySQLがダウンロードできます。


基本的には最新バージョンをお勧めしますが、指定のバージョンを使用したい場合は対応したバージョンをダウンロードしましょう。



ダウンロードページには各バージョンふたつずつダウンロードボタンが表示されます。


ひとつめの「mysql-installer-web-community-8.0.25.0.msi」はネット環境下でダウンロードする方法です。ふたつめの「mysql-installer-community-8.0.25.0.msi」はオフライン状態でのダウンロード方法になります。


この記事ではひとつめの「mysql-installer-web-community」を選択します。

オラクルアカウントへのログイン・サインアップを勧める画面

選択すると画像のページに遷移します。


オラクルアカウントをお持ちの場合はログインできます。ログインもサインアップも不要な場合は左下の「No thanks, just start my download.」を選択しましょう。

②MySQLのインストール

ダウンロードが完了したらファイルを実行しインストールします。

ライセンスを読んで問題がない場合チェックボタンをクリックして進みましょう。


するとセットアップについて聞かれます。余計なソフトのダウンロードをしたくない場合「Custom」を選択し、不要なものを外しましょう。

特にこだわりがない方は「Developer default」で問題ありません。


「Execute」でインストールが実行されます。


インストール完了後、無事使えるか確認するためにコマンドプロンプトで確認しましょう。下記コマンドで確認できます。

mysql --version

コマンドプロンプト上にバージョンが表示されれば、インストール環境設定は完了です!

③上手くいかないときは

上記手順で上手くいかなかった場合、環境変数の設定ができていない可能性があります。

下記手順を試してみましょう。

  1. PC画面左下の検索バーに「環境変数」と入力
  2. 環境変数の編集ウィンドウが表示されたら画面上段にある「Path」を選択し、編集をクリック
  3. C:Program Files¥MySQL¥MySQL Shell 8.0¥bin¥」という記述を探し、「C:Program Files¥MySQL¥MySQL Server 8.0¥bin¥」に書き換える
  4. 「OK」をクリックし環境変数ウィンドウを閉じる
  5. コマンドプロントが開いている場合は一度閉じる
  6. コマンドプロンプトを管理者として実行し開く
  7. 下記コマンドを実行
    mysql –version
  8. バージョンが表示されたら完了




7.MySQLの使い方


ここからはMySQLの使い方を紹介します。

基本的にMac、Windows共に同じコマンドで操作できますよ。


MySQLの書式は基本的に大文字で表しますが、すべて小文字でも問題なく動きます。本記事内では実際のコードと書式案内を統一するために大文字で入力しますが、小文字で実行することをお勧めします。


また、すべてのコマンドは末尾に「;」が必要です。忘れないよう注意しましょう。

①サーバーにログインする

下記コードでmysqlサーバーを実行します。

mysql.server start

下記コードで「root」ユーザとしてログインします。

mysql -uroot

ログインが成功すると下記画像のようにコードの頭が「mysql>」に変わります。

頭が「mysql>」に変わったコンソール画面

②初期設定

ログインが成功したら初期設定を行います。


下記コマンドを実行し、初期設定を行いましょう。

※下記コマンドはターミナルで実行します。

mysql_secure_installation

実行するとパスワードを設定するか聞かれるので「Yes」と入力します。


次にパスワードの強度を設定します。

この記事では練習用のため「0」を選択しました。

利用用途に合わせて強度の高いパスワードポリシーを選択しましょう。


パスワードを入力すると、入力したパスワードで設定していいか聞かれるので「Yes」と入力しましょう。


rootユーザの設定が完了しました。設定が完了すると匿名ユーザを削除するか確認されます。匿名ユーザが存在する場合、誰でもMySQLのデータを操作できる状態になりますので基本的には削除しましょう。

③データベースを作成する

サーバーにログインでき、初期設定が完了しました。

ここからは実際にデータベースを作成します。


サーバーにログインした状態で下記コードを実行しデータベースを作成します。

root設定後は「mysql -uroot -p」で起動する必要があります。

こちらのコード実行後、設定したパスワードでログインしましょう。

CREATE DATABASE「データベース名」;

以下の画像はtestというデータベースを作成しています。

データベースの作成を行った画面

無事作成できたか確認するには下記コマンドを実行しましょう。

SHOW DATABASES;
データベースの表示を行った画面

ご覧のように、testというデータベースが作成できました。

④テーブルを作成する

データベースが作成できたので、続いてテーブルを作成していきます。


まずは下記コマンドで使用するデータベースを指定します。

USE「データベース名」;

「Database changed」と表示されれば完了です。


使用するデータベースの指定ができたのでテーブルを作成します。

下記コマンドで作成しましょう。

CREATE TABLE 「テーブル名」(要素...);

今回は下記コードで実行しました。

CREATE TABLE users(id int,name varchar(10), age int);

ここまでのコードを実行すると下記画像のようになります。

データベースを指定し、テーブルの作成を行った画面

今回のテーブルでは「id」、「name」、「age」というカラムを作成しました。

idは数字、nameは10文字以内の文字列、ageは数字で入力するカラムになっています。


無事作成できたか確認する場合、下記コマンドを利用しましょう。

SHOW tables;
テーブルの表示を行った画面

無事作成できたことが確認できました。

⑤データを編集する

テーブルにデータを入力していきましょう。


下記コードでインデックスを作成します。

CREATE INDEX ID_INDEX ON 「テーブル名」;
インデックスを作成した画面

作成したインデックスにデータを入力します。

INSERT INTO 「テーブル名」VALUES(要素...);
インデックスにデータを入れた画面

こちらでデータの入力が完了しました。

⑥データベースを削除する

最後にデータベースの削除方法を紹介します。

下記コマンドでデータベースを削除します。

DROP DATABASE「データベース名」;
データベースの削除を行った画面

ご覧のように簡単に削除できました。



8.MySQLでよく使うコマンド


ここからは頻繁に使われるコマンドを紹介します。

①ヘルプ

MySQLに慣れていないうちはこちらを一番使うのではないでしょうか。


helpと入力することで、使えるコマンド一覧が表示されます。


入力したコマンドに入力ミスがなく動かない場合はhelpと入力し、使えるコマンド一覧にあるか確認するとよいでしょう。


※エラーコードをGoogleなどで検索する方法でも問題ありません。

②ユーザの追加

ユーザを追加する場合は下記コマンドを実行します。

CREATE USER 「ユーザ名」@「ホスト名」IDENTIFIED BY 「パスワード」;

③権限付与

②でユーザを作成しただけでは、権限がないためなにもできません。

下記コマンドで権限を付与しましょう。

GRANT ALL PRIVILEGES ON 「データベース名」.* TO 「ユーザ名」@「ホスト名」; 

権限を付与したので、データベースの操作が可能になりました。

④ユーザ一覧を確認する

作成されたユーザの一覧を確認する場合は下記コマンドを実行します。

SELECT * FROM mysql.user

⑤MySQLのバージョンを確認する

MySQLのバージョンを確認したい場合はデータベースに接続する必要はありません。


ターミナルを開き、下記コマンドを実行します。

mysql --version

また、接続後も確認するコマンドが用意されています。

SELECT version()

いずれかのコマンドで確認しましょう。



9.プログラミング学ぶならトレノキャンプへ


トレノキャンプではプログラミングを実践的に学ぶためのコースを、オンラインで提供しています。オンデマンド配信なので、いつでも好きなときに受講が可能です。講座の詳しい内容は下記のバナーをクリックしてご覧ください。

この記事をシェア
おすすめの受講コース
  • はじめてのデータベース ~仕組みの理解とSQL~
  • Springシリーズ③ ~O/Rマッピングツール MyBatisによるデータベース操作~
  • 現場で活かせるWebシステム開発(Spring編)【Springシリーズ 1~3パック】
  • Git/Github入門 ~基礎から学習するバージョン管理~