MySQL のデフォルトのストレージ エンジンを変更する方法

MySQL のデフォルトのストレージ エンジンを変更する方法

mysql ストレージ エンジン:

MySQL サーバーはモジュール スタイルを採用しており、特にストレージ アーキテクチャでは各部分が比較的独立しています。ストレージ エンジンは、データ ストレージの管理と MySQL インデックス管理を担当します。 MySQL サーバーは、定義された API を介してストレージ エンジンと通信できます。最もよく使用されるのは MyISAM と InnoDB です。 InnoDB が Oracle に買収された後、MySQL が独自に開発した新しいストレージ エンジン Falcon が MySQL バージョン 6.0 で導入される予定です。

MyISAM エンジンは、高速なストレージと取得、および全文検索機能を提供する非トランザクション エンジンであり、データ ウェアハウスなどのクエリが頻繁に実行されるアプリケーションに適しています。 MyISAM では、テーブルは実際には 3 つのファイルとして保存されます。.frm にはテーブル定義が保存され、.MYD にはデータが保存され、.MYI にはインデックスが保存されます。

InnoDB はトランザクションをサポートするエンジンです。すべてのデータは 1 つ以上のデータ ファイルに保存され、Oracle と同様のロック メカニズムをサポートします。一般的に、OLTP アプリケーションで広く使用されています。 InnoDB 構成オプションが指定されていない場合、MySQL は MySQL データ ディレクトリに ibdata1 という名前の自動拡張データ ファイルと、ib_logfile0 および ib_logfile1 という名前の 2 つのログ ファイルを作成します。

テーブルを作成するときに、engine キーワードを使用して、使用するストレージ エンジンを指定できます。省略すると、システムのデフォルトのストレージ エンジンが使用されます: CREATE TABLE t (i INT) ENGINE = MYISAM;

システムでサポートされているストレージ エンジンの種類を表示します。

mysql> show engines;| エンジン | サポート | コメント || MyISAM | はい | 優れたパフォーマンスを備えた MySQL 3.23 以降のデフォルト エンジン | 

 | MEMORY | YES | ハッシュベース、メモリに保存、一時テーブルに便利 | 

 | InnoDB | DEFAULT | トランザクション、行レベルのロック、外部キーをサポートします | 

 | BerkeleyDB | いいえ | トランザクションとページレベルのロックをサポート | 

 | BLACKHOLE | NO | /dev/null ストレージ エンジン (書き込んだものはすべて消えます) | 

 | 例 | いいえ | ストレージ エンジンの例 | 

 | アーカイブ | はい | アーカイブ ストレージ エンジン | 

 | CSV | NO | CSV ストレージ エンジン | 

 | ndbcluster | NO | クラスター化されたフォールト トレラントなメモリベースのテーブル| 

 | FEDERATED | NO | フェデレーテッド MySQL ストレージ エンジン | 

 | MRG_MYISAM | YES | 同一の MyISAM テーブルのコレクション | 

 | ISAM | NO | 廃止されたストレージ エンジン | セット内の行数は 12 です (0.00 秒) 

標準インストール プログラムは一部のエンジンのみをサポートします。他のストレージ エンジンを使用する必要がある場合は、異なるパラメータでソース コードを再コンパイルする必要があります。 DEFAULT はシステムのデフォルトのストレージ エンジンを示します。これは、構成パラメータを変更することで変更できます。

デフォルトのストレージエンジン=MyISAM

ストレージエンジンの特定の情報を表示する

mysql> エンジン InnoDB ステータスを表示します\G;

通常、デフォルトのインストールシステムはINNODBです。

デフォルトのストレージエンジン=INNODB

1. データベース サーバーを起動するときに、コマンド ラインに --default-storage-engine または --default-table-type オプションを追加できます。

2. より柔軟な方法は、MySQL サーバーに付属する MySQL クライアントをリリースするときに使用するストレージ エンジンを指定することです。最も直接的な方法は、次のようにテーブルを作成するときにストレージ エンジンの種類を指定することです。

テーブル mytable を作成します (id int、titlechar(20)) エンジン = INNODB

テーブルのストレージ エンジンを変更するには:

ALTER TABLE engineTest ENGINE = INNODB;

デフォルトのストレージ エンジンを変更します。

