在同一个局域网中,我无法通过具有SQLclient(例如HeidiSQL)的PC连接到安装在ubuntu服务器中的MySql数据库服务器。该数据库服务器是OpenErp(开源项目)安装的一部分,并且可以正常运行。
我想开发一个新程序从BI数据库中提取一些数据用于BI,但是我遇到了连接问题。
我尝试通过3306、8070和其他给定端口进行连接,但没有成功。
答案 0 :(得分:0)
您可以使用此模块来管理与mysql服务器的连接
https://github.com/OCA/server-tools/tree/10.0/base_external_dbsource_mysql
https://github.com/OCA/server-tools/tree/10.0/base_external_dbsource_sqlite
https://github.com/OCA/server-tools/tree/10.0/base_external_dbsource
创建这样的记录(使用表格或xml手动):
<record model="base.external.dbsource" id="read_mysql_conn" forcecreate="True">
<field name="name">MySQL Connection</field>
<field name="password">admin</field>
<field name="connector">mysql</field>
<field name="conn_string">mysql+pymysql://user:%s@127.0.0.1:3306/database</field>
</record>
像这样使用它:
res = self.env.ref('custom_module.read_mysql_conn').execute(
"""Select `id`, `name`, `unit` from `units`;""",
{}
)
答案 1 :(得分:0)
Odoo正在使用Postgresql,因此pgAdmin将是最佳选择。
通过添加以下内容来调整pg_hba.conf:
host all all your.public.ip/32 md5
此外,如果您使用的是Amazon EC2或其他现代CLoud服务器,请记住允许从您的IP访问端口5432。 来源:https://cier.tech/blog/blog-1/post/how-to-connect-to-odoo-db-using-pgadmin-20