为多个数据库之间的整合和迁移做POC,尝试使用Oracle Gateway和Heterogeneous Service来中转访问,测试过好多次,最终发现只有在
为多个数据库之间的整合和迁移做poc,尝试使用oracle gateway和heterogeneous service来中转访问,测试过好多次,最终发现只有在32位的oracle当中才能成功配置。
配置环境如下:
windows 2003 32bit 或 windows 2008 64bit
oracle10g 32bit 或 oracle11g 32bit
source and target:oracle 或 mysql 或 postgresql 或 greenplum ......
我的配置方式是使用一台独立终端来作为类似跳转的机器,实际的source db和target db均在其他的主机上,这样至少3台涉及到的主机。
Linux也是可以的,但是现在没实际用到,,唯一需要注意的unixODBC版本的问题,因此这里主要描述在Windows2008 DC Server当中访问GreenPlum的配置过程。
0. 安装Oracle Database
注意是含了一个实例,略。
1. 安装psqlodbc驱动
略。
2. 配置ODBC for GreenPlum
注意选择ANSI,使用UNICODE会对char等字符类型的字段无法查询和显示,略。
3. 配置hs sid
hs\admin\initgp.ora:
HS_FDS_CONNECT_INFO = gp
HS_FDS_TRACE_LEVEL = debug
4. 配置hs listener
listener.ora:
(SID_DESC =
(PROGRAM = dg4odbc)# hsodbc for 10g
(ORACLE_HOME = C:\oracle\product\11.2.0\dbhome_1)
(SID_NAME = gp)
#(ENVS= "LD_LIBRARY_PATH = /usr/lib:/u01/app/oracle/product/10.2.0/db_1/lib") # for linux
)
5. 配置tns
tnsnames.ora:
gp =
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
(CONNECT_DATA=(SID=gp))
(HS=OK)
)
6. 遇到的问题:
6.0. ORA-01017: 用户名/口令无效; 登录被拒绝
SQL> CREATE PUBLIC DATABASE LINK postgresql CONNECT TO dba IDENTIFIED BY "isdba"
USING 'gp';
数据库链接已创建。
SQL> select * from "a1"@postgresql;
select * from "a1"@postgresql

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号