MySQL
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/04/25 17:38 UTC 版)
現在のロゴ | |
開発元 | オラクル(サン・マイクロシステムズ) |
---|---|
初版 | 1995年5月23日 |
最新版 | 8.3.0 - 2024年1月16日[1] [±] |
リポジトリ | |
プログラミング 言語 | C, C++ |
対応OS | クロスプラットフォーム |
種別 | RDBMS |
ライセンス | GPL v2 または Commercial License |
公式サイト |
www.mysql.com/jp/ dev.mysql.com |
MySQLは、GNU General Public Licenseの条件に基づいたフリーでオープンソースのソフトウェアであり、さまざまなプロプライエタリライセンスでも利用可能である。MySQLは、サン・マイクロシステムズ(現在のオラクル)に買収されたスウェーデンの企業MySQL ABが所有、出資していた。2010年にオラクルがサンを買収したとき、ウィデニウスはオープンソースのMySQLプロジェクトをフォークしてMariaDBを作った。
MySQLは、LAMP Webアプリケーションソフトウェアスタック(LAMPは、Linux、Apache、MySQL、Perl/PHP/Pythonの頭字語)のコンポーネントである。MySQLは、Drupal、Joomla、phpBB、WordPressなど、多くのデータベース駆動型Webアプリケーションで使用されている。MySQLは、Facebook、Flickr、MediaWiki、Twitter、YouTubeなど[2][3]、多くの人気Webサイトでも使用されている。
概要
MySQLはCとC++で書かれている。SQLパーサーはyaccで書かれている(実際のコンパイルにはBisonが使われる)が、字句解析にはLexは使わず自家製の字句解析器を使用している。MySQLは、AIX、BSDi、FreeBSD、HP-UX、eComStation、i5/OS、IRIX、Linux、macOS、Microsoft Windows、NetBSD、Novell NetWare、OpenBSD、OpenSolaris、OS/2Warp、QNX、Symbian、SunOS、SCO OpenServer、SCO UnixWare、Sanos、Tru64など、多くのシステムプラットフォームで動作する。OpenVMSへのMySQLのポートも存在する。
MySQLサーバーソフトウェアとクライアントライブラリは、デュアルライセンス配布を使用している。これらはGPLバージョン2、またはプロプライエタリなライセンスで提供されている。
公式マニュアル[4]からサポートを得ることができる。また、別のIRCチャネルやフォーラムでも無償サポートが提供されている。オラクルはMySQL Enterprise製品を通じて有償サポートを提供している。それらはサービスの範囲や価格がそれぞれ違っている。さらに、MariaDBやPercona (en:Percona) など、サポートやサービスを提供するサードパーティ組織も多数存在する。
MySQLは肯定的なレビューを受けており、レビュー担当者はMySQLが「平均的なケースでは非常によく機能」し、「開発者向けのインターフェイスがあり、ドキュメント(Webサイトなどを通じた現実世界でのフィードバックは言うまでもなく)も非常に良い。」ことに気付いた。また、「高速で安定した真のマルチユーザ、マルチスレッドのSQLデータベースサーバ」としてもテストされている。
特徴
MySQLは、オープンソースのMySQL Community ServerとプロプライエタリのEnterprise Serverの2つの異なるエディションで提供される。[5] MySQL Enterprise Serverは、サーバープラグインとしてインストールされる一連の独自の拡張機能によって差別化されているが、それ以外は同じバージョン番号付けシステムを共有し、同じコードベースから構築される。
MySQL 5.6で利用可能な主な機能:
- ANSI SQL 99の広範なサブセットと拡張機能
- クロスプラットフォームのサポート
- SQL / PSMに厳密に従う手続き言語を使用するストアドプロシージャ [6]
- トリガー
- カーソル
- 更新可能なビュー
- InnoDBストレージエンジンを使用する場合のオンラインデータ定義言語 (DDL)。
- 情報スキーマ
- 監視目的でサーバーの実行とクエリのパフォーマンスに関する統計を収集および集約するパフォーマンススキーマ。[7]
- 実行時の動作を制御するための一連のSQLモードオプション。SQL標準に準拠するための厳密モードが含まれる。
- X / Open XA 分散トランザクション処理 (DTP) サポート。この一環として、デフォルトのInnoDBストレージエンジンを使用した2フェーズコミット
- デフォルトのInnoDB Storage Engineを使用する場合のセーブポイントを持つトランザクション。NDB Cluster Storage Engineはトランザクションもサポートする。
- InnoDBおよびNDB Cluster Storage Engineを使用する場合のACIDコンプライアンス[8]
- SSLサポート
- クエリキャッシング
- サブSELECT(ネストされたSELECT)
- ビルトインされたレプリケーションサポート
- 全文索引付けおよび検索[注 1]
- 組み込みデータベースライブラリ
- Unicodeサポート[注 2]
- オプティマイザーでパーティションをプルーニングしたパーティションテーブル
- MySQL Clusterによる非共有クラスタリング
- 複数のストレージエンジン。アプリケーションの各テーブルに最も効果的なストレージエンジンを選択できる[注 3]。
- ネイティブストレージエンジンInnoDB、MyISAM、マージ、メモリ(ヒープ)、フェデレーション、アーカイブ、CSV、ブラックホール、NDBクラスター。
- グループ化をコミットし、複数の接続から複数のトランザクションを収集して、1秒あたりのコミット数を増やす。
開発者は、約3か月ごとにMySQL Serverのマイナーアップデートをリリースする。ソースは、両方ともGPLライセンスの下で、MySQLのWebサイトまたはMySQLのGitHubリポジトリから取得できる。
- ^ Initially, it was a MyISAM-only feature; supported by InnoDB since the release of MySQL 5.6.
- ^ Prior to MySQL 5.5.3, UTF-8 and UCS-2 encoded strings are limited to the BMP; MySQL 5.5.3 and later use utf8mb4 for full Unicode support.
- ^ In MySQL 5.0, storage engines must be compiled in; since MySQL 5.1, storage engines can be dynamically loaded at run time.
- ^ なお、ウィキペディア自体はMySQLからフォークしたMariaDBの利用へと移行している。
- ^ MySQL :: MySQL Workbench
- ^ phpMyBackupPro - the MySQL backup tool :: Features
- ^ Navicat for MySQL | MySQLに対応したDB管理・開発ツール
- ^ MySQL :: MySQL Workbench: Administration
- ^ Home - Nucleon Software
- ^ Sequel Pro
- ^ Adminer - Database management in a single PHP file
- ^ “Changes in MySQL 8.3.0 (2024-01-16, Innovation Release)” (英語). MySQL 8.3.0 Release Notes. MySQL.com. 2024年3月14日閲覧。
- ^ “Slide 1”. Oracle. 2024年3月6日閲覧。
- ^ “MySQL”. www.mysql.com. 2024年3月5日閲覧。
- ^ “MySQL 8.0 リファレンスマニュアル”. MySQL. 2022年7月3日閲覧。
- ^ “Which Should I Use: MySQL Enterprise or MySQL Community Server?”. MySQL AB. 2009年4月9日時点のオリジナルよりアーカイブ。2009年4月8日閲覧。
- ^ Guy Harrison; Steven Feuerstein (2008). MySQL Stored Procedure Programming. O'Reilly Media. p. 49. ISBN 978-0-596-10089-6
- ^ “Monitoring RDS MySQL performance metrics”. Datadog (2015年10月20日). 2015年12月14日閲覧。
- ^ “MySQL :: InnoDB 1.1 for MySQL 5.5 User's Guide :: C InnoDB Glossary :: ACID”. 2010年12月25日時点のオリジナルよりアーカイブ。2011年1月5日閲覧。
- ^ “Replication”. MySQL. 2020年5月2日閲覧。
- ^ “MariaDB Replication”. MariaDB KnowledgeBase. 2019年3月9日閲覧。
- ^ “MySQL :: MySQL 5.7 Reference Manual :: 16.1.4 MySQL Multi-Source Replication”. dev.mysql.com. 2019年3月9日閲覧。
- ^ “MySQL :: MySQL 5.7 Reference Manual :: 16.3.9 Semisynchronous Replication”. dev.mysql.com. 2019年3月9日閲覧。
- ^ “Semisynchronous Replication”. MariaDB KnowledgeBase. 2019年3月9日閲覧。
- ^ “MySQL Cluster Replication: Multi-Master and Circular Replication”. MySQL. 2020年5月2日閲覧。
- ^ “MySQL University: MySQL Galera Multi-Master Replication”. Oracle Corporation. 2020年5月2日閲覧。
- ^ “MySQL :: MySQL 8.0 Reference Manual :: 18 Group Replication”. dev.mysql.com. 2019年3月9日閲覧。
- ^ “MySQL :: MySQL 8.0 Reference Manual :: 18 Group Replication”. dev.mysql.com. 2019年3月9日閲覧。
- ^ DB-Engines Ranking - popularity ranking of database management systems
- ^ http://www-jp.mysql.com/why-mysql/marketshare/
- ^ a b オープンソフトウェア:第2回オープンソースソフトウェア活用ビジネス実態調査:IPA 独立行政法人 情報処理推進機構
- ^ 451 Group survey highlights user concerns over Oracle's proposed ownership of MySQL
- ^ MySQLのライセンスポリシー
- ^ FOSS License Exception
- ^ MySQL Editions
- ^ 1.5. What Is New in MySQL 5.5
- ^ Oracle>About>Press Room>Oracle Announces General Availability of MySQL 5.6
- ^ Oracle Japan>Media centre home>ニュースリリース>MySQL5.6の一般提供開始を発表
- ^ MySQL 8.0: New Features in Replication
- ^ http://ossipedia.ipa.go.jp/doc/201
- ^ SQL ServerとOSSが勢力拡大の兆し――DBMS市場:ITmedia リサーチインタラクティブ 第6回調査 - ITmedia エンタープライズ
- ^ Supported Platforms: MySQL Database
- ^ Open ESQL
固有名詞の分類
- MySQLのページへのリンク