mysql が正常に実行されている場合、テーブル構造を表示することは難しくありません。 しかし、場合によっては MySQL が失敗し、この方法が実行できなくなることがあります。 障害が発生すると、通常は新しい MySQL インスタンスを使用して現在のデータを復元します。 テーブルを作成することは非常に重要なステップであり、テーブル構造を見つけるための他の方法が必要です。 テーブル構造はどこで定義されていますか? 通常、関心のあるユーザー データは、実際には MySQL データ ディレクトリに保存されます。 mysql データ ディレクトリのファイル構造は非常に明確です。 • カタログ マッピング データベース テーブルで定義された構造は frm ファイル内に存在し、もちろんメタデータを管理する ibdata にもレコードが存在します。 frm ファイルが存在する場合、テーブル構造を復元するのは比較的簡単です。 テーブル構造の解析 以下は、frm ファイルから create table コマンドを解析する 3 つの方法です。 mysqlfrm mysqlfrm は、mysql ユーティリティ ツールの 1 つです。 mysql ユーティリティには python2 環境が必要ですが、インストールは非常に簡単です。 $ tar -xvzf mysql-ユーティリティ-1.6.5.tar.gz $ cd mysql-ユーティリティ-1.6.5 $ python setup.py ビルド $ python setup.py をインストール mysqlfrm は、frm を解釈するための 2 つのモードをサポートしています。 直接分析 このモードは比較的簡単で、frm ファイルをバイトごとに分析し、できるだけ多くの情報を抽出します。 このモードでは、--diagnostic パラメータを使用する必要があります。 $ mysqlfrm --diagnostic /data/sakila/actor.frm MySQL サンプル分析 このモードでは、新しい mysql インスタンスを使用して frm 分析作業を完了します。 1. 現在のMySQLサービスから起動し、--serverを使用してMySQLサービスを指定します。 $ mysqlfrm --server=root:pass@localhost:3306 --port=3310 /data/sakila/actor.frm 次に、新しいMySQLインスタンスを起動し、--basedirを使用してMySQLプログラムパスを指定します。 $ mysqlfrm --basedir=/usr/local/bin/mysql --port=3310 /data/sakila/actor.frm --port は、現在のポート 3306 との競合を避けるために、新しいインスタンスのポートを指定します。 dbsake これは偶然発見したツールです。ドキュメントでは次のように紹介されています。 dbsake - MySQL 用の (s)wiss-(a)rmy-(k)nif(e) 作者は MySQL に非常に精通した人物に違いありません。このツールはダウンロード、インストールから使用までシンプルでわかりやすいです。 $ curl -s get.dbsake.net > dbsake $ chmod u+x dbsake $ ./dbsake frmdump [frmファイルパス] オンラインサービス こうした問題に焦点を当てたオンラインサービスもいくつかあります。 「Recover Structure -> from .frm file」エントリから frm をアップロードすると、create table コマンドが取得されます。 最後に これを使用すると、複数のツールをテストし、どのツールの回復コマンドがより完全で望ましいかを比較し、最適なものを選択できます。 参照: •mysqlfrm 公式ドキュメント •dbsake プロジェクト ドキュメント 要約する 上記は、frm ファイルから MySQL のテーブル構造を復元するために紹介した 3 つの方法です。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: Docker: /etc/default/docker の DOCKER_OPTS パラメータを変更しても反映されない
>>: DevUI で独自の Angular コンポーネント ライブラリを構築する方法
最近、shake.jsを使用して、shakeに似た機能を作成しました。ただし、shake機能はios...
目次インストール環境の説明MySQLデータベースサービスをインストールするメインライブラリを構成する...
乱雑なログ日常的に使用される Nginx は、静的リソース サーバーとリバース プロキシ サーバーの...
1. 前提条件何度かインストールしているので、エラーについてはこれ以上説明しません。ちょっとわかりに...
以下のように表示されます。表から条件フィールドでグループ化仮想テーブルとフィールドを作成し、フィール...
1. 準備例: 2 台のマシン: 192.168.219.146 (マスター)、192.168.21...
MongoDBインストールYumを使用してインストールすることを選択する1. repoファイルを作成...
目次1.まず、main.jsページを設定します2. 対応するパスの下で言語パックを構成します。ここに...
データベースを操作する過程では、いくつかの指標を日付別にまとめたり、一定期間内の合計金額をカウントし...
目次1. セットとは何か2. セットコンストラクタ2.1) 配列2.2) 文字列2.3) 議論2.4...
今日もとても実践的な事例です。名前を聞くだけで高度で難しそうですよね?今日はカルーセル画像の真髄を簡...
事故の背景: 数日前、プロジェクトの必要性により、サーバーに python-mysql モジュールを...
1: Baiduウェブサイトログイン入口ウェブサイト: http://www.baidu.com/s...
問題の説明ご存知のとおり、MySQL でフィールドを昇順に並べ替える SQL は次のとおりです (i...
目次序文1. システムサービス制御1. システムctl 2. ターゲット3. 共通システムサービス4...