下载mysql_fdw项目文件:https://pgxn.org/dist/mysql_fdw/

注:我使用的是ubuntu18.04,可以直接在仓库查看是否有二级制安装文件,当然是有的啦,这是很方便的一个方法

  1. $ sudo apt search fdw
  2. Sorting... Done
  3. Full Text Search... Done
  4. postgresql-10-mysql-fdw/bionic 2.3.0-2 amd64
  5. Postgres 10 Foreign Data Wrapper for MySQL

 所以直接安装完事

  1. $ sudo apt install postgresql-10-mysql-fdw

  

1.好了还是进入正题,首先进入项目目录

  1. $ cd mysql_fdw/

2.源码目录下直接提供的Makefile文件,按理说直接make就可以进行编译,哈哈哈哈,不会那么简单的,编译依赖会让你对它烦的抓脚,所以看看READ.md吧.

其中说的很清楚:一 需要postgresql相关的依赖由pg_config提供; 二 需要mysql相关的依赖由mysql_config提供

  1. This PostgreSQL extension implements a Foreign Data Wrapper (FDW) for
  2. [MySQL][1].
  3.  
  4. Please note that this version of mysql_fdw works with PostgreSQL and EDB Postgres Advanced Server 9.5, 9.6, 10, 11, 12, and 13.
  5.  
  6. 1. Installation
  7. ---------------
  8. To compile the [MySQL][1] foreign data wrapper, MySQL's C client library is needed. This library can be downloaded from the official [MySQL website][1].
  9.  
  10. 1. To build on POSIX-compliant systems you need to ensure the `pg_config` executable is in your path when you run `make`. This executable is typically in your PostgreSQL installation's `bin` directory. For example: ```
  11. $ export PATH=/usr/local/pgsql/bin/:$PATH
  12. ```
  13. 2. The `mysql_config` must also be in the path, it resides in the MySQL `bin` directory.
  14. ```
  15. $ export PATH=/usr/local/mysql/bin/:$PATH
  16. ```
  17. 3. Compile the code using make.
  18. ```
  19. $ make USE_PGXS=1
  20. ```
  21. 4. Finally install the foreign data wrapper.
  22. ```
  23. $ make USE_PGXS=1 install
  24. ```
  25. Not that we have tested the `mysql_fdw` extension only on MacOS and Ubuntu systems, but other \*NIX's should also work.

3.接下来开始编译

  1. make USE_PGXS=1

会出现下面的报错

  1. make: mysql_config: Command not found
  2. Makefile:58: ../../src/Makefile.global: No such file or directory
  3. Makefile:59: /contrib/contrib-global.mk: No such file or directory

解决:make: mysql_config: Command not found ,安装 libmysqlclient-dev

  1. sudo apt install libmysqlclient-dev

解决

  1. Makefile:58: ../../src/Makefile.global: No such file or directory
  2. Makefile:59: /contrib/contrib-global.mk: No such file or directory 安装 postgresql-server-dev-all,postgresql-common
  1.  
  1. sudo apt-get install postgresql-server-dev-all
  2. sudo apt-get install postgresql-common

4.然后便可以愉快的编译了

  1. make USE_PGXS=1 

5.安装

  1. make USE_PGXS=1 install

  

  

postgresql的mysql外部数据扩展mysql_fdw编译及安装的更多相关文章

  1. PostgreSQL 优势,MySQL 数据库自身的特性并不十分丰富,触发器和存储过程的支持较弱,Greenplum、AWS 的 Redshift 等都是基于 PostgreSQL 开发的

    PostgreSQL 优势 2016-10-20 21:36 686人阅读 评论(0) 收藏 举报  分类: MYSQL数据库(5)  PostgreSQL 是一个自由的对象-关系数据库服务器(数据库 ...

  2. Docker 安装mysql容器数据卷挂载到宿主机

    环境 Centos:7 Docker: 17.05-ce Mysql: 5.7 1. Mysql外部数据和配置文件路径 msyql配置文件路径:/etc/mysql mysql数据卷路径:/var/l ...

  3. PostgreSQL使用MySQL外表(mysql_fdw)

    postgres使用mysql外表 转载请注明出处https://www.cnblogs.com/funnyzpc/p/14223167.html 浅谈 postgres不知不觉已经升到了版本13,记 ...

  4. 试图使用未在此报表服务器中注册或此版 Reporting Services 不支持的数据扩展插件“Devart.Data.PostgreSql”

    数据源用的是Postgresql 我在Deploy Report的时候出现这条ErrorMessage Error 2 试图使用未在此报表服务器中注册或此版 Reporting Services 不支 ...

  5. MySQL 导入外部数据时报错:1153: Got a packet bigger than 'max_allowed_packet' 解决方案

    MySQL 导入外部数据时报错:1153: Got a packet bigger than 'max_allowed_packet' 解决方案 zoerywzhou@163.com http://w ...

  6. MySQL中地理位置数据扩展geometry的使用心得

    最近学习了些MySQL geometry数据存储和计算,在这里记录下. 1. 环境 geometry推荐在5.6版本以上使用,尽管大部分功能在5.5已经可用,除了距离计算函数st_distance等新 ...

  7. Flink 异步IO访问外部数据(mysql篇)

    接上篇:[翻译]Flink 异步I / O访问外部数据 最近看了大佬的博客,突然想起Async I/O方式是Blink 推给社区的一大重要功能,可以使用异步的方式获取外部数据,想着自己实现以下,项目上 ...

  8. MySQL 导入外部数据

    手工为数据库录入数据: 1 -- 使用数据库 2 use test; 3 4 -- 创建fruits数据表 5 create table fruits( 6 f_id char(10) not nul ...

  9. PostgreSQL与MySQL比较(转)

    Mysql 使用太广泛了,以至于我不得不将一些应用从mysql 迁移到postgresql, 很多开源软件都是以Mysql 作为数据库标准,并且以Mysql 作为抽象基础的,但是具体使用过程中,发现M ...

随机推荐

  1. 苹果 App Store 开始支持隐藏上架应用:只能通过链接下载

      据MacRumors报道,苹果公司最近宣布,正如其开发者网站上所概述的那样,App Store现在支持只能通过直接链接才能发现的隐藏应用.   图片来自 Apple 拥有不适合公开发布的应用的开发 ...

  2. Angular SSR 探究

    一般来说,普通的 Angular 应用是在 浏览器 中运行,在 DOM 中对页面进行渲染,并与用户进行交互.而 Angular Universal 是在 服务端 进行渲染(Server-Side Re ...

  3. 将java装进u盘指南

    将java装入u盘指南 idea 将下载好的idea的文件夹移动到u盘中.在idea的bin目录里找到idea.properties文件,在最后添加以下两行 idea.config.path=U:/I ...

  4. WinDBG详解进程初始化dll是如何加载的

    一:背景 1.讲故事 有朋友咨询个问题,他每次在调试 WinDbg 的时候,进程初始化断点之前都会有一些 dll 加载到进程中,比如下面这样: Microsoft (R) Windows Debugg ...

  5. Python中Print方法

    1 number1 = int(input("请输入第一个数:")) 2 number2 = int(input("请输入第二个数:")) 3 4 # 方法一: ...

  6. nacos集群搭建和反向代理

    搭建环境 安装ngin https://www.linuxprobe.com/linux-install-nginx.html 配置jdk1.8 https://blog.csdn.net/qq_42 ...

  7. Go语言核心36讲48

    你真的很棒,已经跟着我一起从最开始初识Go语言,一步一步地走到了这里. 在这之前的几十篇文章中,我向你一点一点地介绍了很多Go语言的核心知识,以及一些最最基础的标准库代码包.我想,你已经完全有能力独立 ...

  8. MSP430中断小实验——通过按键改变小灯闪烁频率

    本小实验基于MSP430f5529,不同的型号可能管脚和中断配置有所不同. 实现的功能为: 第一次按下按键后,系统以每 2 秒钟,指示灯暗 1 秒,亮 1 秒的方式闪烁.程序采用默认时钟配置: 第二次 ...

  9. 基于python的数学建模---非线性规划

    凸函数的非线性规划 minimize 求解的是局部最优解 简单的函数,无所谓 复杂的函数 初始值的设定很重要 scipy.optimize.minimize(fun,x0,args=(),method ...

  10. extern "C"的使用

    在使用C++开发程序时,有时使用到别人开发的第三方库,而这第三库是使用C开发的.直接使用会报错如下: cpp error LNK2019: 无法解析的外部符号 "int __cdecl su ...