ホームページ >データベース >mysql チュートリアル >MySQL データベースの最適化 (1) - MySQL エンジン
1. MySQL エンジンの種類
(1)、InnoDB
1. InnoDB の概要
InnoDB は私のデフォルトのエンジンであり、データはテーブルスペース (テーブルスペース) に保存され、ギャップロック (ネクストキー) によって防止されます。ロック)ファントム読み取り。
2. InnoDB の特徴
(1) In は内部的に多くの最適化を行っており、クラスター化インデックスに基づいてテーブルを構築しており、主キー クエリのパフォーマンスが優れています。
(2) データの読み取り時に、メモリ内にハッシュ インデックスを作成してバッファへの挿入を高速化でき、データの読み取り時に先読みが採用されます。
(3) ホット バックアップをサポートします。他のエンジンはこの機能をサポートしていません。
(2)、MyISAM
1、MyISAM の概要
MyISAM は、my5.1 より前のバージョンのデフォルト エンジンです。フルテキスト インデックス作成、圧縮、および空間関数をサポートしますが、トランザクションと行レベルのロックはサポートしません。修復操作を許容する読み取り専用データおよび小さなテーブルのアプリケーション シナリオに適しています。
2. MyISAM の特徴
(1) MyISAM ストレージは、テーブルをデータ ファイルとインデックス ファイルの 2 つのファイルに保存します。
(2) MyISAM はテーブル全体のロックをサポートしていますが、行ロックはサポートしていません。
(3) MyISAM 圧縮テーブル。変更されなくなる一部のテーブル データについては、MyISAM を使用してテーブルを圧縮し、ディスク I/O 操作を減らし、クエリ効率を向上させます。
(3)、CSV
CSV エンジンは、通常の CSV ファイルを Mysql テーブルとして処理し、データベースの実行中にファイルをコピーインおよびコピーアウトすることができます。また、Excel やその他の形式のファイルを CSV にダンプして処理することもできます。 Mysql の CSV エンジンを通じて、mysql テーブル タイプに変換します。データ交換メカニズムとしては非常に実用的です。
(4) メモリ
メモリ エンジンはすべてのデータをメモリに保存し、ディスク I/O を必要としません。保存されるデータは主にデータ処理の保存と検索のための中間データです。データは再起動時に消去されます。 Mysql の実行中に中間結果を保存するために一時テーブルが必要な場合、内部的に使用される一時テーブルは Memory テーブルです。
(5) NDB Cluster
NDB クラスター インデックスは、NDB データベースを取得した後、mysql によって開発されました。分散型、耐災害性、高可用性のデータベース インデックスをサポートします。
2. エンジン関連の操作
1. mysql エンジンの現在のバージョンを表示します
コマンド show enginses を使用します。
5.1 バージョンの mysql エンジン:
5.7 バージョンの mysql エンジン (表示可能) mysql クライアント実行コマンド経由) :
2. mysql エンジンを指定します
方法 1: my.cnf 設定ファイルを変更します
(1) mysql my.cnf 設定の場所がわからない場合ファイルが保存されている場合は、 sudo find /-name my.cnf を使用してファイル パスを探します。
(2)次のように変更します:
[mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid default-storage-engine=MyISAM
(3)service mysqld start コマンドを使用して、mysql サービスを再起動します
2 ライブラリを作成します。 / テーブルを指定する場合 Engine
CREATE TABLE mytable (id int, title char(20)) ENGINE = INNODB
ALTER TABLE mytable ENGINE = MyISAM
上記は、MySQL データベースの最適化 (1) - MySQL エンジンの内容です。さらに関連する内容については、PHP 中国語 Web サイト (www.php.cn) に注目してください。