MySQLとは?
MySQLとは、1995年に登場したオープンソースのリレーショナルデータベース管理システム(RDBMS)です。MySQLの名前は、共同設立者の娘の名前Myとデータベース操作言語であるSQLから名付けられました。
MySQLは商用RDBMSであるOracle Databaseに次いで2番目の人気を誇り、オープンソースRDBMSでは長い間No.1ポジションを維持しています。
【参考】:DB-Engines Ranking of Relational DBMS
MySQLの特徴
MySQLは、GPL(GNU General Public License)に基づくオープンソースソフトウェアです。MySQLはサン・マイクロシステムズ社に買収されましたが、オープンソースソフトウェアの位置付けに違いがありません。
そのために、オープンソースのRDBMSを求める多くのユーザはMySQLを支持・選択しています。MySQLの公式サイトではMySQLの顧客として、YouTube・PayPal・Linked in・Facebook・Twitter・ebay・CISCO・verizon・Uber・TESLA・NETFLIX・GitHubが紹介されています。
【参考】:MySQL
オープンソースを選択するユーザは、オープンソースで全体のソフトウェアスタックを構成することが多く、代表的なソフトウェアスタックをLAMPと言います。LAMPの構成ソフトウェアは以下の分類となります。LAMPで構成することで、より実績のある安定したシステム構築が可能です。
- L:Linux(OS)
- A:Apach(ウェブサーバ)
- M:MySQL(データベース管理システム)
- P:Perl・PHP・Python(プログラム開発言語)
MySQLでできること
MySQLでできることは、RDBMSの利用が低コストで実現できることです。商用RDBMSはライセンス費用や運用保守費が一般的に高額になってしまいます。MySQLはオープンソースソフトウェアのため、安価にシステムを実装することができます。MySQLは小規模から大規模DBまでをカバーするため、適用範囲が広いことも特徴です。
また、LAMPのソフトウェアスタックのコンポーネントの1つであるため、他のLAMPのコンポーネントと親和性が高く、ウェブ系システムやデータ処理システムの構築が簡単にできます。同様に、希望のOSがLinux以外でもWindowsやMacOSでも動作するため、ニーズに合わせてシステム構築が可能です。
さらに、WordPressをはじめとするCMSではMySQLをDBMSの要件としているものがあります。ウェブコンテンツ管理ではMySQLを利用するのがいいでしょう。
そもそもデータベースとは?
ここでは、そもそもデータベースとはどういったものなのか、DBMSやRDBMSについて解説します。また、SQLとOracleがMySQLとどう違うのかについてもまとめました。
DBとは
DBはデータベース(DataBase)の略です。DBとは、必要とされる情報を蓄積・検索する機能を有する情報(データ)の集まりです。DBは通常コンピュータシステムを用いて検索機能をシステム化したものを指します。
DBMSとは
DBMSはデータベース管理システム(DataBase Management System)の略です。DBMSとは、データベースをコンピュータ実装する際に必要とされるDBの構築・管理・運用を行うソフトウェアを指します。
RDBMSとは
RDBMSは、リレーショナルデータベース管理システム(Relational DataBase Management System)の略です。DBにはいくつかのデータモデルが定義されています。現在データモデルの中で、RDBMSがDBMSの主流として用いられています。
RDBでは、データの項目を論理的にテーブル(表)・レコード(行)・カラム(列)で表示するモデルを採用しています。
MySQLとSQLの違い
SQLは、リレーショナルデータベース管理システム(RDBMS)で用いられるデータベース操作言語です。データベース操作言語とはデータの操作や定義を行う言語を指します。データベースはいくつかのデータモデルがありますが、SQLはRDBMSで用いるデータベース操作言語です。
SQLとMySQLは言葉が近いですが意味が異なります。SQLはデータベース操作言語であるのに対して、MySQLはデータベースを管理する管理システム(RDBMS)を意味し、全く別物です。言葉と意味の違いを理解しておきましょう。
MySQLとOracleの違い
MySQLはOracle Databaseの次に利用されており、オープンソースではNo1ポジションを維持しています。MySQLとOracle Databaseの違いですが、商用RDBMSであるOracle DatabaseとMySQLはともにオラクル社が提供しています。
違いを詳しく見ていくと、Oracle Databaseは企業向けRDBMSとして基幹業務での利用が多くなります。MySQLはオープンソースとして小規模から大規模システムまで対応します。手厚いサポートが必要な場合はOracle Databaseを選択し、自前で保守する場合はMySQLを選択する傾向があります。
その他にも、WindowsシステムではMicrosoft社のSQL Serverが人気があります。また、PostgreSQLはオープンソースソフトウェアでありながら、大規模システムで活用例が増えておりMySQLを追いかけている状況です。
MySQLのインストール方法
MySQLは有償版と無償版があります。有償版をMySQL Enterprise Editionと言い、無償版をMySQL Community Editionと呼びます。まずは、無償版で色々と試してみましょう。
MySQLをダウンロードするには無償版をMySQL開発者サイトからモジュールをダウンロードし、インストールします。LinuxモジュールやWindowsインストーラから該当バージョンを選択し、ダウンロード・インストールします。
【参考】:MySQL Community Downloads
インストールはDeveloper Defaultを選択すると、あまり悩まずに完了します。MacOSの場合は、Homebrewというパッケージ管理システムを用いてMySQLをインストールすることで簡単にインストールが完了します。
インストール完了後は、初期設定としてrootユーザのアカウント設定を行います。そこで必要なユーザ名とパスワードを設定します。
MySQLの使い方
MySQLの使い方はLinuxのシェルやWindowsのコマンドプロンプト、またはMacOSのターミナルを用います。そこで”mysql -u root -p”コマンドを実行し、Enter password:の表示後に登録したパスワードを入力します。
終了は、”exit”や”quit”を入力します。
MySQLのコマンド
MySQLのコマンドはDB操作のコマンドとなり、DB操作言語のSQLに従います。DBの作成はCREATE DATABASE、表示はSHOW DATABASESを用います。DBの削除はDROP DATABASEを用います。
次にテーブル(表)の作成はCREATE TABLE、表示はSHOW TABLESを用います。テーブルが作成できたらデータを格納します。データの格納はINSERTです。次にデータ参照はSELECTを、データ更新はUPDATEを用います。データの削除はDELETEで行います。
MySQLの資格や学習方法
ここでは、MySQLの認定試験や学習方法、学習におすすめの参考書について情報をまとめました。
MySQLの認定資格
MySQLの認定資格はオラクル社により実施されています。合わせて教育プログラムについてもオラクル社から提供されています。
【参考】:MySQL 認定資格
2024年1月現在、MySQL認定試験として「MySQL 2021 Implementation Essentials」が用意されています。MySQLの販売・実装を担当するスキルを想定しています。
- 試験番号:1Z0-921
- 出題形式:選択問題
- 試験時間:90分
- 出題数:52問
- 合格ライン:60%
- 受験料:34,300(税抜)
- 申込方法:ピアソンVUEより申し込み
【参考】:MySQL 2021 Implementation Essentials | Oracle University
また、これまであった「MySQL 5.7 Database Administrator(1Z0-888-JPN)」は、2023年10月31日に日本語配信が終了しました。
【参考】:新着ニュース | Oracle University
MySQLはオープンソースソフトウェアNo.1 RDBMSであるため、資格取得により活躍の場が広がるでしょう。
MySQLの学習方法
MySQLの情報は多岐にわたって公開されています。まずは公式サイトのリファレンス情報を確認することをおすすめします。日本語に翻訳された情報が確認できます。
加えてMySQLのユーザ会にも多くの情報が掲載されています。日本語ドキュメント・参考書・FAQがカバーされています。
【参考】:日本MySQLユーザ会
MySQL学習におすすめの本
MySQLを学習する際におすすめの参考書として、以下の2冊を紹介します。
「1週間でMySQLの基礎が学べる本 - インプレスブックス」
本書は、1週間でMySQLが使えるようになることを目指し、データベースの基礎とMySQLの基礎が分かるようになります。初心者の方でも始めやすいようにわかりやすく丁寧に解説されているため、挫折しにくいのもおすすめです。
▪著者:亀田 健司 ▪ページ数:320ページ ▪出版社:インプレス ▪発売日:2021/09/14
【参考】:1週間でMySQLの基礎が学べる本 - インプレスブックス
「データベースの基礎 (改訂版) - MariaDB/MySQL対応」
本書は、大学・高専などのオンライン教材にも最適な1冊です。「オンライン授業」と「対面授業」の両方で利用でき、12の章からなる構成を各章に1コマを割り当てられます。YouTubeとも連携しているため、隙間時間での学習にピッタリです。また、付録にはMariaDBのインストール、JavaによるSQLプログラミング、MariaDB実習が掲載されています。
▪著者:永田 武 ▪ページ数:192ページ ▪出版社:コロナ社 ▪発売日:2021/07/10
【参考】:データベースの基礎 (改訂版) - MariaDB/MySQL対応 - | コロナ社
MySQLを理解してさらに経験値を高めよう
MySQLは、オープンソースソフトウェアのスタックであるLAMPを構成するRDBMSです。LAMPはウェブ系システムを中心に最も利用される最適な組み合わせのため、採用が増えています。
MySQLは蓄積データを効率的に検索するために用いるRDBMSのため、今後さらに重要性が高まるでしょう。MySQLが理解できたらLAMPを組み合わせて業務システムを構築し、さらに経験を高めることをおすすめします。
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから