win 二进制门安装mysql_PG二进制包编译Windows下mysql_fdw
1.mysql_fdw源码克隆
链接:https://github.com/EnterpriseDB/mysql_fdw/releases
选择最新版REL-2_5_1
2.mysql_fdw编译安装
下载来的源码不自带window工程文件,自己新建工程,将源码加入
工程依赖PostgreSQL和mysql, C++编译附加包含目录需要设置相应目录
文件路径自己修改:以我的为例使用的是PostgreSQL9.5.4和mysql5.7.2
C:\Program Files\PostgreSQL\9.5\include
C:\Program Files\PostgreSQL\9.5\include\server
C:\Program Files\PostgreSQL\9.5\include\server\port\win32
C:\Program Files\PostgreSQL\9.5\include\server\port\win32_msvc
D:\MySQL\MySQL Server 5.7\include
链接目录
C:\Program Files\MySQL\MySQL Server 5.7\lib\libmysql.lib
C:\Program Files\PostgreSQL\9.5\lib\postgres.lib
MYSQL_FDW.def文件(通过模块定义文件导入)
设置需要导出的函数
Pg_magic_func
_PG_init
is_foreign_expr
mysql_append_where_clause
mysql_bind_result
mysql_bind_sql_var
mysql_cleanup_connection
mysql_connect
mysql_convert_to_pg
mysql_deparse_analyze
mysql_deparse_delete
mysql_deparse_insert
mysql_deparse_select
mysql_deparse_update
mysql_dll_handle DATA
mysql_fdw_handler
mysql_fdw_validator
mysql_fdw_version
mysql_get_connection
mysql_get_options
mysql_is_valid_option
mysql_load_library
mysql_rel_connection
pg_finfo_mysql_fdw_handler
pg_finfo_mysql_fdw_validator
pg_finfo_mysql_fdw_version
3.mysql_fdw库导入PG
1)将mysql_fdw.control、mysql_fdw--1.0.sql、mysql_fdw--1.0--1.1.sqlmysql_fdw--1.1.sql复制到C:\Program Files\PostgreSQL\9.5\share\extension目录下
2)将生成的mysql_fdw.dll复制到C:\Program Files\PostgreSQL\9.5\lib目录下
注意:由于项目在编译时将libmysql.dll引用路径定死了(C:\Program Files\MySQL\MySQL Server 5.7\lib),当生成的mysql_fdw.dll移植到其他机器时,libmysql.dll路径不一致或者不存在则出现以下错误提示:
解决办法:采用方法2
(1)人为添加C:\Program Files\MySQL\MySQL Server 5.7\lib目录和libmysql.dll文件;
(2)将libmysql.dll在编译解决添加到C:\Program Files\PostgreSQL\9.5\lib目录下并包含--由于数据库的安装目录是确定的;
说明:以上两种方法都依赖libmysql.dll文件的路径,都不是最佳解决方案。
4.mysql_fdw测试
1.mysql
--mysql(账号:root; 密码:123456)
--进入Mysql设置基本测试表
mysql -uroot -p123456
mysql> show databases;
mysql> create database mydb;
mysql> show databases;
mysql> use mydb;
mysql> show tables;
mysql> CREATE TABLE example ( id INT,data VARCHAR(100) );
mysql> INSERT INTO example VALUES (1,'aaa');
mysql> INSERT INTO example VALUES (2,'bbb');
mysql> INSERT INTO example VALUES (3,'ccc');
mysql> INSERT INTO example VALUES (4,'ddd');
mysql> INSERT INTO example VALUES (5,'eee');
mysql> show tables;
mysql> select * from example;
2.postgresql
postgres=# CREATE EXTENSION mysql_fdw;
CREATE EXTENSION
postgres=# CREATE SERVER mysql_server FOREIGN DATA WRAPPER mysql_fdw OPTIONS (host '127.0.0.1', port '3306');
CREATE SERVER
postgres=# CREATE USER MAPPING FOR PUBLIC SERVER mysql_server OPTIONS (username 'root', password '123456');
CREATE USER MAPPING
postgres=# CREATE FOREIGN TABLE example (id INT,data VARCHAR(100) ) SERVER mysql_server OPTIONS (dbname 'mydb', table_name 'example');
CREATE FOREIGN TABLE
postgres=# SELECT * FROM example;
id | data
----+------
1 | aaa
2 | bbb
3 | ccc
4 | ddd
5 | eee
(5 rows)
postgres=#
win 二进制门安装mysql_PG二进制包编译Windows下mysql_fdw相关推荐
- 在python中requests模块怎么安装_Python requests模块在Windows下安装
发现一个爬虫库太方便了,而且支持python3! 安装方法在http://docs.python-requests.org/en/latest/user/install/#install很详细 只不过 ...
- python编译exe文件太大了_python编译windows下可执行的exe文件
python编译windows下可执行的exe文件的操作流程: 1.在安装python环境的windows下,安装 pyinstaller,请在dos下执行如下命令: pip install pyin ...
- Jenkins系列:5、wsl下的Jenkins编译Windows下的Qt程序并自动打包成exe
Jenkins系列:5.wsl下的Jenkins编译Windows下的Qt程序并自动打包成exe 文章目录 Jenkins系列:5.wsl下的Jenkins编译Windows下的Qt程序并自动打包成e ...
- oracle安装后开机很慢,Windows下安装Oracle拖慢开机速度的解决方法
环境:win7 + oracle R2 方法:将安装Oracle后自动开机启动的服务改为手动启动 步骤如下: 1.修改服务项 Ctrl + R,输入services.msc,打开服务列表,找到Orac ...
- linux node gyp 编译,windows下安装node-gyp
什么是node-gyp? gyp是一种根据c++源代码编译的工具,node-gyp就是为node编译c++扩展的时候使用的编译工具. 最近在研究native script需要使用到node-gyp,遇 ...
- Linux 下重新编译Windows下生成的Qt工程
原址:https://blog.csdn.net/Fanpei_moukoy/article/details/21613703 以下内容亲测通过 其实qt才是真正的跨平台,java简直太搞笑了,假跨平 ...
- 安装python3.x解释器步骤,Windows下使Python2.x版本的解释器与3.x共存的方法
在windows环境下用virtualenv将python2.x和python3打开命令行(CMD),输入python,如果出现下图则表示安装成功了 如果显示错误的话,请把Python运行目录添加到 ...
- 使用eclipse安装python插件_在windows下用eclipse + pydev插件来配置python的开发环境
在windows下用eclipse + pydev插件来配置python的开发环境 一.安装 python 可以到网上下个Windows版的python,官网为:https://www.python. ...
- snmpwalk 安装与使用详解-windows下
snmpwalk是SNMP的一个工具,它使用SNMP的GETNEXT请求查询指定OID(SNMP协议中的对象标识)入口的所有OID树信息,并显示给用户.通过snmpwalk也可以查看支持SNMP协议( ...
最新文章
- 【lidar】3D目标检测PointPillars:论文解读、代码解读、部署实现(2)
- Windows10安装Mysql5.7.19.0 msi 版本报错
- AMD猛攻数据中心市场,拿下15年来最高份额,英特尔DCG收入下滑20%
- 现行高考政策公平 辩论_为这些考生高考加20分?这样的政策对其他考生公平吗?榕和奉献...
- ios android 发东西,Android、IOS主动发事件给React Native
- 网络安全、Web安全、渗透测试之笔经面经总结(二)
- javascript 键值转换
- 汇顶科技【软件工程师】面经
- 让你难忘的一段情感故事是什么?
- 江西瑞金计算机网络设计工资多少,瑞金java工资一般多少
- 笔记本搜不到寝室路由的无线信号怎么办
- 147.对链表进行插入排序
- 企业微信hook,企业微信软件
- My_arduino(4)-------LiquidCrystal_I2C库文件
- 自来水公司SCADA调度系统方案
- 12星座的出生年月日性格_12星座出生日期性格特点
- 计划三年投入十亿资金,统信UOS生态腾飞加速
- 新手如何当好办公室主任?傻瓜才做“二当家的”,高手都懂这5个潜规则
- 安全性的十个永恒定律3
- Flink的CheckPoint机制
热门文章
- java stringbuffer原理_深入理解String, StringBuffer, StringBuilder的区别(基于JDK1.8)
- mysql 分页查询几种语法_各数据库2种分页语法支持
- copy 收到_离散内存与zero_copy的一些思考
- java main方法static_在java中为什么要把main方法定义为一个static方法?
- python 分词nlp,学习NLP的第四天——hanlp字典分词的Python实现,4,HanLP,词典
- 米家扫地机器人是石头代工_扫地机器人“两强”突进,选科沃斯还是石头科技?...
- 较为综合的c语言题目,c语言考试综合题.doc
- python读取坐标文本文件_使用python读取txt坐标文件生成挖空矿山_探矿批量
- matlab杜哈梅尔积分,非平稳地震作用下桥梁系统碰撞间隙宽度的概率评价方法与流程...
- 学计算机学的想死,“我不是学习机器,真的好想死”