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 の質問の完全なリスト

目次1. 手書きのインスタンス2.配列のマップメソッドを実装する3. Reduceは配列のmapメソ...

CSSプリコンパイル言語とその違いの詳細な説明

1. 何ですか マークアップ言語として、CSSは比較的シンプルな構文とユーザーに対する要件が低いが、...

onfocus="this.blur()" は視覚障害のあるウェブマスターに嫌われている

スクリーン リーダー ソフトウェアの操作ページについて話しているとき、彼はフロントエンドの学生たちに...

insert と select を組み合わせて、「データベース内のフィールドの最大値 + 1 を挿入する」メソッドを実装する

この記事はmysqlデータベースです質問 1 表 1 のデータを表 2 にインポートします。表 1 ...

MySQL データベースの Binlog 使用法の概要 (必読)

MySQL データベースにとって binlog バイナリ ログがどれほど重要であるかについては詳し...

Dockerコンテナ間の通信と外部ネットワーク通信の操作

コンテナ間の通信1. コンテナのネットワーク共有このモードの Docker コンテナはネットワーク ...

CSSアニメーション属性キーフレームの詳細な説明

コラムを更新してからどれくらい経ったでしょうか?半年ですか?今年の後半は、まさに離陸、つまり文字通り...

Xtrabackup を使用して MySQL をバックアップおよび復元する方法

目次1. バックアップ1.1 万全の準備1.2 追加の準備2 バックアップとリカバリ2.1 データの...

JSにおける4つのデータ型判定方法

目次1. 型2. インスタンス3. コンストラクター4.toString() この記事では、4 つの...

CSSインジェクションの知識の要約

最近のブラウザでは、CSS 内で JavaScript を実行することはできなくなりました。以前は、...

jsはシンプルな計算機を実装します

参考までに、ネイティブjsを使用して簡単な計算機(詳細なコメント付き)を実装します。具体的な内容は次...

iOS、Android、ミニプログラムアプリの敷居の低い開発のためのフロントエンドフレームワークを詳しく解説

現在、クロスプラットフォーム開発技術はもはや新しい話題ではありません。市場にはいくつかのオープンソー...

Vue サーバーに js 構成ファイルをインポートする方法

目次背景成し遂げるvue-cli2.0での設定方法の補足要約する背景プロジェクトにはローカル構成ファ...

クリックして認証コードと認証を切り替えるJavaScript

この記事では、クリックして切り替える認証コードと認証を実装するためのJavaScriptの具体的なコ...

一般的なMysql DDL操作の概要

図書館管理ライブラリを作成する データベースを作成します [存在しない場合] ライブラリ名;ライブラ...