Sybaseデータベースのダンプファイルサイズを削減する方法はありますか?

StackOverflow https://stackoverflow.com/questions/206787

  •  03-07-2019
  •  | 
  •  

質問

Sybaseデータベースをダンプするとき、テーブルにデータがあるかどうかは関係ないと思われます。ファイルサイズは同じです。これは、ダンプファイルが論理的ではなくバイナリであるという事実に基づいているため、ダンプファイルのファイルはデータベースに割り当てられたサイズに基づいていると言われています。 Oracleは論理ダンプファイルを使用できることを知っていますが、Sybaseに同様のことをさせることができますか、またはダンプファイルサイズを小さくする他の巧妙な方法はありますか?

役に立ちましたか?

解決

バージョン12前後のどこかで、ASEで圧縮ダンプを実行できました。

構文は次のとおりです。データベースdatabase_nameをfile_nameにダンプします[compression = compress_levelを使用]

compress_levelは0〜9です。 0は圧縮なし、9は最大です。ダンプを実行している間、圧縮するほどCPU使用率が高くなります。サイズとパフォーマンスの適切なバランスを見つけるために、ちょっとしたテストを行うだけです。

ダンプをロードするための特別なコマンドは必要ありません。

他のヒント

compress_level 9をすでに使用しているにもかかわらず、さらに圧縮したい場合は、bzip2でファイルを再圧縮することができます。

圧縮ファイルをbzip2するだけで、10%程度改善されます。圧縮解除および再圧縮すると、30%の範囲で改善が見られる場合があります。ただし、Sybaseでファイルをロードするには、ファイルを再度圧縮および/またはgzipする必要があることに注意してください。

gunzip -c pubs_1.dmp | bzip2 > pubs.dmp.bz2

上のリンク(構文は)はsybaseのドキュメントを指しているので明らかに正しいですが、コメントは誤解を招きます。

単純な形式の構文は次のとおりです。

データベース{database_name}を" compress :: {#compression_level} :: {stripe_device}"にダンプします。 行く

eg:データベースmydbを" compress :: 1 :: / sybase_dumps / mydb_17022009"にダンプします

データベースダンプのロードに関しては、:: compress;オプションを再度指定する必要があります。

eg。 " compresss :: / sybase_dumps / mydb_17022009"

からデータベースmydbをロードします

圧縮レベルも、それに続く余分な分離コロンも必要ないことに注意してください。

バランスを確認するテストは良い点です。ダンプがかなり長くかかると予想されるほど高くなります。 1-3は十分すぎると思いますが、6を超えることはありませんが、利益の減少は価値がありません。

私が絶望的だった場合、上記のようにファイルをbzip2します{獲得ポイント}。これが実稼働ホストである場合、ファイルを別のホストに発送し、これを行います。リソースのヒットはかなり大きくなる可能性があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top