2015-01-14 30 views
6

Potrzebuję wykonać kopię zapasową bieżącego db po zalogowaniu do odoo. Powinienem móc to zrobić za pomocą przycisku, więc przypuśćmy, że kliknę przycisk, działa tak samo jak domyślna kopia zapasowa ODoo w zarządzaniu bazami danych, ale powinienem być w stanie zrobić to od wewnątrz po zalogowaniu.Kopia zapasowa Odoo db od wewnątrz odoo

Czy jest jakiś sposób, aby to osiągnąć? Wiem, że jest to możliwe z zewnątrz odoo używając bash, ale to nie jest to, czego chcę.

Odpowiedz

4

Za pomocą tego modułu można wykonać kopię zapasową bazy danych okresowo

https://www.odoo.com/apps/modules/7.0/crontab_config/ (v7)

można również przetestować ten moduł

https://www.odoo.com/apps/modules/6.1/db_backup_ept/ (v6 można miggrated do v7)

w twoim przypadku możesz dodać przycisk, aby uruchomić funkcję, która będzie wykonywana przez program szeregowy.

+0

i V8 można użyć tego modułu https://www.odoo.com/apps/modules/8.0/db_tools/ –

+0

Dzięki Mohammed, znalazłem inny sposób wokół tego. Ale ta metoda wygląda dość dobrze zorganizowana, ta dla wersji 8! –

+0

Mohammed Czy możesz mi powiedzieć, w jaki sposób udało ci się zautomatyzować proces tworzenia kopii zapasowej? Moduł dla v8, o którym mowa powyżej, nie działa. ImportError: Brak usługi o nazwie moduł. –

1

Możesz użyć prywatnej sesji przeglądarki, aby uzyskać dostęp do menu bazy danych, z ekranu logowania i wykonać tam formularz tworzenia kopii zapasowej (musisz znać hasło główne, aby uzyskać do niego dostęp, zdefiniowane w pliku konfiguracyjnym serwera).

0

idź do your_odoo_instance/web/database/menedżer gdzie można zobaczyć wszystkie zainstalowanych baz danych:

Odoo's Database Manager - Backup

Musisz swoje hasło główne zdefiniowane dla tego zadania. Jeśli nie możesz tego zapamiętać, zajrzyj do pliku odoo.conf na swoim serwerze i sprawdź wpis "admin_passwd".

1

Można wziąć kopię zapasową bazy danych z "zarządzania bazami danych" w odoo ..

typ poniższy link w przeglądarce,

http://localhost:8069/web/database/manager

prostu wymienić swój adres IP i port w aboves linku, dostaniesz ekran zarządzania bazą danych, możesz wykonać następujące operacje związane z bazą danych:

  • Utwórz
  • Duplikat
  • Kropla
  • zapasowa
  • Hasło
  • Restore
-1

Do tworzenia kopii zapasowych, można przejść do tego linku http://localhost:8069/web/database/manager.

  • Możesz utworzyć kopię zapasową z tego miejsca.
  • Można również przywrócić istniejącą kopię zapasową.

Important - Przed tym wystarczy ustawić hasło główne do bazy danych, aby uniknąć konsekwencji w przyszłości.

enter image description here Jeśli chcesz zmienić określone modele lub pola, gdy jesteś zalogowany. Możesz to zrobić poprzez export/import akcję dostarczoną przez Odoo. Po wyeksportowaniu danych z lokalnego można je zaimportować na swój serwer, ponieważ musisz go zweryfikować. enter image description here

0

Dodaj gdzieś przycisk i wywołaj taki kontroler.

@http.route('/backup/download', auth="user", type='http') 
     def backup(self, **kw): 
      ts = datetime.datetime.utcnow().strftime("%Y-%m-%d_%H-%M-%S") 
      filename = "%s_%s.zip" % (request.env.cr.dbname, ts) 
      headers = [ 
       ('Content-Type', 'application/octet-stream; charset=binary'), 
       ('Content-Disposition', content_disposition(filename)), 
      ] 
      dump_stream = db.dump_db(request.env.cr.dbname, None) 
      response = werkzeug.wrappers.Response(dump_stream, headers=headers, direct_passthrough=True) 
      return response 
Powiązane problemy