MySQLでMyISAMストレージエンジンをInnodbに変更した操作記録のまとめ

MySQLでMyISAMストレージエンジンをInnodbに変更した操作記録のまとめ

一般的に、MySQL はデフォルトでさまざまなストレージ エンジンを提供しており、次のように表示されます。

1) MySQL に InnoDB プラグインがインストールされているかどうかを確認します。

以下のコマンド結果から、innodb プラグインがインストールされていることがわかります。

mysql> プラグインを表示します。 
+------------+--------+----------------+----------+---------+ 
| 名前 | ステータス | タイプ | ライブラリ | ライセンス | 
+------------+--------+----------------+----------+---------+ 
| binlog | アクティブ | ストレージ エンジン | NULL | GPL | 
| パーティション | アクティブ | ストレージ エンジン | NULL | GPL | 
| CSV | アクティブ | ストレージ エンジン | NULL | GPL | 
| メモリ | アクティブ | ストレージ エンジン | NULL | GPL | 
| InnoDB | アクティブ | ストレージ エンジン | NULL | GPL | 
| MyISAM | アクティブ | ストレージ エンジン | NULL | GPL | 
| MRG_MYISAM | アクティブ | ストレージ エンジン | NULL | GPL | 
+------------+--------+----------------+----------+---------+ 
セット内の行数は 7 です (0.00 秒)

----------------------------------------------------------------------
innodb プラグインがインストールされていない場合は、次のステートメントを実行してインストールできます。
mysql>プラグイン innodb soname 'ha_innodb.so' をインストールします。
----------------------------------------------------------------------

2) MySQL が現在提供しているストレージ エンジンを確認します。

mysql> エンジンを表示します。 
+------------+---------+----------------------------------------------------------+--------------+------+------------+ 
| エンジン | サポート | コメント | トランザクション | XA | セーブポイント | 
+------------+---------+----------------------------------------------------------+--------------+------+------------+ 
| MRG_MYISAM | YES | 同一の MyISAM テーブルのコレクション | NO | NO | NO | 
| CSV | はい | CSV ストレージ エンジン | いいえ | いいえ | いいえ | 
| MyISAM | DEFAULT | 優れたパフォーマンスを備えた MySQL 3.23 以降のデフォルト エンジン | NO | NO | NO | 
| InnoDB | はい | トランザクション、行レベルのロック、外部キーをサポートします | はい | はい | はい | 
| メモリ | はい | ハッシュベース、メモリに保存、一時テーブルに便利 | いいえ | いいえ | いいえ | 
+------------+---------+----------------------------------------------------------+--------------+------+------------+ 
セット内の行数は 5 です (0.00 秒)

3) MySQL の現在のデフォルトのストレージ エンジンを表示します。

mysql> '%storage_engine%' のような変数を表示します。 
+----------------+--------+ 
| 変数名 | 値 | 
+----------------+--------+ 
| ストレージ エンジン | MyISAM | 
+----------------+--------+ 
セット内の 1 行 (0.00 秒) 

4) テーブルが使用しているエンジンを確認します (表示された結果の engine の後のパラメータは、テーブルで現在使用されているストレージ エンジンを示します)。

mysql> show create table テーブル名;

