MySQL

出典: フリー百科事典『ウィキペディア(Wikipedia)』

<tr><th>開発元:</th><td>MySQL AB</td></tr> <tr><th>最新版:</th><td>5.0.37(Community) / 2007年3月8日</td></tr><tr><th>対応OS:</th><td>クロスプラットフォーム</td></tr>
MySQL
種別: RDBMS

<tr><th>ライセンス:</th><td>GPL または Commercial License</td></tr>

公式サイト www.mysql.com

MySQLマイエスキューエル)は、RDBMSリレーショナルデータベースを管理、運用するためのシステム)の実装の一つである。オープンソースで開発されており、GNU GPLと商用ライセンスのデュアルライセンスとなっている。

他の多くのオープンソースプロジェクトと異なり、MySQLはスウェーデンの単一の営利企業「MySQL AB」によって保持されている。またトレードマークおよび著作権もこの企業が所有。

目次

[編集] 概要

世界で最も有名なオープンソース・データベースとして知られている。 他のフリーRDBMSと比較して高速性に定評があり、特に更新よりも参照の頻度の高いアプリケーションに向くとされている。具体的にはWebアプリケーションの多くが該当する。データストレージエンジンはSQLエンジンとは分離独立しており、用途に応じた機能を持つストレージエンジンを選択できる「マルチストレージエンジン」方式となっている。

[編集] トランザクション

MyISAMでは、トランザクションをサポートしていない。 バージョン3.23.34以降で組み込まれているInnoDBは、オープンソースソフトウェア企業のInnobase社が開発したストレージエンジンであり、トランザクションをサポートしている。 InnoDBはメディア障害時の更新ログによるリカバリもサポートしている。 ただし、トランザクションの概念がなかったMyISAMベースのテーブルを検索する場合の高速性は、InnoDBの場合は簡単に即座に得ることはできなく、チューニングが必要である。 ただし、MySQL 5.0 では、InnoDBの方が、MyISAMよりも読み込みが速いことも多い。

[編集] その他の機能

副次問い合わせ(サブクエリ)は、バージョン4.1以降でサポートされている。

バージョン5.0以降では、SQL99にストアドプロシージャビュー、トリガーが実装され、機能の面でも他のRDBMSに追いつきつつある。

その他、標準でマスタスレーブ方式のレプリケーション機能を備えており、堅牢なデータストレージの構築が比較的容易である。

[編集] 普及

世界的にはこのMySQLとFirebirdの方がPostgreSQLよりも多く使用されており、ウェブサイトの構築に用いるソフトウェア環境として、LAMP (Linux, Apache, MySQL, PHP) の略称が知られている。Yahoo!などの巨大なウェブサイトでの適用例も多く、WebアプリケーションのXOOPSも利用している。また、ウィキペディアのためのソフトウェアであるMediaWikiでもこのソフトウェアを使用している。他にも、社内用WebアプリケーションのサイボウズもMySQLへの乗り換えを決めている。

世界的な傾向に反し、日本でPostgreSQLの適用例がMySQLを上回っている。2003年の時点で、オープンソース系のデータベースとして、日本では8割以上がPostgreSQLである。

その理由として、以下の理由が指摘されている。

  • 欧米において、MySQLの広報が積極的であった
  • MySQLの日本ユーザ会の立ち上げが遅れた
  • PHP4徹底攻略(通称マンモス本)がPostgreSQLとの接続を想定して記述されていた
  • Javaを開発する、Sun Microsystemsが MySQL よりも PostgreSQL を推している
  • かつてのMySQLでUnicodeのサポートが不十分であった
  • アプリケーションの頒布形態によってはGPLではなく商用ライセンスを選択しなければならないケースがある

ただし、商用ライセンスを取得するコストはOracleの10分の1に満たない上、GPLと商用ライセンスの2本立ては日本固有の事情ではない。 MySQL -- ライセンス早分かり

[編集] プラットフォーム

MySQLは以下のような多くのプラットフォームでサポートされている。しかし、MySQLはUnix系プラットフォーム上でもっとも実力が発揮できる実装になっているため、なるべくUnix系プラットフォームでの利用が推奨されている。特に、MS Windows系の実装はDBアプリケーション開発者が利用する分には十分であるが、実際に運用を行うには安定していない。

[編集] 開発言語

C, C++, Eiffel, Smalltalk, Java(JNI), Lisp, Perl, PHP, Python, Ruby, TclはMySQLのAPIを介してデータベースへアクセスできる。またODBCインターフェース (MyODBC) もサポートされている。MySQL自体はC言語およびC++言語で開発されている。 埋め込みSQLによる開発はサポートされていない。

[編集] 関連項目

[編集] リンク

ことばこって?

「ことばこ」は、歴史の人物から最先端テクノロジーまで、なんでも調べられるオンライン百科事典です。ウィキペディア財団が運営を行なっているwikipedia.orgから引用をしています。

おススメサイト
トラブログ
アレどう?
アフィリエイトB