MySQL5.5 より前のデフォルト エンジンは「MyISAM」でしたが、MySQL5.5 以降、デフォルト エンジンは「InnoDB」です。このエンジンは ACID とトランザクションを完全にサポートし、外部キー、コミット、ロールバック、ロールフォワード操作の場合、テーブル サイズは最大 64 TB まで可能です。 MySQL では、「SHOW ENGINES;」コマンドを使用して、システムでサポートされているエンジン タイプとデフォルト エンジンを表示できます。出力結果では、DEFAULT キーワードで指定されたエンジンが現在のデフォルト ストレージ エンジンです。
このチュートリアルの動作環境: Windows7 システム、mysql8 バージョン、Dell G3 コンピューター。
データベース ストレージ エンジンは、データベースの基盤となるソフトウェア コンポーネントであり、データベース管理システムは、データ エンジンを使用して、データ操作の作成、クエリ、更新、削除を行います。つまり、ストレージ エンジンはテーブルのタイプを指します。
データベースのストレージ エンジンによって、テーブルがコンピュータにどのように保存されるかが決まります。ストレージ エンジンが異なれば、ストレージ メカニズム、インデックス作成手法、ロック レベル、その他の機能も異なります。また、異なるストレージ エンジンを使用して特定の機能を取得することもできます。
MySQL は、InnoDB、MyISAM、Memory、Merge、Archive、CSV、BLACKHOLE など、テーブル用のさまざまなストレージ エンジンを提供します。
MySQL 5.5 より前では、ストレージ エンジンを明示的に指定せずにテーブルを作成した場合、MyISAM がデフォルトのストレージ エンジンでした。バージョン 5.5 以降、MySQL はデフォルトのストレージ エンジンとして InnoDB を使用します。
SHOW ENGINES;
ステートメントを使用すると、システムでサポートされているエンジン タイプを表示できます。結果は図に示すとおりです。
サポート列の値は、特定のエンジンが使用できるかどうかを示します。YES は使用できることを意味し、NO は使用できないことを意味し、DEFAULT はエンジンが使用できることを意味しますは現在のデフォルトのストレージ エンジンです。
現在のデフォルトのストレージ エンジンは InnoDB であることがわかります。
MyISAM エンジン
MyISAM は、以前の ISAM ストレージ エンジンを拡張します。 MyISAM テーブルは、圧縮と速度に関して最適化されています。 MyISAM テーブルは、プラットフォームとオペレーティング システム間で移植可能です。
MyISAM テーブルのサイズは 256TB に達する可能性があり、これは巨大です。さらに、MyISAM テーブルを読み取り専用テーブルに圧縮して、スペースを節約できます。 MySQL は起動時に MyISAM テーブルの破損をチェックし、エラーが発生した場合にはテーブルを修復します。 MyISAM テーブルはトランザクションに対して安全ではありません。
InnoDB エンジン
InnoDB テーブルは、ACID コンプライアンスとトランザクションを完全にサポートします。パフォーマンスの点でも最良の選択です。 InnoDB テーブルは、外部キー、コミット、ロールバック、ロールフォワード操作をサポートします。 InnoDB テーブルのサイズは最大 64 TB です。
MyISAM と同様、InnoDB テーブルは、異なるプラットフォームやオペレーティング システム間で移植可能です。必要に応じて、MySQL は起動時に InnoDB テーブルをチェックして修復します。
MERGE エンジン
MERGE テーブルは、1 つのテーブル構造と同様の機能を持つ複数の MyISAM テーブルを結合した仮想テーブルです。 MERGE ストレージ エンジンは、MRG_MyISAM エンジンとも呼ばれます。 MERGE テーブルには独自のインデックスはなく、コンポーネント テーブルのインデックスが使用されます。
MERGE テーブルを使用すると、複数のテーブルを結合するときのパフォーマンスが向上します。 MySQL では、MERGE テーブルに対して SELECT、DELETE、UPDATE、INSERT 操作のみを実行できます。 DROP TABLE が MERGE テーブルに対して MERGE ステートメントを使用する場合、指定のみが削除されます。基礎となるテーブルは影響を受けません。
メモリ エンジン
メモリ テーブルはメモリに保存され、ハッシュ インデックスを使用するため、MyISAM テーブルよりも高速です。メモリ内のテーブル データのライフ サイクルは、データベース サーバーの稼働時間によって異なります。インメモリ ストレージ エンジンは、以前は HEAP と呼ばれていました。
アーカイブ エンジン
アーカイブ ストレージ エンジンを使用すると、大量のレコード (アーカイブ用) を圧縮形式で保存し、ディスク領域を節約できます。 。アーカイブ ストレージ エンジンは、挿入時にレコードを圧縮し、読み取り時に zlib ライブラリを使用してレコードを解凍します。
アーカイブ テーブルでは、INSERT ステートメントと SELECT ステートメントのみが許可されます。 ARCHIVE テーブルはインデックスをサポートしていないため、テーブルから行を読み取るにはテーブル全体のスキャンが必要です。
CSV
CSV ストレージ エンジンは、データをカンマ区切り値 (CSV) ファイル形式で保存します。 CSV テーブルは、スプレッドシート ソフトウェアなどの非 SQL アプリケーションにデータを移行する便利な方法を提供します。
CSV テーブルは NULL データ型をサポートしていません。さらに、読み取り操作にはテーブル全体のスキャンが必要です。
FEDERATED
FEDERATED ストレージ エンジンを使用すると、クラスタリングやレプリケーション テクノロジを使用せずに、リモート MySQL サーバーからのデータを管理できます。ローカルユニオンテーブルにはデータは格納されません。ローカルフェデレーテッドテーブルからデータをクエリすると、データはリモートフェデレーテッドテーブルから自動的に抽出されます。
[関連する推奨事項: mysql ビデオ チュートリアル ]
以上がmysqlのデフォルトエンジンは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

