I. 概要MySQL データベースに履歴データをアーカイブするには、主に次の 3 つの方法があります。1. SP を作成して書き込み、イベントを設定する。2. ダンプを使用してインポートおよびエクスポートする。3. pt-archiver ツールを使用してアーカイブする。最初の方法は、同じインスタンス要件によって制限されることが多く、放棄されることがよくあります。 2 番目のタイプはパフォーマンスが比較的優れていますが、アーカイブ テーブルが多数ある場合は、運用と保守も面倒です。そのため、多くの DBA は 3 番目の方法である pt-archiver を使用することが多いです。 pt-archiver は Percona-Toolkit ツールセットのコンポーネントであり、主に MySQL テーブル データをアーカイブおよびクリアするために使用されるツールです。データを別のテーブルまたはファイルにアーカイブできます。 pt-archiver は、テーブル データをクリアするプロセス中に OLTP トランザクションのクエリ パフォーマンスに影響を与えません。データをアーカイブする場合は、別のサーバー上の別のテーブルまたはファイルにアーカイブできます。 あるネットユーザーが、Python を使って pt-archiver を小さなツール mysql_archiver に開発しました。基本的には、アーカイブ ジョブの構成可能な展開を実現しており、非常に使いやすいです。 「MySQL_archiver は、基本的に、データ アーカイブの自動操作、アーカイブ タスクの統合スケジュール管理、自動監視と早期警告、自動レポート生成を実現します。ある程度、生産性を節約し、運用と保守の効率を向上させます。」 GitHub アドレス: https://github.com/dbarun/mysql_archiver 2. pt-archiverの主なパラメータ
3. mysql_archiverのインストールと展開における一般的なエラー1. python db_archive_exec.py 127.0.0.1 db123を実行するとエラーが報告されます
解決: ステップ1 基本環境 rm -rf /etc/yum.repos.d/epel* yum で postgresql-devel と python3-devel をインストールします。 postgresql-devel と python-devel ステップ2: setuptoolsをインストールする (1) setuptools-39.2.0.zipをダウンロードする (2)解凍してpython setup.pyビルドをインストールする python setup.py インストール ステップ3 pipをインストールする (1) pip-1.5.4.tar.gzをダウンロードする (2)python setup.py installをインストールする ステップ4 MySQL-pythonをインストールする yum で MySQL-python をインストールします 2. pt-archiverツールが見つからないというエラーを報告する sh: pt-archiver: コマンドが見つかりません 解決: percona-toolkit-3.2.1_x86_64.tar.gz をダウンロードしてインストールし、ソフト リンクを設定します。 例えば: ln -s /data/mysql_archiver/percona-toolkit-3.2.1/bin/pt-archiver /usr/local/bin/pt-archiver 3. 文書の不足 <type '例外.Exception'> [Errno 2] そのようなファイルまたはディレクトリはありません: u'/software/python_script/db_archive_XXXXdb_XXXtablename.log' 解決: ファイルを作成する: /software/python_script 4. 文字セットの問題
解決: db_archive_exec.py実行ファイルを変更し、pt-archiverのパラメータ--no-check-charsetを追加します。 5. パラメータ設定エラー 使用方法: pt-archiver [オプション] --source DSN --where WHERE コマンドライン引数のエラー: * --txn-size と --commit-each は相互に排他的です。 pt-archiverはMySQLテーブルからレコードを取得します。--sourceと--dest 引数はDSN構文を使用します。COPYがyesの場合、--destはデフォルトでキーの値になります。 --sourceから。詳細については、--helpオプションを使用するか、'perldoc 完全なドキュメントについては、「/usr/local/bin/pt-archiver」を参照してください。 解決: pt-archiverはパラメータ--commit-eachを削除します 6. エンコーディング「utf8mb4」が見つかりません エラーメッセージ:
解決: pt-archiver はパラメータ --bulk-insert --bulk-delete を削除します IV. 主な参考資料1. MySQLデータアーカイブの実践 - Pythonとpt-archiverの強力な組み合わせ https://blog.csdn.net/n88lpo/article/details/78905528?utm_medium=distribute.pc_relevant.none-task-blog-baidulandingword-14&spm=1001.2101.3001.4242 2.MySQLデータアーカイブツール https://github.com/dbarun/mysql_archiver#readme 3. LinuxでMySQLdbと基本操作をインストールする https://www.cnblogs.com/blogsme/archive/2012/12/12/2814588.html 4.pt ツール pt-archiver https://www.cnblogs.com/yhq1314/p/10601801.html 5. Linuxでのpipのインストール手順と詳細な使用方法 https://www.jb51.net/article/118035.htm 6. Percona-Toolkit の pt-archiver の概要 https://www.cnblogs.com/dbabd/p/10721857.html MySQLデータアーカイブツールmysql_archiverの詳細な説明については、これで終わりです。MySQLデータアーカイブに関するより関連性の高いコンテンツについては、123WORDPRESS.COMの過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも123WORDPRESS.COMをよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: JS は Web ページナビゲーションバーの特殊効果を実現します
目次1. v-on指令1. 基本的な使い方2. 糖衣構文3. イベントパラメータ4. イベント修飾子...
「初心者向けソースコードからの MySQL デッドロック問題の理解」では、MySQL ソースコードを...
目次1. ファイル拡張子を取得する2. コンテンツをクリップボードにコピーする3. スリープ時間は何...
最近、特に異常なビジネス需要があり、テーブルがあります テーブル「デモ」を作成します( `id` i...
同僚から、一時テーブルを使用して変数データを挿入して表示する方法を教わったことがありますが、この方法...
目次序文プロトタイプチェーン継承コンストラクタの継承組み合わせ継承(プロトタイプチェーン継承とコンス...
背景色と透明度の設定上記のように、最初の画像の場合は、灰色の背景と左上隅に白い「カバー」という文字を...
描画効果実装コードJavaScript var キャンバス = document.getElemen...
序文この記事では主に、MySQL ストレージ テーブル エラー「java.sql.SQLExcept...
目次共通バージョンの紹介共通バージョンのダウンロードアドレスとインストール以下に簡単な違いを示します...
Dockerのインストール手順をスキップする1. postgresqlイメージを取得する docke...
クエリ書き換えプラグインMySQL 5.7.6 以降、MySQL Server は、サーバーが実行す...
導入データベース理論についてさらに学んでいくうちに、さまざまな分離レベルによって起こり得る問題につい...
まず最初に、ロード バランシングとは何かについて説明します。ロード バランシングとは、リクエストの内...
序文フロントエンドで非常に便利な、小さなアイコン付きの検索ボックスを作成する方法をご紹介します。エフ...