MySQLは世界トップシェアを誇るオープンソースのデータベース。サーバーエンジニアやインフラエンジニアにおいてMySQLの理解をしておくことは必須です。Webアプリを開発する際に人気の環境である「LAMP」でも活用されております。この記事ではMySQLを理解するために歴史や特徴、基本的なコマンドなどを簡単に解説していきます。
MySQLとは世界トップシェアを誇るオープンソースのリレーショナル型データベースシステム(RDBMS)です。オープンソースであるため無料で利用できるという特徴があり、多くの企業がLAMPと呼ばれるLinux、Apache、MySQL、PHPで組み合わせた開発環境を採用しております。特徴としてストレージエンジンという高性能な独自のエンジンが採用されており処理能力が早いだけでなく、拡張性と柔軟性が高いことも人気の理由です。
SQLとはリレーショナルデータベースの管理・操作をするため最も普及されているデータベース言語です。主な用途としてデータベース管理システム(DBMS)へデータの検索、追加、削除、更新などの指示のために使用されます。
1970年代にIBM社の開発によって誕生した『Structured English Query Language(SEQUEL)』が元になっております。そのことから広く知れ渡っている呼び名は『シーケル』です。またSQLは国際標準化機構(ISO)で規格化をされております。そのためMySQL、Oracle、PostgreSQLなど様々なデータベース管理システムにおいてもSQLにて対応することが可能です。またSQLの代表的な拡張プログラム言語としてPL/SQLやT-SQLなどが挙げられます。
SQLの歴史や特徴について解説された記事はこちら>>
Oracleとは米国発祥の世界で有数のソフトウェア企業です。DBMS(データベース管理システム)のOracle Databaseを主力商品としており、他にもに加え、データベース開発ツール、ERP、CRM、SCMなどの製品を持っております。
Oracle Databaseの特徴や構造について解説された記事はこちら>>
データベースとは様々な情報を整理し効率よく使用するために格納するデータの集合体のことです。データベースには様々なデータを効率よく管理するための機能が用意されております。また大量のデータを高速に処理することも可能です。用途は様々で顧客管理や在庫管理などの複数のデータを取り扱うことが必要とされる業務に使用されます。主なデータベースの種類としてOracleDBやMySQLなどが挙げられます。
データベースの種類や特徴を解説している記事はこちら>>
DBMSとはデータベースを構築するためにデータベースの運用、管理を実行するためのシステムです。
代表的な製品としてOracle Database、SQL Server、MySQLなどが挙げられます。
DBMSの歴史や種類を解説している記事はこちら>>
MySQLの読み方は『マイエスキューエル』です。名前の由来は共同設立者である「Michael Widenius(ミカエル・ウィデニウス)氏の娘」の名前である『My(ミー)』と『SQL』を組み合わせたものという説が濃厚だと言われております。
MySQLは1995年に『Michael Widenius(ミカエル・ウィデニウス)氏』によって開発され誕生しました。このプロジェクトには他にも『David Axmark(デビッド・アックスマーク)氏』『Allan Larsson(アラン・ラーション)氏』が中心となっており彼らによって同年(1995年)に『MySQL AB』が設立されました。
1996年「Linux版」リリース、1998年「Windows版」リリースがされました。2001年になるとMySQL AB社のCEOが『Marten Gustaf Mickos(マルテン・グスタフ・ミコス)氏』となり、これがオープンソース化のキッカケとなって世の中へと一気に普及する形となります。2008年になるとサンマイクロシステムズ社によってMySQL AB社は買収されます。
2010年にはオラクル社によってサンマイクロシステムズ社の買収が行われ、MySQLはオラクルの所有・管理となりました。MySQLは登場以来度重なるアップデートを繰り返し2021年1月現在の最新バージョンは8.0.23となっております。簡単に以下の年表にまとめておりますのでご覧ください。
年代 | 内容 |
1995年 | 『MySQL』誕生 / 『MySQL AB』設立 |
1996年 | 『Linux版』リリース |
1998年 | 『Windows版』リリース |
2001年 | 『MySQL』オープンソース化 |
2003年 | 『MySQL 4.0』リリース |
2005年 | 『MySQL 5.0』リリース |
2008年 | サンマイクロシステムズ社がMySQL AB社を買収 |
2010年 | Oracle社がサンマイクロシステムズ社を買収 |
2018年 | 『MySQL8.0』リリース |
MySQLの特徴を見ていきましょう。
MySQLは柔軟性が高いという特徴があります。様々なプラットフォームに対応し、幅広い容量を兼ね備えております。低容量のアプリケーションはもちろんのこと、1TBを超える大規模なデータ量にも対応することが可能です。オープンソースということもあり、カスタマイズ性も高く、DBMSの中でも群を抜いて柔軟性が高いと言えるでしょう。
MySQLはマルチユーザー対応という特徴があります。マルチユーザー対応とは同時に複数人のユーザーが接続し、利用することが可能な環境を意味します。
MySQLは高性能で高可用性という特徴があります。ストレージエンジンと呼ばれるMySQL独自のエンジンを搭載していることで、アプリケーションの用途に合わせて種類を選択することができます。これのみならず「高速ロードユーティリティ」「全文インデックス」など様々な機能が用意されております。また「バックアップ機能」や「リカバリー機能」など高可用性を実現するための機能も完備されております。
MySQLは開発が容易という特徴があります。Web開発の開発効率において重要な「全文検索」「データ挿入」といった処理を高速で実現することが出来ます。これはMySQLが高性能なクエリエンジンを搭載しているため、他のDBMSと比較しても優位性があります。
MySQLの基本的なコマンドを以下の表にまとめておりますのでご覧ください。
カテゴリ | 内容 | コマンド |
起動 | MySQLを起動 | service mysqld start |
停止 | MySQLを停止 | service mysqld stop |
データベース | データベース一覧の表示 | show databases; |
データベースへの接続 | use DB名; | |
テーブル | テーブル一覧の表示 | show tables; |
テーブル詳細の表示 | desc テーブル名; | |
ユーザー | ユーザー作成 | create user ユーザー名 [identified by ‘パスワード’] |
ユーザー確認 | select host,user from mysql.user; | |
ユーザー権限確認 | show grants for ユーザー名; | |
ユーザー名変更 | rename user 変更前のユーザー名 to 変更後のユーザー名 | |
ユーザー削除 | drop user ユーザー名 |
MySQLを理解するために歴史や特徴、基本的なコマンドなどを簡単に解説させて頂きました。MySQLを一言で表すと『世界トップシェアを誇るオープンソースのリレーショナル型データベースシステム』です。MySQLの特徴として「ストレージエンジン採用」「処理能力が早い」「拡張性と柔軟性が高い」などが挙げられます。MySQLについてこの記事で記載されている最低限の内容は理解しておくようにしましょう。