sql >> データベース >  >> RDS >> PostgreSQL

postgres [ウィンドウ]の自動バックアップスクリプトを修正するにはどうすればよいですか?

    空白をなくすために、コードはすべてのパスを二重引用符で囲む必要があります。 cmdを覚えておいてください スペースで区切られた各作業を新しいコマンドとして解釈します。 &をエスケープする必要があります バッチで物理演算子になるため、最後に/dを使用することをお勧めします。 cdを使用する場合のオプション 別のドライブ文字から来た場合:

    @echo off    
     SET "PGPASSWORD=%Ech0-5910^&123"
     set "root=C:\Program Files (x86)\pgAdmin 4\v3\runtime\"
     cd /d "%root%"
     pg_dump.exe -h 192.168.1.161 -p 5432 -U postgres -F c -b -v -f "D:\Backup\DatabaseBackUp\SQL\123456.backup" testdb
    

    また、pg_dumpでパスワードを使用しないことにも注意してください。 コマンドなので、それも考慮する必要があります。ベストプラクティスは編集することです

    %APPDATA%\postgresql\pgpass.conf
    

    を追加します
    *:5432:*:username:password
    

    スクリプトのその部分を自動化するには:

    @echo off
      echo *:5432:*:postgres:%Ech0-5910^&123>""%APPDATA%\postgresql\pgpass.conf"
      set "root=C:\Program Files (x86)\pgAdmin 4\v3\runtime\"
      cd /d "%root%"
      pg_dump.exe -h 192.168.1.161 -p 5432 -U postgres -F c -b -v -f "D:\Backup\DatabaseBackUp\SQL\123456.backup" testdb
    

    dirの場合 存在しない場合は、作成します"%APPDATA%\postgresql"




    1. 制約付きの列を削除する方法は?

    2. 列SQLの数値のみのデータで行をフィルタリングします

    3. mysqlは同じnow()で複数の列を更新します

    4. PHP-WHERE結合のMYSQL不明列