クエリ方法: 1. "SHOW TABLE STATUS FROM `database name`;" ステートメントを使用して、指定したデータベース内のすべてのテーブルに関する情報 (テーブル タイプを含む) を一覧表示します。 2. "SHOW CREATE TABLE `データ テーブル" を使用します。 `;" ステートメントは、テーブル タイプを含む、指定されたデータ テーブルの情報をリストできます。
このチュートリアルの動作環境: Windows7 システム、mysql8 バージョン、Dell G3 コンピューター。
MySQL データ テーブルは主に、BDB、HEAP、ISAM、MERGE、MYISAM、および InnoBDB の 6 つのタイプをサポートします。
これらの 6 つのタイプは 2 つのカテゴリに分類され、1 つは BDB と InnoDB を含む「トランザクション セーフ」(トランザクション セーフ) で、その他は「非トランザクション セーフ」と呼ばれる 2 番目のカテゴリに属します (トランザクションセーフではありません)。
BDB 正式名は「Brekeley DB」です。これは、Sleepycat Software (http://www.sleepycat.com) によって開発された、Mysql の最初のトランザクション対応テーブル タイプです。一連のコマンドがすべて正常に実行されること、またはコマンドでエラーが発生した場合にすべてのコマンドの結果がロールバックされることを保証するトランザクション制御機能機能を提供します。銀行業。 COMMIT、ROLLBACK、その他のトランザクション機能をサポートします。 Mysql の最新バージョンでは、BDB のサポートを削除し、InnoDB の開発に重点を置く予定です。
InnoDB は、トランザクション処理アプリケーション用の新しいトランザクションセーフ ストレージ エンジンであり、BDB のほぼすべての機能をサポートし、ACID トランザクションのサポートを含む多くの新機能を備えています。
機能:
トランザクション処理メカニズム
外部リンクのサポート
クラッシュ後すぐに復元可能
外部キー機能、カスケード削除をサポート
同時実行機能をサポート
ハードディスク上の保存方法: InnoBDB frm
Mysql の最新バージョンでは、BDB のサポートを削除し、代わりに InnoDB を完全に開発する予定です。 InnoDB は Mysql の機能サポートが向上しており、開発コミュニティも活発です。
MyISAM デフォルトの MySQL プラグイン ストレージ エンジン。ISAM タイプに基づいていますが、多くの便利な拡張機能が追加されています。Web、データ ウェアハウジング、およびその他のアプリケーションで最もよく使用されます。環境で使用されるストレージ エンジンの 1 つ。 MySQL サーバーのデフォルトのストレージ エンジンは、STORAGE_ENGINE 構成変数を変更することで簡単に変更できることに注意してください。
利点:
1. ISAM テーブルよりも小さく、占有リソースが少ない
2. 異なるプラットフォーム間でバイナリ ファイルとして使用可能移行テーブルのタイプは、テーブルの作成時に指定されます。
ISAM は、MyISAM タイプが登場する前に MySQL テーブルで使用されていたデフォルトのタイプであり、現在は MyISAM に置き換えられています。
Memory (HEAP) は、MySQL テーブルの中で最も高速にアクセスされるテーブルで、すべてのデータを RAM に保存し、参照やその他の同様のデータをすばやく検索するために使用できます。環境に優れ、非常に高速なアクセスを提供します。このタイプのデータは永続的に設計されていないことに注意してください。通常は一時テーブルに適しています。MySQL またはサーバーがクラッシュすると、テーブル内のすべてのデータが失われます。
Merge は、注目に値する新しいタイプのテーブルです。MyISAM テーブルのセットで構成されています。マージは、検索速度と修復を向上させることができるため、主にパフォーマンスを考慮して行われます。効率、ディスク容量を節約します。 MySQL DBA または開発者は、一連の同等の MyISAM テーブルを論理的にグループ化し、それらを 1 つのオブジェクトとして参照できるようになります。データ ウェアハウジングなどの VLDB 環境に非常に適しています。場合によっては、MRG_MYISAM という名前で表示されます。
Archive めったに参照されない大量の履歴情報、アーカイブ情報、またはセキュリティ監査情報の保存と取得に最適なソリューションを提供します。
Federated 複数の個別の MySQL サーバーをリンクして、複数の物理サーバーから論理データベースを作成できます。分散環境やデータマート環境に非常に適しています。
NDBCluster/Cluster/NDB MySQL のクラスター化データベース エンジンは、最高の稼働時間と可用性も必要とする、高パフォーマンスの検索要件を持つアプリケーションに特に適しています。
CSV 標準の CSV 形式、カンマ区切りのテキスト ファイルを使用し、外部データ交換に適合します。
Blackhole データは受け入れられますが、保存されません。取得リクエストに対しては空のセットが返されます。一般に、データが自動的にコピーされ、ローカルに保存されない分散データベース設計に適しています。 (未確認) アプリケーションのデータベースへの入力を一時的に抑制/無視することもできるようです。
例 これはテスト エンジンです。このようなテーブルを作成できますが、データの書き込みやデータの取得はできません。 MySql開発者向けのサンプルエンジンのようです。
#テーブル タイプを操作および表示するためのコマンド構文は次のとおりです。
-- -- 创建表时指定表类型的方法 CREATE TABLE `message` ( `id` int(11) NOT NULL auto_increment, `sender` varchar(255) default NULL, `receiver` varchar(255) default NULL, `content` text, `is_read` char(1) default 'N', `send_time` datetime default NULL, `del_flag` tinyint(4) default '0', PRIMARY KEY (`id`) ) ENGINE=MYISAM; -- 也可以创建后更改: ALTER TABLE `message` ENGINE = INNODB;
テーブル タイプの表示
-- 查看表类型(存储引擎) SHOW TABLE STATUS FROM `test`;
方法2:
-- 查看表类型(存储引擎)2 SHOW CREATE TABLE `message`;
结果为表message创建时的信息,其中有TYPE或ENGINE一项,指定了表的类型(存储引擎)。
注意:老版本的MySQL使用 TYPE而不是ENGINE(例如,TYPE = MYISAM)。MySQL 5.1为向下兼容而支持这个语法,但TYPE现在被轻视,而ENGINE 是首先的用法。 一般地,ENGINE选项是不必要的;除非默认已经被改变了,MyISAM是默认存储引擎。
【相关推荐:mysql视频教程】
以上がmysqlでテーブルタイプをクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。