Skip to content
  • Categories
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Flatly)
  • No Skin
Collapse

Odoo 中文社区

  1. Home
  2. Categories
  3. Odoo 开发与实施交流
  4. odoo12数据迁移问题

odoo12数据迁移问题

Scheduled Pinned Locked Moved Solved Odoo 开发与实施交流
27 Posts 2 Posters 9.6k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • W Offline
    W Offline
    weih87
    wrote on last edited by weih87
    #1

    odoo12数据迁移问题

    之前是使用源码安装的odoo12,安装在LINODE 10美元/月的VPS上,已经运行了一年了,现在想把这套系统迁移到国内的服务器上,不打算使用源码安装,因为我们的系统非常简单,就是在官方的基础上安装一套MUK后端主题,使用官方的docker-compose.yml一键运行odoo12非常简单,yml文件如下

    version: '2'
    services:
      web:
        image: odoo:12.0
        depends_on:
          - db
        ports:
          - "8069:8069"
        volumes:
          - odoo-web-data:/var/lib/odoo
          - ./config:/etc/odoo
          - ./addons:/mnt/extra-addons
      db:
        image: postgres:10
        environment:
          - POSTGRES_DB=postgres
          - POSTGRES_PASSWORD=odoo
          - POSTGRES_USER=odoo
          - PGDATA=/var/lib/postgresql/data/pgdata
        volumes:
          - odoo-db-data:/var/lib/postgresql/data/pgdata
    volumes:
      odoo-web-data:
      odoo-db-data:
    

    之后把MUK后端主题的文件上传到 ./addons,新建一个数据库,安装MUK主题完全正常,退出新建的数据为并删除它,在原来的系统上导到备份恢复到新系统上,在恢复的时候提示如下错误

    web_1  | 2019-12-10 08:19:59,857 1 ERROR md odoo.modules.graph: module muk_web_theme: Unmet dependencies: muk_web_utils
    web_1  | 2019-12-10 08:19:59,857 1 ERROR md odoo.modules.graph: module muk_web_utils: Unmet dependencies: muk_autovacuum
    db_1   | 2019-12-10 08:20:17.140 UTC [147] ERROR:  could not obtain lock on row in relation "ir_cron"
    
    
    

    恢复后可以看到恢复的数据库,尝试登陆日志会报如下错误

    web_1  | 2019-12-10 08:21:16,554 1 ERROR md werkzeug: Error on request:
    
    

    前台显示

    500 Internal Server Error
    The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.
    
    

    请问怎么解决这个问题以正常迁移?

    1 Reply Last reply
    0
    • digitalsatoriD Offline
      digitalsatoriD Offline
      digitalsatori 管理员
      wrote on last edited by
      #2

      @weih87 在 odoo12数据迁移问题 中说:

      muk_web_utils
      muk_autovacuum

      错误信息里提到的这两个模块有传到./addons目录下吗?

      【上海先安科技】(tony AT openerp.cn)

      W 1 Reply Last reply
      0
      • W Offline
        W Offline
        weih87
        replied to digitalsatori on last edited by
        #3

        @digitalsatori 有的,这个主题包含的四个组件都已经上传到./addons文件夹

        1 Reply Last reply
        0
        • digitalsatoriD Offline
          digitalsatoriD Offline
          digitalsatori 管理员
          wrote on last edited by
          #4

          估计是你迁移前的addons路径和迁移后addons路径不一致造成的。
          如果你进入“开发者模式”,然后点击“更新模块列表”,是不是会有2组名字一样的muk相关的apps。重新安装下应该就可以了。

          【上海先安科技】(tony AT openerp.cn)

          W 1 Reply Last reply
          0
          • W Offline
            W Offline
            weih87
            replied to digitalsatori on last edited by
            #5

            @digitalsatori 新服务器导入数据库之后都无法登陆,一登陆就显示500错误,无法进入开发者模式。。。

            1 Reply Last reply
            0
            • digitalsatoriD Offline
              digitalsatoriD Offline
              digitalsatori 管理员
              wrote on last edited by
              #6

              可以在odoo的启动参数里重新初始化你的muk-theme,

              odoo-bin -d YourDB -i muk-theme
              

              把YourDB替换你的数据库名称, muk-theme替换为实际的主题addon名称

              【上海先安科技】(tony AT openerp.cn)

              W 1 Reply Last reply
              0
              • W Offline
                W Offline
                weih87
                replied to digitalsatori on last edited by
                #7

                @digitalsatori 在docker里怎么执行这行命令呢?

                1 Reply Last reply
                0
                • digitalsatoriD Offline
                  digitalsatoriD Offline
                  digitalsatori 管理员
                  wrote on last edited by digitalsatori
                  #8

                  试试下面这样:

                  docker-compose run --rm web odoo -d YourDB -i muk-theme --addons-path=/mnt/extra-addons
                  

                  【上海先安科技】(tony AT openerp.cn)

                  W 1 Reply Last reply
                  0
                  • W Offline
                    W Offline
                    weih87
                    replied to digitalsatori on last edited by weih87
                    #9

                    @digitalsatori 运行之后没有报错,更新:还是会报错,前面是数据库名弄错新建了个数据库才导致的无报错。
                    而且无法访问,似乎是8069端口没有映射出来?
                    以下是运行之后的日志

                    root@v-1:~/odoo# docker-compose run --rm web odoo -d md2 -i muk_web_theme
                    Starting odoo_db_1 ...
                    Starting odoo_db_1 ... done
                    2019-12-11 06:27:17,227 1 INFO ? odoo: Odoo version 12.0-20191106
                    2019-12-11 06:27:17,228 1 INFO ? odoo: Using configuration file at /etc/odoo/odoo.conf
                    2019-12-11 06:27:17,229 1 INFO ? odoo: addons paths: ['/var/lib/odoo/addons/12.0', '/opt/odoo/addons', '/usr/lib/python3/dist-packages/odoo/addons']
                    2019-12-11 06:27:17,231 1 INFO ? odoo: database: odoo@db:5432
                    2019-12-11 06:27:17,434 1 INFO ? odoo.addons.base.models.ir_actions_report: Will use the Wkhtmltopdf binary at /usr/local/bin/wkhtmltopdf
                    2019-12-11 06:27:17,667 1 INFO ? odoo.service.server: HTTP service (werkzeug) running on e8c6a7336a19:8069
                    2019-12-11 06:27:17,695 1 INFO md2 odoo.modules.loading: loading 1 modules...
                    2019-12-11 06:27:17,720 1 INFO md2 odoo.modules.loading: 1 modules loaded in 0.02s, 0 queries
                    2019-12-11 06:27:17,893 1 INFO md2 odoo.modules.loading: updating modules list
                    2019-12-11 06:27:17,901 1 INFO md2 odoo.addons.base.models.ir_module: ALLOW access to module.update_list on [] to user __system__ #1 via n/a
                    2019-12-11 06:27:18,910 1 ERROR md2 odoo.modules.graph: module muk_web_theme: Unmet dependencies: muk_web_utils
                    2019-12-11 06:27:18,910 1 ERROR md2 odoo.modules.graph: module muk_web_utils: Unmet dependencies: muk_autovacuum
                    2019-12-11 06:27:18,911 1 INFO md2 odoo.modules.loading: loading 62 modules...
                    2019-12-11 06:27:19,860 1 INFO md2 odoo.modules.loading: 62 modules loaded in 0.95s, 0 queries
                    2019-12-11 06:27:21,240 1 INFO md2 odoo.modules.loading: Modules loaded.
                    
                    
                    
                    1 Reply Last reply
                    0
                    • digitalsatoriD Offline
                      digitalsatoriD Offline
                      digitalsatori 管理员
                      wrote on last edited by
                      #10

                      之前的命令里漏了addons-path你再试试

                      【上海先安科技】(tony AT openerp.cn)

                      W 1 Reply Last reply
                      0
                      • W Offline
                        W Offline
                        weih87
                        replied to digitalsatori on last edited by weih87
                        #11

                        @digitalsatori 路径已经被我修改成和之前的服务器一样的路径 /opt/odoo/addons 了,执行这条命令日志输出如下

                        root@v-1:~/odoo# docker-compose run --rm web odoo -d md2 -i muk_web_theme --addons-path=/opt/odoo/addons
                        Starting odoo_db_1 ... done
                        2019-12-11 06:39:29,342 1 INFO ? odoo: Odoo version 12.0-20191106
                        2019-12-11 06:39:29,343 1 INFO ? odoo: Using configuration file at /etc/odoo/odoo.conf
                        2019-12-11 06:39:29,343 1 INFO ? odoo: addons paths: ['/var/lib/odoo/addons/12.0', '/opt/odoo/addons', '/usr/lib/python3/dist-packages/odoo/addons']
                        2019-12-11 06:39:29,344 1 INFO ? odoo: database: odoo@db:5432
                        2019-12-11 06:39:29,521 1 INFO ? odoo.addons.base.models.ir_actions_report: Will use the Wkhtmltopdf binary at /usr/local/bin/wkhtmltopdf
                        2019-12-11 06:39:29,761 1 INFO ? odoo.service.server: HTTP service (werkzeug) running on 744949dbcdd6:8069
                        2019-12-11 06:39:29,781 1 INFO md2 odoo.modules.loading: loading 1 modules...
                        2019-12-11 06:39:29,810 1 INFO md2 odoo.modules.loading: 1 modules loaded in 0.03s, 0 queries
                        2019-12-11 06:39:29,971 1 INFO md2 odoo.modules.loading: updating modules list
                        2019-12-11 06:39:29,976 1 INFO md2 odoo.addons.base.models.ir_module: ALLOW access to module.update_list on [] to user __system__ #1 via n/a
                        2019-12-11 06:39:31,021 1 ERROR md2 odoo.modules.graph: module muk_web_theme: Unmet dependencies: muk_web_utils
                        2019-12-11 06:39:31,022 1 ERROR md2 odoo.modules.graph: module muk_web_utils: Unmet dependencies: muk_autovacuum
                        2019-12-11 06:39:31,023 1 INFO md2 odoo.modules.loading: loading 62 modules...
                        2019-12-11 06:39:32,017 1 INFO md2 odoo.modules.loading: 62 modules loaded in 0.99s, 0 queries
                        2019-12-11 06:39:33,424 1 INFO md2 odoo.modules.loading: Modules loaded.
                        
                        
                        1 Reply Last reply
                        0
                        • digitalsatoriD Offline
                          digitalsatoriD Offline
                          digitalsatori 管理员
                          wrote on last edited by
                          #12

                          这样执行命令是不对的,因为在你的docker-compose.yml文件中是这样定义的:

                          volumes:
                                - odoo-web-data:/var/lib/odoo
                                - ./config:/etc/odoo
                                - ./addons:/mnt/extra-addons
                          

                          所以你的muk-xxx这些外部addon是放在docker 目录下addons子目录中然后映射到docker的/mnt/extra-addons目录的
                          所以docker中的Odoo需要指定一个addons目录指向/mnt/extra-addons

                          【上海先安科技】(tony AT openerp.cn)

                          W 1 Reply Last reply
                          0
                          • W Offline
                            W Offline
                            weih87
                            replied to digitalsatori on last edited by
                            #13

                            @digitalsatori docker-compose.yml文件已经改了

                            root@v-1:~/odoo# cat docker-compose.yml
                            version: '2'
                            services:
                              web:
                                image: odoo:12.0
                                depends_on:
                                  - db
                                ports:
                                  - "8069:8069"
                                volumes:
                                  - odoo-web-data:/var/lib/odoo
                                  - ./config:/etc/odoo
                                  - ./addons:/opt/odoo/addons
                              db:
                                image: postgres:10
                                environment:
                                  - POSTGRES_DB=postgres
                                  - POSTGRES_PASSWORD=odoo
                                  - POSTGRES_USER=odoo
                                  - PGDATA=/var/lib/postgresql/data/pgdata
                                volumes:
                                  - odoo-db-data:/var/lib/postgresql/data/pgdata
                            volumes:
                              odoo-web-data:
                              odoo-db-data:
                            

                            odoo.conf文件也一并修改

                            root@v-1:~/odoo# cat ./config/odoo.conf
                            [options]
                            addons_path = /opt/odoo/addons
                            data_dir = /var/lib/odoo
                            admin_passwd = adminpassword
                            
                            

                            这样应该没问题吧?还是全部修改成和之前一样再试试?

                            1 Reply Last reply
                            0
                            • W Offline
                              W Offline
                              weih87
                              wrote on last edited by
                              #14

                              全部改回来了,结果一样😧

                              root@v-1:~/odoo# docker-compose run --rm web odoo -d md2 -i muk_web_theme --addons-path=/mnt/extra-addons
                              Starting odoo_db_1 ...
                              Starting odoo_db_1 ... done
                              2019-12-11 07:08:51,785 1 INFO ? odoo: Odoo version 12.0-20191106
                              2019-12-11 07:08:51,786 1 INFO ? odoo: Using configuration file at /etc/odoo/odoo.conf
                              2019-12-11 07:08:51,788 1 INFO ? odoo: addons paths: ['/var/lib/odoo/addons/12.0', '/mnt/extra-addons', '/usr/lib/python3/dist-packages/odoo/addons']
                              2019-12-11 07:08:51,789 1 INFO ? odoo: database: odoo@db:5432
                              2019-12-11 07:08:51,983 1 INFO ? odoo.addons.base.models.ir_actions_report: Will use the Wkhtmltopdf binary at /usr/local/bin/wkhtmltopdf
                              2019-12-11 07:08:52,217 1 INFO ? odoo.service.server: HTTP service (werkzeug) running on 32e8ca14f02d:8069
                              2019-12-11 07:08:52,253 1 INFO md2 odoo.modules.loading: loading 1 modules...
                              2019-12-11 07:08:52,286 1 INFO md2 odoo.modules.loading: 1 modules loaded in 0.03s, 0 queries
                              2019-12-11 07:08:52,489 1 INFO md2 odoo.modules.loading: updating modules list
                              2019-12-11 07:08:52,497 1 INFO md2 odoo.addons.base.models.ir_module: ALLOW access to module.update_list on [] to user __system__ #1 via n/a
                              2019-12-11 07:08:53,613 1 ERROR md2 odoo.modules.graph: module muk_web_utils: Unmet dependencies: muk_autovacuum
                              2019-12-11 07:08:53,614 1 ERROR md2 odoo.modules.graph: module muk_web_theme: Unmet dependencies: muk_web_utils
                              2019-12-11 07:08:53,615 1 INFO md2 odoo.modules.loading: loading 62 modules...
                              2019-12-11 07:08:54,556 1 INFO md2 odoo.modules.loading: 62 modules loaded in 0.94s, 0 queries
                              2019-12-11 07:08:56,019 1 INFO md2 odoo.modules.loading: Modules loaded.
                              
                              
                              1 Reply Last reply
                              0
                              • digitalsatoriD Offline
                                digitalsatoriD Offline
                                digitalsatori 管理员
                                wrote on last edited by
                                #15

                                虽然仍然有dependencies的报错,但是系统看起来是正常的启动状态啊,访问系统显示什么?

                                【上海先安科技】(tony AT openerp.cn)

                                W 1 Reply Last reply
                                0
                                • W Offline
                                  W Offline
                                  weih87
                                  replied to digitalsatori on last edited by
                                  #16

                                  @digitalsatori 无法访问,似乎8069端口没有进行映射

                                  1 Reply Last reply
                                  0
                                  • digitalsatoriD Offline
                                    digitalsatoriD Offline
                                    digitalsatori 管理员
                                    wrote on last edited by digitalsatori
                                    #17

                                    我怀疑你之前的docker没有停掉,又用docker-compose新启了容器。

                                    docker ps
                                    

                                    看一下,多个容器都对外映射8069端口就冲突了嘛
                                    你可以用

                                    docker-compose down
                                    

                                    或

                                    docker rm xxxx
                                    

                                    来干掉容器,确保docker ps 下没有运行中的容器了,再用之前的命令行启动

                                    【上海先安科技】(tony AT openerp.cn)

                                    1 Reply Last reply
                                    0
                                    • W Offline
                                      W Offline
                                      weih87
                                      wrote on last edited by
                                      #18

                                      运行此行命令之前我已经使用 docker-compose stop 停止在运行的容器了
                                      运行此命令之后看容器的运行情况如下

                                      root@v-1:~# docker ps -a
                                      CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                   PORTS                NAMES
                                      750e72e9ce65        odoo:12.0           "/entrypoint.sh odoo…"   9 seconds ago       Up 7 seconds             8069/tcp, 8071/tcp   odoo_web_run_1
                                      bc78100efb3b        odoo:12.0           "/entrypoint.sh odoo"    6 hours ago         Exited (0) 3 hours ago                        odoo_web_1
                                      6d31bedbe487        postgres:10         "docker-entrypoint.s…"   5 days ago          Up 9 seconds             5432/tcp             odoo_db_1
                                      
                                      
                                      1 Reply Last reply
                                      0
                                      • digitalsatoriD Offline
                                        digitalsatoriD Offline
                                        digitalsatori 管理员
                                        wrote on last edited by
                                        #19

                                        第一个运行中的docker确实没有端口映射出来。
                                        如果猜得没错的话,你运行那个命令并没有在docker-compose.yml文件所在的目录下运行,所以该文件所定义的端口映射没有起作用。

                                        【上海先安科技】(tony AT openerp.cn)

                                        W 1 Reply Last reply
                                        0
                                        • W Offline
                                          W Offline
                                          weih87
                                          replied to digitalsatori on last edited by
                                          #20

                                          @digitalsatori 确定工作目录是在docker-compose.yml所在的文件件,如果在别的路径以上命令根本无法运行。

                                          root@v-1:~# docker-compose run --rm web odoo -d md2 -i muk_web_theme --addons-path=/mnt/extra-addons
                                          ERROR:
                                                  Can't find a suitable configuration file in this directory or any
                                                  parent. Are you in the right directory?
                                          
                                                  Supported filenames: docker-compose.yml, docker-compose.yaml
                                          
                                          

                                          之前我贴出来的日志都有带路径的,你可以看下,我的工作目录是~/odoo

                                          1 Reply Last reply
                                          0

                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups