以前以为odoo中只能连接postgresql数据库,并且只能连接一个数据库,今天发现,得益于postgresql的强大,我们可以再odoo中嵌入式地加载其他数据库的数据,就像本地库中的数据一样。
这其中的关键就在于postgresql中的foreign data wrapper的概念,利用fdw,我们可以连接mysql,sqlserver,oracle等市面上常见的数据库。
下面,我们就来说一下,如何利用fdw来实现这一目的。
先决条件
安装mysql_fdw
github 下载 mysql_fdw https://github.com/EnterpriseDB/mysql_fdw
首先运行 pg_config 如果报错,安装如下插件
1You need to install postgresql-server-dev-X.Y for building a server-side extension or libpq-dev for building a client-side application.
安装:
sudo apt-get install libpq-dev
编译
然后make之
make USE_PGXS=1
如果报如下的错误:
1
2Makefile:47: /usr/lib/postgresql/9.5/lib/pgxs/src/makefiles/pgxs.mk: No such file or directory
Makefile:52: *** PostgreSQL 9.3, 9.4, 9.5, 9.6 or 10beta is required to compile this extension. Stop.