MySQLとSQLiteの主な違いは、設計コンセプトと使用法のシナリオです。1。MySQLは、大規模なアプリケーションとエンタープライズレベルのソリューションに適しており、高性能と高い並行性をサポートしています。 2。SQLiteは、モバイルアプリケーションとデスクトップソフトウェアに適しており、軽量で埋め込みやすいです。

MySQLのインデックスは、データの取得をスピードアップするために使用されるデータベーステーブル内の1つ以上の列の順序付けられた構造です。 1)インデックスは、スキャンされたデータの量を減らすことにより、クエリ速度を改善します。 2)B-Tree Indexは、バランスの取れたツリー構造を使用します。これは、範囲クエリとソートに適しています。 3)CreateIndexステートメントを使用して、createIndexidx_customer_idonorders(customer_id)などのインデックスを作成します。 4)Composite Indexesは、createIndexIDX_CUSTOMER_ORDERONORDERS(Customer_Id、Order_date)などのマルチコラムクエリを最適化できます。 5)説明を使用してクエリ計画を分析し、回避します

MySQLでトランザクションを使用すると、データの一貫性が保証されます。 1)StartTransactionを介してトランザクションを開始し、SQL操作を実行して、コミットまたはロールバックで送信します。 2)SavePointを使用してSave Pointを設定して、部分的なロールバックを許可します。 3)パフォーマンスの最適化の提案には、トランザクション時間の短縮、大規模なクエリの回避、分離レベルの使用が合理的に含まれます。

MySQLの代わりにPostgreSQLが選択されるシナリオには、1)複雑なクエリと高度なSQL関数、2)厳格なデータの整合性と酸コンプライアンス、3)高度な空間関数が必要、4)大規模なデータセットを処理するときに高いパフォーマンスが必要です。 PostgreSQLは、これらの側面でうまく機能し、複雑なデータ処理と高いデータの整合性を必要とするプロジェクトに適しています。

MySQLデータベースのセキュリティは、以下の測定を通じて達成できます。1。ユーザー許可管理:CreateUSERおよびGrantコマンドを通じてアクセス権を厳密に制御します。 2。暗号化された送信:SSL/TLSを構成して、データ送信セキュリティを確保します。 3.データベースのバックアップとリカバリ:MySQLDUMPまたはMySQLPumpを使用して、定期的にデータをバックアップします。 4.高度なセキュリティポリシー:ファイアウォールを使用してアクセスを制限し、監査ロギング操作を有効にします。 5。パフォーマンスの最適化とベストプラクティス:インデックス作成とクエリの最適化と定期的なメンテナンスを通じて、安全性とパフォーマンスの両方を考慮に入れます。

MySQLのパフォーマンスを効果的に監視する方法は? MySqladmin、ShowGlobalStatus、PerconAmonitoring and Management(PMM)、MySQL EnterpriseMonitorなどのツールを使用します。 1. mysqladminを使用して、接続の数を表示します。 2。showglobalstatusを使用して、クエリ番号を表示します。 3.PMMは、詳細なパフォーマンスデータとグラフィカルインターフェイスを提供します。 4.mysqlenterprisemonitorは、豊富な監視機能とアラームメカニズムを提供します。

MySQLとSQLServerの違いは次のとおりです。1)MySQLはオープンソースであり、Webおよび埋め込みシステムに適しています。2)SQLServerはMicrosoftの商用製品であり、エンタープライズレベルのアプリケーションに適しています。ストレージエンジン、パフォーマンスの最適化、アプリケーションシナリオの2つには大きな違いがあります。選択するときは、プロジェクトのサイズと将来のスケーラビリティを考慮する必要があります。

高可用性、高度なセキュリティ、優れた統合を必要とするエンタープライズレベルのアプリケーションシナリオでは、MySQLの代わりにSQLServerを選択する必要があります。 1)SQLServerは、高可用性や高度なセキュリティなどのエンタープライズレベルの機能を提供します。 2)VisualStudioやPowerbiなどのMicrosoftエコシステムと密接に統合されています。 3)SQLSERVERは、パフォーマンスの最適化に優れた機能を果たし、メモリが最適化されたテーブルと列ストレージインデックスをサポートします。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

メモ帳++7.3.1
使いやすく無料のコードエディター

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。
