MySQLとはどのようなものですか?MySQLは、以下のすべてに該当すると説明できます。
ソフトウェア とは、 コンピュータのプロセッサに特定の操作を実行させるための、機械が読み取れる一連の命令のことである。 アプリケーションソフトウェア とは、 ユーザーが連携した一連の機能、タスク、またはアクティビティを実行できるように設計されたコンピュータプログラムの集合体です。アプリケーションソフトウェアは単独では動作せず、システムソフトウェア(オペレーティングシステム)に依存して実行されます。 データベース管理システム(DBMS) とは、 ユーザー、他のアプリケーション、およびデータベース自体と連携してデータを取得および分析するコンピュータソフトウェアアプリケーションである。 関係データベース管理システム (RDBMS)とは、 関係モデル に基づいたデータベース管理システム(DBMS)であり、すべてのデータはタプル(属性値の順序付き集合)で表現され、関係にグループ化されます。ほとんどの関係データベースは、SQLデータ定義言語とクエリ言語を使用します。オープンソースソフトウェアとは 、 著作権者がソフトウェアの研究、変更、配布の権利を誰に対しても、いかなる目的であれ許諾するライセンスを付与した、ソースコード付きのコンピュータソフトウェアのことである。ソリューションスタック コンポーネントとは、 ソリューションスタックを構成する要素の一つであり、アプリケーションをサポートするために追加のソフトウェアを必要としない完全なプラットフォームを構築するために必要なソフトウェアサブシステムまたはコンポーネントの集合体です。アプリケーションは、このプラットフォーム上で「実行される」または「プラットフォーム上で動作する」と言われます。プラットフォームの定義の中には、システムソフトウェアと呼ばれるものと重複するものもあります。 AMPスタックの 構成要素である MySQLは、Apache-MySQL-Perl/PHP/Pythonソリューションスタック(ちなみに、これらのソリューションスタックはすべてのコンピュータプラットフォームで利用可能です)の「M」コンポーネントです。AMPソフトウェアバンドルは、動的なWebサイトやサーバーを実行するために使用されます。PHP、Perl、C、C++、Javaなどをサポートしています。 LAMP の構成要素– AMPのLinux版WAMP のコンポーネント– AMPのWindows版
所有権と著作権
オーナー 元の所有者:MySQL AB – 1995年に設立された旧ソフトウェア会社。2008年にサン・マイクロシステムズに買収され、その後サンは2010年にオラクル・コーポレーションに買収された。 現在の所有者:オラクル・コーポレーション – 米国カリフォルニア州レッドウッドシティに本社を置く多国籍コンピュータ技術企業。同社はコンピュータハードウェアシステムおよびエンタープライズソフトウェア製品、特に自社ブランドのデータベース管理システムの開発と販売を専門としている。
ライセンス GNU一般公衆利用許諾契約書 ( GPL)は、最も広く利用されているフリーソフトウェアライセンスであり、エンドユーザー(個人、組織、企業)にソフトウェアの使用、研究、共有(複製)、および改変の自由を保証します。これらの権利を認めるソフトウェアはフリーソフトウェアと呼ばれ、コピーレフトソフトウェアの場合は、これらの権利を保持する必要があります。GPLは、これらの権利の保持を要求します。
MySQLストレージエンジン MySQLストレージエンジン – ストレージエンジン(またはデータベースエンジン)は、データベース管理システム(DBMS)がデータベースからデータを作成、読み取り、更新、削除(CRUD)するために使用する基盤となるソフトウェアコンポーネントです。ほとんどのデータベース管理システムには、ユーザーがDBMSのユーザーインターフェースを経由せずに基盤となるエンジンとやり取りできる独自のアプリケーションプログラミングインターフェース (API)が含まれています。MySQLストレージエンジンには、次のものがあります。 Ariaは 、MariaDBおよびMySQLリレーショナルデータベース管理システム向けのストレージエンジンです。その目標は、MyISAMに代わるクラッシュセーフな代替手段を提供することです。現時点ではトランザクションには対応していませんが、将来的にはデータベーストランザクションの適切なサポートを追加する予定です。長期的な目標は、AriaをMariaDBのデフォルトのトランザクションおよび非トランザクションストレージエンジンにすることです。Berkeley DBは 、キー/バリューデータ用の高性能組み込みデータベースを提供するソフトウェアライブラリです。Berkeley DBはC言語で記述されており、C++、C#、PHP、Java、Perl、Python、Ruby、Tcl、Smalltalkなど、多くのプログラミング言語に対応したAPIバインディングが用意されています。バージョン5.1より前は、MySQLにBDBデータストレージバックエンドが組み込まれていました。ブリッツDB – CassandraSE – CONNECT(ストレージエンジン) – Falconは [ 9 ] MySQL リレーショナル データベース管理システム 向けに開発されていたトランザクションストレージ エンジン でした。Oracle が MySQL を買収した後、 開発は中止されました。[ 10 ] Netfrastructure データベース エンジンを ベースにしていました。Falcon は Sun のzfs ファイルシステムを活用するように設計されていました。フェデレーテッドX – InfiniDBは 、分析アプリケーション向けのスケーラブルなソフトウェアのみの列指向データベース管理システムです[ 11 ] 。[ 12 ] しかし、2014年10月1日にInfiniDBは事業を停止し、テキサス州東部地区の米国破産裁判所に破産保護を申請しました。既存の顧客は、MariaDBなどの他の企業からサポートを受けることができる可能性があります。InnoDBは MySQL用のストレージエンジンです。MySQL 5.5以降ではデフォルトで使用されます。標準的なACID準拠のトランザクション機能に加え、外部キーのサポート(宣言型参照整合性)も提供します。ムルンガ – MyISAMは 、MySQLリレーショナルデータベース管理システムのバージョン5.5より前のバージョンにおけるデフォルトのストレージエンジンです。古いISAMコードをベースにしていますが、多くの便利な拡張機能が備わっています。MySQL Archive – この分析用ストレージエンジンを使用すると、「アーカイブ」専用のテーブルを作成できます。このテーブルからはデータを削除できず、追加のみ可能です。MySQL Cluster – MySQLデータベース管理システムに共有なしクラスタリングと自動シャーディングを提供するテクノロジー。低レイテンシで高可用性と高スループットを提供するように設計されており、ほぼ線形のスケーラビリティを実現します。[2] MySQL Clusterは、MySQL用のNDBまたはNDBCLUSTERストレージエンジン(「NDB」はNetwork Databaseの略)を介して実装されます。MySQL Federatedは 、ユーザーが外部(リモート)テーブルのローカル表現となるテーブルを作成できるようにする機能です。MySQLクライアントライブラリAPIをデータ転送に利用し、リモートデータソースを、MYDファイル(MyISAM)、メモリ(Cluster、Heap)、テーブルスペース(InnoDB)など、他のストレージエンジンがローカルデータソースを扱うのと同様の方法で扱います。 NDB Clusterは、行テーブルを格納するためのストレージエンジン です 。NDB Clusterは、MySQLサーバー、Memcached、JavaScript/Node.js、Java、JPA、HTTP/RESTなど、様々な種類のAPIプロセスからのアクセスを同時にサポートできます。すべてのAPIプロセスは、NDB Clusterに格納されている同じテーブルとデータに対して操作を実行できます。 順序 - SphinxSE – TokuDBは 、MySQLおよびMariaDB向けのオープンソースの高性能ストレージエンジンです。フラクタルツリーインデックスを使用することで、この性能を実現しています。スケーラブルでACIDおよびMVCCに準拠したストレージエンジンであり、インデックスベースのクエリ改善、オンラインスキーマ変更機能、ハードディスクドライブとフラッシュメモリの両方におけるスレーブラグの低減を提供します。WiredTiger – XtraDBは 、MariaDBおよびPercona Serverデータベース用のストレージエンジンであり、MySQLデータベースでデフォルトで利用可能なエンジンの1つであるInnoDBの代替としてそのまま使用できるように設計されています。MySQLデータベースエンジンの比較 – MySQLデータベース管理システム(DBMS)で使用可能なデータベースエンジンの比較。データベースエンジン(または「ストレージエンジン」)は、DBMSがデータベースからデータを作成、読み取り、更新、削除(CRUD)するために使用する基盤となるソフトウェアコンポーネントです。
MySQLを含むソフトウェアスタック LAMP とは、 Linuxオペレーティングシステム、Apache HTTPサーバー、MySQLリレーショナルデータベース管理システム(RDBMS)、およびPHPプログラミング言語を含むソリューションスタックです。LAMPは、動的なWebサイトやWebアプリケーションの構築に適しています。WAMP – MS Windows、Apache HTTP Server、MySQL、およびPHP。
参考文献 ↑ 「SQLite の著名なユーザー」。SQLite コンソーシアム。2013年 10 月 8 日 取得 。Appleは、Apple Mail、Safari、Aperture など、Mac OS X 内の多くの機能で SQLite を使用しています。Apple は、iPhone、iPod touch、iTunes ソフトウェアで SQLite を使用しています。… SQLite は、Firefox Web ブラウザと Mozilla の Thunderbird メール リーダーの主要なメタデータ ストレージ フォーマットです。… Google は、Mac 用デスクトップ、Google Gears、Android 携帯電話オペレーティングシステム、Google Chrome Web ブラウザで SQLite を使用していることが知られています。 ↑ Koetsier, John (2013年8月1日) 「Androidが市場シェア80%の大台に達、Windows Phoneが世界最高を記録、iPhoneは低迷」 MobileBeat . VentureBeat . 2013年 10月8日 閲覧 . 調査会社Strategy Analyticsの新しいレポートによると、2013年第2四半期の世界のスマートフォン出荷台数は47%増加し、2億3000万台に達した。Androidは市場シェア80%という記録的なシェアを獲得したが、iOSは14%という新たな最低水準に達した。 ↑ 「DB-Enginesランキング」 。 2023年8月17日に オリジナルからアーカイブ済み 。 2015年 2月12日 に取得。 ↑ 「MySQL | 世界で最も人気のあるオープンソースデータベース」 。 ↑ 「MySQLの歴史」 . MySQL 10.0 リファレンスマニュアル . MySQL AB . 2011年 8月26日 取得 。 ↑ 「HeidiSQLグリッド編集機能 」 ↑ 「LibreOffice Base」 。 2012年1月7日に オリジナル からアーカイブ済み 。 2012年 1月5日 に取得。 ↑ 「ダウンロード統計: phpMyAdmin 」 ↑ http://www.eweek.com/c/a/Database/Oracle-Discusses-MySQL-Database-Plans-854185/ ↑ 「OracleがInnoDBでMySQLにコミット」 。2010年4月13日。 ↑ 「InfiniDB 2.0はビッグデータと分析をサポートします」 。 ↑ 「カルポントのInfiniDB – 新たなADBMSの反逆者が登場」 。2010年11月8日。 ↑ 「 MySQL フォークのDrizzleが一般公開される」 。ZDNet 。 ↑ 「死にゆくデータベース:MySQLの開発者が語る未来はMariaDBのもの - MariaDB、オープンソース、mysql、Oracle」 Computerworld 。 2013年9月11日 取得 。 ↑ Percona Server のよくある質問 ( 2015 年 4 月 15 日にWayback Machine に アーカイブ)、他の MySQL フォークとはどのように関連していますか?
外部リンク MySQL 5.6 リファレンスマニュアル 公式サイト Oracle.comのMySQLサイト MySQL共同創業者、デビッド・アクスマーク氏へのインタビュー動画