Advertisement
Guest User

Untitled

a guest
Apr 30th, 2019
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.13 KB | None | 0 0
  1. #!/usr/bin/env python
  2. import argparse
  3. import os
  4. import sys
  5. import commands
  6. from datetime import datetime
  7. import time
  8. start_time = time.time()
  9. local_db_name='vistaalegre.v80.mylocal.com'
  10. local_db_host='localhost'
  11. local_db_user='odoo80'
  12. print ("Getting Dump...")
  13. dump_db="pg_dump  -h localhost -U odoo80 vistaalegre -O  > ~/sql_backups/vistaalegre.sql"
  14. os.system(""" ssh worker4 '%s' """ %dump_db)
  15. print ("BACKUP Done!!!")
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23. os.system("mkdir -p ~/sql_backups/")
  24. print ("Copying dump to localhost")
  25. os.system("rsync -a worker4:~/sql_backups/vistaalegre.sql ~/sql_backups/ --progress")
  26. os.system("ssh worker4 'rm -rf ~/sql_backups/vistaalegre.sql'")
  27. ##Drop Dtabase if exists
  28. print ("Dropping Database : %s " %local_db_name)
  29. os.system(""" psql %s -h %s -U %s -c 'REVOKE CONNECT ON DATABASE "%s" FROM public'; """%(local_db_name, local_db_host, local_db_user, local_db_name))
  30. os.system(""" psql %s -h %s -U %s -c 'SELECT pid, pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = current_database() AND pid <> pg_backend_pid()'; """%(local_db_name, local_db_host, local_db_user))
  31. os.system("dropdb %s -h %s -U %s" %(local_db_name, local_db_host, local_db_user))
  32. print ("Database Dropped : %s " %local_db_name)
  33. print ("Creating Database : %s " %local_db_name)
  34. os.system("createdb %s -h %s -U %s" %(local_db_name, local_db_host, local_db_user))
  35. os.system("psql vistaalegre.v80.mylocal.com -U odoo80 -h localhost -f ~/sql_backups/vistaalegre.sql")
  36.  
  37. ## commands to exeute after dump delete mail servers and reset user's password
  38. commands = [
  39.             "update res_users set password='a';",
  40.             " delete from fetchmail_server ;",
  41.             " delete from ir_mail_server ;",
  42.     ]
  43. for command in commands:
  44.     os.system('psql %s -h %s -U %s -c "%s" ' %(local_db_name, local_db_host, local_db_user, command))
  45.  
  46. print ("Restore complete ===> %s" %( local_db_name))
  47. end_time = time.time()
  48. print ("BACKUP Started At %s"%datetime.fromtimestamp(start_time).strftime('%Y-%m-%d %H:%M:%S'))
  49. print ("BACKUP Finished  At %s"%datetime.fromtimestamp(end_time).strftime('%Y-%m-%d %H:%M:%S'))
  50. print ("Total time in exeution %s Minutes." %((end_time -start_time)/60.0))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement