現在、オープンソースのデータベース界隈で人気を二分しているのが「MySQL」と「PostgreSQL」です。
引用元:MySQL
本記事では、MySQLについて初心者の方にわかりやすく、MySQLって読み方やSQLの違いついて、またMySQLの特徴や入門者でもわかる使い方など、MySQL初心者の方が疑問に思うことを順に解説しています。
圧倒的スキルが身につくプログラミングスクール5選
- DIVE INTO CODE
・年齢制限なし
・現場レベルの技術や開発が学べる
・オリジナルのWebアプリケーションが作れる - RUNTEQ
・高クオリティーで人気急上昇中!
・800~1,000時間の圧倒的な学習量
・現役エンジニアによるオリジナルポートフォリオ作成支援
・何でも相談できるバディ制度 - DMM WEBCAMP
・転職成功率98%・離職率2.3%
・転職できなければ全額返金。
・DMM.comグループならではの非公開求人も多数 - ディラボ
・Javaに特化し「未経験が2ヶ月でJavaシルバー資格取得可能」
・1期10名しか入れない「ガチの開発エンジニア育成スクール」
・平日でも土日でも基本的に質問し放題!
・卒業後現場の最前線で活躍できるスキルが身につく - Aidemy Premium
・AIに特化したプログラミングスクール
・完全初心者から研究者クラスまでに対応した幅広く優良なコンテンツ
・メンターと学習進捗を一緒に計画し挫折しないシステム
・20代には特待生制度アリ!
MySQLの読み方は?
まず、このMySQLって何と読むとおもいますか?
答えは「マイエスキューエル」です。←ほぼそのまま(〃艸〃)ムフッ
MySQLの「SQL」は「データ操作言語」のこと。
IT業界の世界的巨人であるIBM社が、世界初のデータベース管理システム「System R」を操作するために開発した、ある種のプログラミング言語です。
データベースサーバーの中に入っているデータを取り出したり、データを書き込んだり、と言った処理は、SQLによって制御されています。
MySQLとは?
引用元:MySQL
MySQLは「高速性」と「堅牢性」を追及したマルチユーザー・マルチスレッドのオープンソースのリレーショナルデータベースマネジメントシステム(RDBMS)です。
RDBMSとは?
データベース管理システムの1つ
MySQLは、データベース管理システムの1つです。
データの実体は、データが書き込まれたファイル(データベースファイル)にあります。
そして、データベースファイルに読み書きを行うソフトウェアを利用してそのデータを管理します。
利用者は、ソフトウェアを介してデータベースファイルに書き込まれたデータへアクセスすることになります。
このソフトウェアこそが、データベース管理システム(DBMS)です。
要するにデータベース管理システム(DBMS)がデータと利用者との間の架け橋になっているってことです。
最大の特徴はオープンソースソフトウェアであること
MySQLはオラクル社がリリースしていますが、同社がリリースしている一番有名なOracle Databaseとの大きな違いは「オープンソースのデータベース」であることがあげられます。
オープンソースソフトウェア(OSS)とは、ソースコードが無償で公開されていて、利用・改変・再配布が自由に許可されているソフトウェアのことを指します。
また、Webアプリを開発する現場でよく活用されるLAMP環境の「M」に該当するのがMySQLです。ちなみにLAMP環境の頭文字はそれぞれ以下となります。
- 「L」 → Linux
- 「A」 → Apache
- 「M」 → MySQL
- 「P」 → PHP/Perl/Python
リレーショナルデータベースの1種
いまどきのデータベース管理システム(DBMS)と言えば、リレーショナルデータベース(RDB)様式を指すのがほとんどです。
両者を合わせてリレーショナルデータベースマネジメントシステム(RDBMS)とも言われています。
リレーショナルデータベースとは、Excelのようにデータを「表」で管理するデータベースのことを指します。
表(テーブル)同士をキーとなる項目(列)で結合してデータを取得したりできるのが特徴です。
MySQLとSQLの違いとは?
「MySQL」は「SQL」と混同されがちですが、両者は全くの別物です。
MySQLは上記でも解説したようにデータベース管理システム(DBMS)です。
その一方で、SQLとはプログラミング言語に属します。
DBMSを使用してデータにアクセスする際には、DBMSに対して命令(取得・更新・追加・削除など)を送る必要があります。
この命令をする際に利用する言語がSQLです。
MySQLの特徴とは?
MySQLの特徴について解説していきます。
低コストで利用可能
MySQLはオープンソースであるため、SQL SeverやOracle Databaseなどに代表される商用データベースに比べて低コストで利用することができます。
小規模から大規模な開発まで対応可能
利用者からのアクセスが多い大規模なアプリケーションにも対応可能です。
検索のスピードが高速で機能も優れているので「Yahoo!」「Google」「YouTube」などで採用されています。
さまざまなOSや言語に対応
UNIX系各種OSやWindowsなどのプラットフォームに対応しています。
JavaやPHPのようなプログラム言語からも簡単にアクセスが可能で、特にWebアプリケーションを作成するならぜひ導入を考えたいデータベースだと言えます。
MySQL入門者でもわかる使い方
MySQLを利用するためには、サーバーへインストールする必要がありますが、たった3ステップの手順でインストールをすることができます。
- インストーラーをダウンロード
- インストーラーを実行
- MySQLサーバーを設定
それぞれ詳しい作業手順は、あとでご紹介していきます。
ここで1つ注意点があります。
それは、MySQLを使用するためにはWebサーバー(Apache)や、プログラムの実行環境(PHP)が必要となる点です。
Webサーバーは外からのアクセスとデータベースとの中間に立って、データの流れを整理してくれる役割を持っています。
また、プログラムの実行環境は、データベースから自動でデータを格納したり、取得したりする際に必要な機能となります。
MySQLを利用する際には、上記環境も合わせて準備していきましょう。
インストーラーをダウンロード
今回は私がWindowsOSなので、WindowsOSを利用する前提で説明していきます。
まずはMySQLの公式HPにインストーラーが掲載されているため、自分の環境へダウンロードします。
MySQL公式HPの上部メニューから「ダウンロード」をクリック
![MySQL公式HP](https://www.puroguraming-school.com/wp-content/uploads/2022/06/capture-20220613-082533-300x134.png)
青いメニューから「Windows」をクリック
![MySQL公式HP](https://www.puroguraming-school.com/wp-content/uploads/2022/06/capture-20220613-083924-300x72.png)
「MySQL Installer」をクリック
![MySQL公式HP](https://www.puroguraming-school.com/wp-content/uploads/2022/06/capture-20220613-084032-300x140.png)
今回は、インターネットを介してダウンロードを行うため、上の「Download」ボタンをクリック
![MySQL公式HP](https://www.puroguraming-school.com/wp-content/uploads/2022/06/capture-20220613-084053-300x110.png)
「No thanks, just start my download.」をクリック
![MySQL公式HP](https://www.puroguraming-school.com/wp-content/uploads/2022/06/capture-20220613-084137-300x280.png)
インストーラーを実行
インストーラーをダウンロードしたら、次はコンピューターへのインストールを行います。
インストーラーをダブルクリックすると、セキュリティの警告が表示されるため「実行」で先に進みます。
ユーザーアカウント制御が表示されるため「はい」で進みます。
MySQLのインストーラーが表示されライセンス画面が起動します。
「I accept the license terms」にチェックを入れ、「Next」をクリックします。
セットアップタイプを選択します。
今回は標準設定である「Developer Default」と「Install all products」を選択し、「Next」をクリックします。
インストーラーがMySQLを動かすために必要なランタイムをチェックします。
「Execute」をクリックすると自動でインストールしてくれます。
必要なもののインストールが終わったら「Next」で進みます。
「Excute」でダウンロード・インストールを開始します。
完了画面が表示されればインストールは終了です。
MySQLサーバーを設定
最後にMySQLサーバーの設定を行います。
インストールした「MySQL Server」の設定を開始します。
下記項目を記載し「Next」で先へ進みます。
- Server Configuration Type
「Debelopment Machine」を選択 - Enabale TCP/IP Networking
MySQLで利用する通信ポートを設定。今回はデフォルトの「3306」を入力。
アカウント設定を入力します
- Root Account Password
全ての設定が可能なRootユーザーのパスワードを入力 - MySQL User Accounts
一般ユーザーのアカウント追加画面。今回はそのまま空欄で先へ。
最終設定
- Windows Service Name
変更なし - Start the MySQL Server at System Startup
チェックを入れる ※OS起動時にMySQLサーバーが起動 - Run Windows Service as …
「Standard System Account」を選択
以上で、MySQLの設定が完了です。
WordPressとMySQLの関係って?
WordPressを始めとするCMSではデータベースがほぼ確実に使われており、MySQLが果たす役割はとても大きいです。
WordPressでMySQLなどのデータベースの操作システムが必要な理由は投稿データなどを管理するためです。
また、管理者などのユーザー情報を格納し、セキュリティ面でも利用されています。
WordPressにはPHPでMySQL操作をするためのコードも用意されており、ユーザーがMySQLのコードの書き方がわからなくても簡単にデータベースを活用できます。
WordPressを使っていたとしても、自分がデータベースを操作している感覚がないくらいです。
WordPressでMySQLが使われてるとこって?
WordPressには12個のデータベースが用意されています。
どのデータベースもWordPressを活用する上で重要な役割を持っています。
テーマをWeb上からダウンロードして使う場合はあまり意識しなくてもいいですが、一から自作しようとする人は知っておくと機能の幅が広がります。
下にデータベースと内容を記載します。
名称 | 内容 |
wp_posts | 投稿・固定ページに関するデータ(本文など) |
wp_term | カテゴリーなどのデータ |
wp_termmeta | データに関するメタ情報 |
wp_term_relationships | カテゴリー・タグと記事を関連付けるデータ |
wp_term_taxonomy | カテゴリ・タグ・ネームなどのシステム用データ |
wp_comments | コメントに対するデータ |
wp_options | サイト名やパーマリンクの情報 |
wp_links | リンクに関するデータ |
wp_commentmeta | コメントのメタデータ |
wp_postmeta | 投稿に関するメタデータ |
wp_usermeta | ユーザーのメタデータ |
wp_users | 管理者のユーザー情報 |
ダッシュボード上で使用している分にはあまり意識することはありませんが、WordPressを深く理解しようと思えば覚えておくといいと思います。
初心者におすすめするMySQL勉強法
MySQLの使い方を学ぶ方法について紹介します。
ぜひMySQL初心者の方は活用してみてください。
学習サイト
以下の学習サイトであれば、環境構築せずともMySQLの操作を学ぶことができます。
- ドットインストール
- Udemy
また、MySQLは上記でも解説したようにオープンソースのデータベースなので、PCにインストールさえすればすぐに利用できます。
しかし、初心者の方にとってはインストールをどのように行えばいいのかなど不明点も多いはず。
プログラミング学習サイト「Progate」ではMySQLの開発環境の構築方法や、簡単な操作法が解説されています。
Udemy セールを利用してみんながやっている節約受講知っていますか?
progate とは?progate 無料でできることって?特徴や有料との違いを徹底解説!
書籍で学ぶ
MySQL関連のおすすめ書籍も紹介しておきます。
基礎からのMySQL 第3版 (基礎からシリーズ)
データベースの基本的な事柄の解説から、MySQLを使ったSQLの操作、PHPとの連携までわかりやすく解説されています。
外部との連携に関する記述も多く、読み終えた頃には、より実用的なスキルが身につきます。
データベースの基礎から学びたいという方には、ぜひおすすめな書籍となります。
3ステップでしっかり学ぶ MySQL入門 (今すぐ使えるかんたんプラス)
予習・体験・理解と3ステップを踏む形式で解説されています。
図解も豊富で、視覚的にもわかりやすいので、初心者向けの内容となります。
【入門】MySQLとは?初心者にわかりやすく解説!まとめ
MySQL「マイエスキューエル」は、「Yahoo!」「Google」「YouTube」など利用者からのアクセスが多い大規模なアプリケーションにも対応していますし、最近身近に感じるWordpressにも使用されています。
このサイトもWordpressなので余計に親近感が湧きますね!
上記の大規模アプリケーションを見てわかるように、近年MySQLに代表されるようなオープンソースのデータベースは急速にシェアを伸ばしてきています。
MySQLを利用できるエンジニアを求めている企業も増えてきていますので、市場価値を高めるためにも勉強しておいて損はないと思います。
関連
受講料安くて保証が手厚い!プログラミングスクールランキング
圧倒的スキルが身につくプログラミングスクール5選
- DIVE INTO CODE
・年齢制限なし
・現場レベルの技術や開発が学べる
・オリジナルのWebアプリケーションが作れる - RUNTEQ
・高クオリティーで人気急上昇中!
・800~1,000時間の圧倒的な学習量
・現役エンジニアによるオリジナルポートフォリオ作成支援
・何でも相談できるバディ制度 - DMM WEBCAMP
・転職成功率98%・離職率2.3%
・転職できなければ全額返金。
・DMM.comグループならではの非公開求人も多数 - ディラボ
・Javaに特化し「未経験が2ヶ月でJavaシルバー資格取得可能」
・1期10名しか入れない「ガチの開発エンジニア育成スクール」
・平日でも土日でも基本的に質問し放題!
・卒業後現場の最前線で活躍できるスキルが身につく - Aidemy Premium
・AIに特化したプログラミングスクール
・完全初心者から研究者クラスまでに対応した幅広く優良なコンテンツ
・メンターと学習進捗を一緒に計画し挫折しないシステム
・20代には特待生制度アリ!