7zを使ってパイプを介してmysqlダンプを圧縮するには?

7zを使ってパイプを介してmysqlダンプを圧縮するには?

私はパイプ演算子を使用して7zを介してmysqldump出力を圧縮しようとしました。これ質問ですが、その答えは7zの代わりにxzを使用します)。これまでに試したことは次のとおりです。

mysqldump -u root -p Linux_Wiki | 7z > backup.sql.7z

そして:

mysqldump -u root -p Linux_Wiki | 7za > backup.sql.7z

そして:

mysqldump -u root -p Linux_Wiki | '7za a' > backup.sql.7z

そして:

mysqldump -u root -p Linux_Wiki | `7za a` > backup.sql.7z

p7zip4つすべてが失敗しましたが、最後の試みで次のような結果が出たのでインストールしたと確信しています。

Enter password: bash: 7-Zip: command not found
mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using password: NO) when trying to connect

ベストアンサー1

パスワードは、まず.my.cnfユーザーのホームディレクトリにあるファイルに次の形式で保存されます。

[mysqldump]
password=secret

mysqldumpその後、フラグなしでメソッドを使用してmysqlデータベースをダンプする必要があります-p(今度はファイルのパスワードを使用します)。

mysqldump -u root database | 7z a -si backup.sql.7z
  • アーカイブにaフラグが追加されました。7z
  • -si標準入力(匿名パイプ)から読み取ることを示します。

おすすめ記事