MySQL 構成ファイル (Linux では /etc/my.cnf) で、mysqld の後に default-storage-engine=INNODB を追加します。

ただし、テーブルが MyISAM で作成されている場合、データベース テーブル全体のストレージ エンジンを変更するには、通常、各テーブルを 1 つずつ変更する必要があり、かなり面倒です。最初にデータベースをエクスポートし、SQL を取得して、MyISAM を INNODB に変更してからインポートすることができます。

MySQL のデフォルトのストレージ エンジンを変更する方法は以上です。これが参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • MySQLのストレージエンジンについてお話しましょう
  • MySQL InnoDBストレージエンジンについて簡単に説明します
  • MySQL ストレージエンジンの簡単な紹介
  • MySql ストレージ エンジンとインデックスに関する知識のまとめ
  • MySQL MyISAM デフォルト ストレージ エンジンの実装原則
  • MySQL 学習のまとめ: InnoDB ストレージ エンジンのアーキテクチャ設計の予備的な理解
  • MySQLでよく使われる4つのストレージエンジンについて簡単に説明します。
  • MySQL 学習 (VII): Innodb ストレージ エンジン インデックスの実装原理の詳細説明
  • MySQL ストレージエンジン InnoDB の設定と使用方法の説明
  • MySQL ストレージ エンジン MyISAM と InnoDB の違いの概要
  • MySQL共通ストレージエンジンの機能と使用方法の詳細な説明
  • MySQLは適切なストレージエンジンを選択します

<<:  スライド効果を実現するためのネイティブJavaScript

>>:  Windows および Linux で tomcat9 を介して war パッケージを手動で展開する方法

推薦する

階段を転がす特殊効果を実現する JavaScript (jQuery 実装)

皆さんもJDを使ったことがあると思います。ホームページには非常によく見られる機能があります。階段の特...

6つのレイアウトでのFrameLayoutの使用

序文前回はLinearLayoutについて説明しました。今回はFrameLayoutの使い方を説明し...

LinuxのCPU負荷とCPU使用率の詳細な説明

CPU 負荷と CPU 使用率これらは両方とも、ある程度、マシンの忙しさを反映できます。 CPU 使...

ウェブページ作成によく使われる英語フォント

アリアルArial は、多くの Microsoft アプリケーションとともに配布されるサンセリフ T...

Linuxドライバのプラットフォームバスの詳細説明

目次1. プラットフォームバスの紹介1.1. Linuxドライバの分離と階層化1.1.1. Linu...

JavaScript 関数のコンテキストのルールは何ですか?

目次1. ルール 1: Object.Method() 1.1 ケース1 1.2 ケース2 1.3 ...

JSはショッピングカート内の商品の合計金額の計算を実現します

JSはショッピングカート内の商品の合計金額を計算して参考とします。具体的な内容は以下のとおりです。質...

プロジェクトの再構築からプロジェクトにおける CSS3 カスタム変数の使用について話す

CSS3変数について変数を宣言するときは、変数名の前に 2 つのハイフン ( -- ) を追加します...

適応型ウェブページを設計および作成する方法

3G の普及により、携帯電話を使ってインターネットにアクセスする人が増えています。モバイル デバイス...

Linux コマンドラインで電卓を使用する 5 つのコマンド

みなさんこんにちは。私は梁旭です。 Linux を使用するときに、計算を行う必要がある場合があり、そ...

体験をデザインする: ボタンには何があるか

<br />最近、UCDChina は「インターフェース上のテキストに注意を払う」という...

MySQLインデックス最適化分析に関する簡単な説明

記述した SQL クエリが遅いのはなぜですか?作成したインデックスが頻繁に失敗するのはなぜですか?こ...

MySQLの高可用性アーキテクチャの詳細な説明

目次導入MySQL 高可用性マスター 1 つとバックアップ 1 つ: MySQL マスター スレーブ...

WeChatミニプログラムページ間の価値転送を実装する方法の例

ミニプログラムページ間で値を渡すみなさんこんばんは。こんばんはと言うのは、これを夜に書いたからです。...

フレックスレイアウトによるシームレスなスクロールのサンプルコード

この記事では、シームレスなスクロールを実現するためのフレックスレイアウトのサンプルコードを主に紹介し...