91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PostgreSQL怎么編譯Windows下的mysql_fdw

發布時間:2021-07-06 10:36:54 來源:億速云 閱讀:426 作者:chen 欄目:大數據

這篇文章主要介紹“PostgreSQL怎么編譯Windows下的mysql_fdw”,在日常操作中,相信很多人在PostgreSQL怎么編譯Windows下的mysql_fdw問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”PostgreSQL怎么編譯Windows下的mysql_fdw”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

這里提供一個蹩腳的mysql_fdw在Windows下的編譯方法,說蹩腳是因為這個步驟不是自動化的。所有的Windows編譯腳本都在 src/tools/msvc 下邊,有興趣可以讀一讀,主要是Perl腳本,不難理解。

1、下載安裝mysql客戶端

https://dev.mysql.com/downloads/installer/

下載mysql-installer-web-community即可,不需要下載那個幾百M的,安裝時選擇 MySQL Connector/C。

我把目錄放在 C:\MySQL\6.1,所有的 include、lib都在這里。

2、下載mysql_fdw源代碼,放到 contrib下,并且在Makefile增加

https://github.com/EnterpriseDB/mysql_fdw

		ltree		\
		mysql_fdw	\
		oid2name	\

3、修改 src/tools/msvc/Solution.pm
sub AddProject 在這里增加最后兩行,用前兩行參考位置,如果安裝位置有區別請自行調整。

	push @{ $self->{projects}->{$folder} }, $proj;
	$proj->AddDir($initialdir) if ($initialdir);
	if ($name eq 'mysql_fdw')
	{
		$proj->AddIncludeDir('C:\MySQL\6.1\include');
		$proj->AddLibrary('C:\MySQL\6.1\lib\libmysql.lib');
	}

4、修改 src/include/pg_config_manual.h 增加

#define _MYSQL_LIBNAME "C:\\MySQL\\6.1\\lib\\libmysql.dll"

5、修改 mysql_fdw.c

增加一個引用

#include "dynloader.h"

 代碼修改

mysql_dll_handle = dlopen(_MYSQL_LIBNAME, RTLD_LAZY | RTLD_DEEPBIND);
改為
mysql_dll_handle = dlopen(_MYSQL_LIBNAME, 1);

6、編譯PG,參考我博客里的文章

有一堆警告,編譯通過,測試:

flying=# create extension mysql_fdw;
CREATE EXTENSION

flying=# CREATE SERVER mysql_server
flying-#      FOREIGN DATA WRAPPER mysql_fdw
flying-#      OPTIONS (host '127.0.0.1', port '3306');
CREATE SERVER

flying=# CREATE USER MAPPING FOR "Quan Zongliang"
flying-# SERVER mysql_server
flying-# OPTIONS (username 'foo', password 'bar');
CREATE USER MAPPING

flying=# CREATE FOREIGN TABLE warehouse(
flying(#      warehouse_id int,
flying(#      warehouse_name text,
flying(#      warehouse_created timestamp)
flying-# SERVER mysql_server
flying-#      OPTIONS (dbname 'db', table_name 'warehouse');
CREATE FOREIGN TABLE

flying=# select * from warehouse;
ERROR:  failed to connect to MySQL: Can't connect to MySQL server on '127.0.0.1' (10061)

因為我并沒有裝MySQL,連接會失敗,但已經說明它是正常的。

到此,關于“PostgreSQL怎么編譯Windows下的mysql_fdw”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

慈利县| 南和县| 富蕴县| 保山市| 平遥县| 襄垣县| 威宁| 宣威市| 乐昌市| 鸡西市| 阿荣旗| 阳西县| 临朐县| 射阳县| 星座| 汝城县| 斗六市| 措勤县| 江阴市| 千阳县| 张北县| 靖安县| 青海省| 壶关县| 永定县| 启东市| 绥化市| 肇州县| 青浦区| 隆尧县| 新乐市| 浮梁县| 秦皇岛市| 灯塔市| 大宁县| 轮台县| 资阳市| 芦溪县| 平顺县| 大英县| 张北县|