mysql> show テーブル wx_share_log を作成します。 
+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
| テーブル | テーブルの作成 | 
+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
| wx_share_log | テーブル `wx_share_log` を作成します ( 
 `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'WeChat共有ログ自動増分ID', 
 `reference_id` int(11) NOT NULL COMMENT '推奨ブローカーID', 
 `create_time` datetime NOT NULL COMMENT '作成時刻', 
 主キー (`id`) 
) ENGINE=MyISAM AUTO_INCREMENT=13 デフォルト CHARSET=utf8 | 
+--------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
セット内の 1 行 (0.00 秒) 

5) MyISAM データベースを INNODB エンジン形式にインポートする方法:

バックアップしたxxx.sqlファイルで、ENGINE=MyISAMをENGINE=INNODBに変更します。
もう一度インポートしてください。

6) 変換テーブルコマンド:

mysql> alter table テーブル名 engine = innodb;

上記のように、このローカル MySQL で使用されるストレージ エンジンはデフォルトの MyISAN です。ビジネス上のニーズにより、まずストレージ エンジンを Innodb に変更する必要があります。

操作記録は次のとおりです。

1) MySQLをセーフモードでシャットダウンする

[root@dev mysql5.1.57]# mysqladmin -uroot -p シャットダウン
パスワードを入力してください:
[root@dev mysql5.1.57]# ps -ef|grep mysql

2) my.cnfをバックアップする

[root@dev mysql5.1.57]# cp my.cnf my.cnf.old

3) my.cnf設定ファイルを変更する

[root@dev mysql5.1.57]# vim my.cnf
.....
[mysqld] //この設定領域に次の行を追加して、ストレージエンジンをinnodbとして指定します。
デフォルトのストレージエンジン = InnoDB

4) /mysql/data ディレクトリ内の ib_logfile0 と ib_logfile1 を削除します。削除するか、別の場所で切り取ってください。

[root@dev var]# mv ib_logfile0 ib_logfile1 /tmp/back/

5) MySQLを起動し、MySQLにログインしてストレージエンジンが切り替わったかどうかを確認します。

[root@dev var]# /Data/app/mysql5.1.57/bin/mysqld_safe --defaults-file=/Data/app/mysql5.1.57/my.cnf &

mysql> '%storage_engine%' のような変数を表示します。 
+----------------+--------+ 
| 変数名 | 値 | 
+----------------+--------+ 
| ストレージ エンジン | InnoDB | 
+----------------+--------+ 
セット内の 1 行 (0.00 秒) 

以上がMysqlのMyISAMストレージエンジンをInnodbに置き換える操作記録の要約です。これが編集者が皆さんと共有する内容の全てです。皆さんの参考になれば幸いです。また、123WORDPRESS.COMを応援していただければ幸いです。

以下もご興味があるかもしれません:
  • MySQL ストレージ エンジン MyISAM と InnoDB の違いの概要
  • MySQLストレージエンジンのMyISAMとInnoDBの違いを詳しく説明
  • MySQL ストレージ エンジン、myisam と innodb の違い
  • MySQL ストレージ エンジン MyISAM と InnoDB の 9 つの違い
  • MySQL データベースの MyISAM ストレージ エンジンを Innodb に変換する方法
  • MySQL ストレージ エンジン InnoDB と MyISAM の違い
  • MySQL ストレージ エンジンとして InnoDB と MyISAM を選択する場合のメリットとデメリットの簡単な分析
  • MySQL ストレージ エンジン InnoDB と MyISAM

<<:  JavaScript で一意の ID を生成するいくつかの方法

>>:  Nginx 正規表現の詳細な説明

推薦する

美しいチェックボックススタイル(複数選択ボックス)はIE8/9/10、FFなどと完全に互換性があります。

恥ずかしながら、このようなよく使われるチェックボックスのスタイルを変更するために、Baidu で長い...

MySQL の NULL と空の文字列

最近、MySQL に触れました。昨日、テーブル構造情報を格納するための新しいテーブルを作成しました。...

Vue の vue.$set() メソッドのソースコード例の詳細な説明

Vue を使用してプロジェクトを開発する過程で、次のような問題によく遭遇します。Vue のデータでオ...

フォーム送信の更新ページはソースコード設計にジャンプしません

1. ソースコードの設計コードをコピーコードは次のとおりです。 <!DOCTYPE html ...

JDBC-idea で mysql をインポートして java jar パッケージに接続する (mac)

序文1. この記事ではMySQL 8.0バージョンを使用していますバージョン5.0と比較すると、パッ...

MySQLのnull値に関する小さな問題

今日、null 値をテストしていたところ、小さな問題が見つかりました。ここに記録しました。以前にも遭...

Linux環境にMySQLデータベースをインストールする詳細なチュートリアル

1. データベースをインストールする1) yum -y install mysql-server (...

MySQLが正常にインストールされたかどうかを確認する方法

MySQL をインストールした後、DOS ウィンドウまたは MySQL 5.7 コマンドライン クラ...

mysql5.7.33 で誤って ibdata ファイルを削除した後にデータを回復する方法

目次1. シナリオの説明: 2. 事例のデモンストレーション: 2.1. MySQLの障害発生前にデ...

Alibaba Cloud MySQL スペースをクリーンアップする方法

今日、Alibaba Cloudからディスク警告通知を受け取りました。確認したところ、100Gのスペ...

派手なカルーセル効果を実現するJavaScript

この記事では、JavaScriptで派手なカルーセル効果を実装する2つの方法を紹介します。具体的な内...

Web面接でよくある質問:リフローとリペイントの原理と違い

目次ブラウザのレンダリングメカニズムリフローと再塗装リフロー逆流を引き起こす行為:再描画再描画を引き...

Mysqlはブール型の演算を設定します

Mysqlはブール型を設定します1. Tinyintタイプテストテーブルを作成し、blフィールドをブ...

MySQLトランザクション処理の使用方法とサンプルコードの詳細な説明

MySQL トランザクション サポートは、MySQL サーバー自体にバインドされているのではなく、ス...

Linux環境でOpenSSL証明書を生成する

1. 環境: CentOS7、OpenSSL1.1.1k。 2. コンセプト:ルート証明書: サーバ...