2015-10-26 8 views
0

Я пытаюсь обновить установку odoo с 8.0 до 9.0. То, что я сделал до сих пор является следующее:Как обновить odoo 8 до базы данных odoo 9?

  • резервной копии базой данных odoo из производственной системы
  • Установленной резервного копирования БД как испытание в моей нынешней системе
  • Скопировал папку odoo в папке на моем system
  • Проверено, если все работает. Оно работает!
  • Обновлено до версии v8.0, все еще работает
  • Сделал git checkout 9.0, а затем git pull.
  • Started odoo 9.0 с помощью команды ./openerp-server -d testDB -u all

Эта команда брейки со следующей ошибкой и не обновляет свою базу данных:

LINE 1: select model, transient from ir_model where state='manual' 
        ^
, in query select model, transient from ir_model where state=%s 
2015-10-26 00:37:29,823 4501 CRITICAL testDB openerp.service.server: 
Failed to initialize database `testDB`. 
Traceback (most recent call last): 
    File "/opt/odoo/openerp/service/server.py", line 885, in preload_registries 
    registry = RegistryManager.new(dbname, update_module=update_module) 
File "/opt/odoo/openerp/modules/registry.py", line 385, in new 
openerp.modules.load_modules(registry._db, force_demo, status, update_module) 
File "/opt/odoo/openerp/modules/loading.py", line 279, in load_modules 
loaded_modules, processed_modules = load_module_graph(cr, graph, status, perform_checks=update_module, report=report) 
File "/opt/odoo/openerp/modules/loading.py", line 136, in load_module_graph 
registry.setup_models(cr, partial=True) 
File "/opt/odoo/openerp/modules/registry.py", line 185, in setup_models 
cr.execute('select model, transient from ir_model where state=%s', ('manual',)) 
File "/opt/odoo/openerp/sql_db.py", line 139, in wrapper 
    return f(self, *args, **kwargs) 
File "/opt/odoo/openerp/sql_db.py", line 215, in execute 
    res = self._obj.execute(query, params) 

ProgrammingError: column "transient" does not exist 
LINE 1: select model, transient from ir_model where state='manual' 

Есть ли какие-либо шаги, которые я должен следовать, чтобы обновить базу данных или все, что нужно сделать вручную? И если да, что мне делать? Очевидно, что это не удалось, потому что конкретный столбец не существует в моей базе данных. Но есть ли сценарий обновления, потому что я боюсь, если я изменю это, меня ждет следующая ошибка.

Заранее спасибо.

ответ

3

Вы можете попросить компанию-одушку выполнить эту задачу, зайдя на это link . Но они будут взимать плату за это. Если вы можете сделать это самостоятельно здесь документация о том, как сделать это, https://doc.therp.nl/openupgrade/intro.html

Вариант 2: Мы можем использовать pgadmin (PostgreSQL графический интерфейс инструмента) .Just выберите имя базы данных и в верхней части вы можете увидеть, включен SQL, щелкните его и выдайте запрос sql для отображения всех данных (вы должны знать имя таблицы, которое вы хотите восстановить), после чего вы можете экспортировать его. Экспортированный файл содержит все данные с заголовками столбцов, нам может потребоваться переупорядочить столбцы в соответствии с odoo9 DB.Once это делается, выберите базу данных odoo9, щелкните правой кнопкой мыши имя таблицы, в которую вы хотите импортировать данные, и выберите опцию импорта. Это может занять некоторое время, и оно должно дать сообщение как «импортированные данные успешно».

+0

Благодарим вас за ссылку! Думаю, теперь я понял процесс обновления Odoo.У вас есть опыт обновления от 8.0 до 9.0? У меня есть только один настраиваемый модуль, а остальные - стандартные модули Odoo. – Freddy

+0

Хорошо, я только что узнал, что они работают в настоящее время на сценарии миграции 9.0. Еще раз спасибо за ваш ответ, я буду отмечать как правильно, так как это кажется правильным путем для меня. – Freddy

+0

Вы также можете использовать инструмент ETL – ChesuCR

2

Я нашел ответ на Github.

Хитрость заключается в том, чтобы создать поле, называемое transient, которое Boolean со значением по умолчанию false в таблице ir_model.

Как я и ожидал, это не полное решение, так как есть другая проблема с базой данных, нуждающейся в настройках.

0

Вы пытаетесь запустить базу данных Odoo 8.0 на Odoo 9.0.

Столбец «переходный» находится в базе кода для 9.0, а не в базе кода 8.0. Следовательно, база данных 8.0 запускается на базе кода 9.0. Следовательно, база данных не была обновлена ​​должным образом.

Как указано в предыдущем ответе. Вы можете либо заставить Оду сделать это, либо сделать это сами.

Смежные вопросы