mysqlはエクスポートされたデータのsqlファイルから指定されたテーブルのみをインポートすることを実装します

mysqlはエクスポートされたデータのsqlファイルから指定されたテーブルのみをインポートすることを実装します

シナリオ

昨日、システムは dbAll.sql.gz という名前の特定のデータベースのすべてのテーブル データを自動的にバックアップしました。ファイルが大きい(例:40G)

今日は、tableA のデータの一部に問題が見つかったので、2 つのレコードの変更を確認する必要があります。レコードを比較するには、tableA のデータを dbAll から取得する必要があります。

運用スキーム

1. 比較するデータベース(一時データベース)に dbAll.sql.gz をインポートし、tableA を比較します。データ量が多すぎて時間がかかるため、お勧めできません

2. dbAll.sql.gz を解凍した後、Java コードを使用して、dbAll.sql 内の tableA に関する CREATE ステートメントと INSERT ステートメントをファイル tableA.sql に読み込み、比較のために tableA.sql を一時データベースにインポートします。

3. 参照 (未試用): mysqldump はデータベース alldb.sql 全体をエクスポートします。インポート時に 1 つのテーブルだけをインポートできますか?

方法1:

perl extract_sql.pl -t mytable -r mydumpfile > mytable.sql

方法2:

cat test1db.sql | sed -n '/テーブル .test1. のテーブル構造/,/テーブル .test2. のテーブル構造/p'>/tmp/xxx.sql

方法3:

awk '/テーブル .test1. のテーブル構造/,/テーブル .test2. のテーブル構造/{print}' src_bake_db.sql.gz > targetdb.sql

方法3: src_bake_db.sql.gz圧縮ファイル内のtest1およびtest2テーブルのデータをtargetdb.sqlにエクスポートする

補足知識: mysqlコマンドラインは、データベース全体のすべてのテーブルの最初の100レコードをエクスポートします。

以下のように表示されます。

mysqldump -uysp -pYspxxx db_name --where="1=1 limit 100" >/mnt/share/paxxx.com/backup.sql

mysql クライアントにログインせずに、コマンド ラインで直接実行するだけです。

mysqldump -h サーバー名 -u アカウント名 -p データベース名 --where="true limit 100"> /tmp/supports_launch.sql

phpmyadmin エクスポート PHP スクリプト:

http://local.phpmyadmin.com/export.php

エクスポートされたデータのSQLファイルから指定されたテーブルのみをインポートする上記のMySQL実装は、エディターがあなたと共有するすべての内容です。参考になれば幸いです。また、123WORDPRESS.COMをサポートしていただければ幸いです。

以下もご興味があるかもしれません:
  • mysqldump を使用して MySQL データベースからデータをエクスポートする方法の詳細な説明
  • mysqldump を使用して指定したテーブルをバックアップおよび復元する方法
  • Mysql コマンドラインで SQL データをインポートする
  • mysqldump のバックアップとリストア、および mysqldump のインポートとエクスポートのステートメントの詳細な説明

<<:  Vueは小さなフォーム検証機能を実装します

>>:  Jenkins初心者のためのDockerデプロイメントチュートリアルの詳細な説明

推薦する

Linux で同じ内容のファイルを識別する方法の詳細な説明

序文ファイルのコピーによってハードドライブのスペースが大量に浪費され、ファイルを更新するときに混乱が...

JSでES6クラスの使い方をすぐにマスター

1. どのように構築しますか? es5 でクラスを構築する一般的な方法を確認しましょう。まず、es5...

Javascript のスコープとクロージャの詳細

目次1. 範囲2. スコープチェーン3. 語彙の範囲5. 閉鎖の適用6. クロージャの欠陥7. 閉会...

Angularの単一プロジェクトを複数プロジェクトにアップグレードするプロセス全体

目次序文開発環境新しいプロジェクトを作成するモバイルウェブプロジェクト角度付きJSONパブリックモジ...

CentOS7 での MySQL 8.0.16 のインストールと設定のチュートリアル

MySQLの古いバージョンをアンインストールします(古いバージョンがない場合は、この手順をスキップし...

JavaScript Alert関数の実行順序の詳細な説明

目次質問分析する解決するAlert() 関数を置き換えるsetTimeOut関数まとめ質問数日前、J...

vue3 再帰コンポーネントカプセル化の全プロセス記録

目次序文1. 再帰コンポーネント2. 右クリックメニューコンポーネント要約する序文今日、プロジェクト...

Vue.js の計算プロパティ、監視プロパティ、ライフサイクルの詳細な説明

目次序文計算されたプロパティ計算プロパティの紹介入門ケース統計価格事例ゲッターメソッドとセッターメソ...

WeChatアプレットのスクロールビューが左右の連動を実現

この記事では、WeChatアプレットのスクロールビューの左右連動を実現するための具体的なコードを参考...

IDEA が MySQL データベースに接続できない問題の 6 つの解決策

この記事では、IDEA が MySQL データベースに接続できない問題に対する 6 つの解決策を主に...

ポップアップ効果を実現するにはjsを使用します

この記事の例では、ポップアップ効果を実現するためのjsの具体的なコードを参考までに共有しています。具...

Zabbix 監視ソリューション - 最新の公式バージョン 4.4 [推奨]

ザビックス2019/10/12 チェンシン参照するhttps://www.zabbix.com/do...

Docker での Redis 接続の急増をトラブルシューティングした実践的な記録

土曜日、本番サーバー上の Redis サーバーが利用できなくなり、エラー メッセージは次のようになり...

mysql における mydumper と mysqldump の比較

いくつかのテーブルまたは単一のデータベースのみをバックアップする場合は、innobackup よりも...

Angularルーティングの基礎の詳細な説明

目次1. ルーティング関連オブジェクト2. ルーティングオブジェクトの場所3. ルーティング構成4....