龙蜥安装postgresql过程
1、yum直接安装(前提挂载完整的iso镜像):
postgresql14-devel-14.4-1PGDG.rhel8.x86_64.rpm
postgresql14-libs-14.4-1PGDG.rhel8.x86_64.rpm
postgresql14-server-14.4-1PGDG.rhel8.x86_64.rpm
postgresql14-14.4-1PGDG.rhel8.x86_64.rpm
postgresql14-contrib-14.4-1PGDG.rhel8.x86_64.rpm
2、编译freetds--sqlserver访问插件
./configure --prefix=/usr/local/freetds --enable-msdblib
make
make install
3、编译tds_fdw
LIBRARY_PATH=/usr/local/lib:/usr/local/freetds/include:/usr/local/freetds/lib make USE_PGXS=1 TDS_INCLUDE=-I/usr/local/freetds/include
make install
4、编译oracle_fdw
make
make install
5、在/etc/ld.so.conf添加环境并ldconfig
/usr/lib/oracle/12.1/client64/lib
/usr/local/freetds/lib
6、数据库相关设定
--创建外部fdw服务(oracle)
CREATE SERVER xxx
FOREIGN DATA WRAPPER oracle_fdw
OPTIONS (dbserver '//xx.xx.xx.xx:1521/orcl');
--创建外部fdw服务(sqlserver)
CREATE SERVER xxx
FOREIGN DATA WRAPPER tds_fdw
OPTIONS (
servername 'xx.xx.xx.xx',
port '1433',
database 'xx',
tds_version '7.1' -- TDS 协议版本
);
--授权服务给指定账户
GRANT USAGE ON FOREIGN SERVER hkhisdbtest TO hkeods;
--绑定指定账户与外部服务的账户
create USER MAPPING FOR hkeods
SERVER hkhisdbtest
OPTIONS (username 'sa', password 'Hkwj_123');
--导入外部服务下所有表
IMPORT FOREIGN SCHEMA xx
FROM SERVER xxx INTO xxx;
--其他适应性设定:
--sql不区分大小写(改postgresql.conf)
SQL_IDENTIFIER_CASE=lower
--禁用自动提交机制适应oracle习惯(改postgresql.conf)
autocommit=off