Advertisement
hamacker

Script DOS para Backup do Firebird

Oct 13th, 2014
570
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Batch 2.91 KB | None | 0 0
  1. @echo off
  2. rem Cmd Script File (dos batch)
  3. rem ------------------------------------------------------------
  4. rem Nome: backup_firebird.cmd
  5. rem Proposito : Realização de Backup da base de dados firebird
  6. rem By: Gladiston Hamacker Santana (sirhamacker[em]gmail.com)
  7. rem Copyright: (c) Jun 2014, Todos os direitos reservados!
  8. rem ------------------------------------------------------------
  9. set fbpath=C:\Program Files (x86)\Firebird\Firebird_2_5\bin
  10. set fdb_server=192.168.1.10
  11. set fdb_user="SYSDBA"
  12. set fdb_pass="masterkey"
  13. set fdb=c:\sistema\dados\database.fdb
  14. set fbk=c:\backup\database.fbk
  15. rem ===========================================================
  16. rem forçar um shutdown antes do backup
  17. rem Agende para horarios em que provavelmente nao esteja
  18. rem ninguem usando, pois se houver serao derrubados.
  19. rem Esta execucao ficara registrado no log do FB
  20. rem ===========================================================
  21. set msg=forçando o shutdown em %fdb_server%:%fdb%
  22. echo %msg%
  23. "%fbpath%\gfix.exe" -user %fdb_user% -password %fdb_pass% "%fdb_server%:%fdb%" -shut -force 0
  24. set exit_status=%errorlevel%
  25. if %exit_status% gtr 0 goto :erro
  26. rem ===========================================================
  27. rem shutdown realizado com sucesso, entao vamos ao backup
  28. rem se fizer uma adaptacao na linha abaixo usando -se então o
  29. rem backup será bem mais rapido
  30. rem ===========================================================
  31. set msg=backup de %fdb_server%:%fdb% em %fbk%
  32. echo %msg%
  33. "%fbpath%\gbak.exe" -v -b -t -user %fdb_user% -password %fdb_pass% "%fdb_server%:%fdb%" %fbk%
  34. set exit_status=%errorlevel%
  35. if %exit_status% gtr 0 goto :erro
  36.  
  37. rem ===========================================================
  38. rem coloca o banco de dados online novamente
  39. rem ===========================================================
  40. set msg=colocando o backup online novamente %fdb_server%:%fdb%
  41. echo %msg%
  42. "%fbpath%\gfix.exe" -user %fdb_user% -password %fdb_pass% "%fdb_server%:%fdb%" -online normal
  43. set exit_status=%errorlevel%
  44. if %exit_status% gtr 0 goto :erro
  45. rem ===========================================================
  46. rem houseweeping forçado
  47. rem Só use em casos extremos onde existem transacoes velhas
  48. rem que nunca terminam e o backup foi concluido com sucesso.
  49. rem ===========================================================
  50. rem "%fbpath%\gfix.exe" -h 0 -user %fdb_user% -password %fdb_pass% "%fdb_server%:%fdb%"
  51. rem "%fbpath%\gfix.exe" -sweep -user %fdb_user% -password %fdb_pass% "%fdb_server%:%fdb%"
  52.  
  53. goto :fim
  54. :online
  55. set msg=colocando o database online novamente %fdb_server%:%fdb%
  56. echo %msg%
  57. "%fbpath%\gfix.exe" -user %fdb_user% -password %fdb_pass% "%fdb_server%:%fdb%" -online normal
  58. goto :fim
  59. :erro
  60. echo Ocorreu um erro:
  61. echo %msg%
  62. echo Status de saida: %exit_status%
  63. rem se for agendar o script, remova o pause abaixo:
  64. pause
  65. rem independente do erro, tenho que trazer o DB online novamente
  66. goto :online
  67. :fim
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement