oracle 連接greenplum,Oracle通過DBLINK訪問GreenPlum

為多個數據庫之間的整合和遷移做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 ? ? ? ? ? ? ? ? ? ?* 第 1 行出現錯誤: ORA-01017: 用戶名/口令無效; 登錄被拒絕 FATAL: no pg_hba.conf entry for host "10.46.182.233", user "DBA", database "loglapdb", SSL off {28000,NativeErr = 210} ORA-02063: 緊接著 2 lines (起自 POSTGRESQL) 這個錯誤看起來好像非常簡單,就是密碼錯誤,問題是已經確認密碼無誤且可以使用psql登陸,死活不理解什么原因,去查看網關日志如下: Exiting hgoinit, rc=0 at 2013/05/10-13:31:36 Entered hgolgon at 2013/05/10-13:31:36 ?reco:0, name:DBA, tflag:0 Entered hgosuec at 2013/05/10-13:31:36 Exiting hgosuec, rc=0 at 2013/05/10-13:31:36 HOSGIP for "HS_FDS_RECOVERY_ACCOUNT" returned "RECOVER" HOSGIP for "HS_FDS_TRANSACTION_LOG" returned "HS_TRANSACTION_LOG" HOSGIP for "HS_FDS_TIMESTAMP_MAPPING" returned "DATE" HOSGIP for "HS_FDS_DATE_MAPPING" returned "DATE" HOSGIP for "HS_FDS_CHARACTER_SEMANTICS" returned "FALSE" HOSGIP for "HS_FDS_MAP_NCHAR" returned "TRUE" HOSGIP for "HS_FDS_RESULTSET_SUPPORT" returned "FALSE" HOSGIP for "HS_FDS_RSET_RETURN_ROWCOUNT" returned "FALSE" HOSGIP for "HS_FDS_PROC_IS_FUNC" returned "FALSE" HOSGIP for "HS_FDS_REPORT_REAL_AS_DOUBLE" returned "FALSE" ?using DBA as default value for "HS_FDS_DEFAULT_OWNER" HOSGIP for "HS_SQL_HANDLE_STMT_REUSE" returned "FALSE" Entered hgocont at 2013/05/10-13:31:36 ?HS_FDS_CONNECT_INFO = "gp" ?RC=-1 from HOSGIP for "HS_FDS_CONNECT_STRING" Entered hgogenconstr at 2013/05/10-13:31:36 ?dsn:gp, name:DBA ?optn: Entered hgocip at 2013/05/10-13:31:36 ?dsn:gp Exiting hgocip, rc=0 at 2013/05/10-13:31:36 Exiting hgogenconstr, rc=0 at 2013/05/10-13:31:36 Entered hgopoer at 2013/05/10-13:31:36 后來看到網友也出現了類似的問題,原來是用戶名也要用雙引號括起來,我們從這里也可以看到傳輸的用戶名是大寫的"DBA": ?reco:0, name:DBA, tflag:0 但實際上在greenplum當中的確實小寫的"dba",包括在定義dblink中的密碼也要用雙引號,當然還有sourcename。 SQL> drop public database link postgresql; 數據庫鏈接已刪除。 SQL> CREATE PUBLIC DATABASE LINK postgresql CONNECT TO "dba" IDENTIFIED BY "isdb a" USING 'gp'; 數據庫鏈接已創建。 SQL> select * from "a1"@postgresql; 未選定行 6.1. 查詢指定字段 SQL> Select Name From "t1"@postgresql; Select Name From "t1"@postgresql ? ? ? ?* 第 1 行出現錯誤: ORA-00904: "NAME": 標識符無效 也必須用雙引號: SQL> Select Name From "t1"@postgresql; Select Name From "t1"@postgresql ? ? ? ?* 第 1 行出現錯誤: ORA-00904: "NAME": 標識符無效 另外需要注意的在greenplum中都是小寫的表名和字段名稱。 6.2. ORA-00600: Internal errorcode, arguments:[HO define: Long fetch], [], [], [], [], [], [], [] 查詢的時候報錯,確認是個hs dg4odbc bug,不過這個bug只是在使用PLD的時候出現,使用SQL*PLUS沒有觸發,目前我使用的版本是11.2.0.1.0,具體見Bug 4391058,看描述說在11.2已經修復了,怎么我還會遇到呢?有人反饋說使用具體字段列舉替代”*“,可是我這邊還是無效。 -EOF-

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/392207.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/392207.shtml
英文地址,請注明出處:http://en.pswp.cn/news/392207.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

如何使用React和Redux前端創建Rails項目

by Mark Hopson馬克霍普森(Mark Hopson) 如何使用React和Redux前端(加上Typescript!)創建Rails項目 (How to create a Rails project with a React and Redux front-end (plus Typescript!)) 在Rails項目中使用React和Redux設置單頁Javascript App的完整指南。 (A …

分布與并行計算—用任務管理器畫CPU正弦曲線(Java)

class drawSin implements Runnable{Overridepublic void run() {final double SPLIT 0.01;// 角度的分割final int COUNT (int) (2 / SPLIT);// 2PI分割的次數,也就是2/0.01個,正好是一周final double PI Math.PI;final int interval 100;// 時間間…

Rails文件上傳file_field報錯Encoding::UndefinedConversionError

服務器用的是ubuntu12 64bit,環境是ruby1.9.3rails3mysql,測試是在windows2003上。 上傳一個【.gitconfig】文件,沒有問題,上傳【新浪微博數據挖掘.pdf】報錯,上傳【back.jpg】報錯。 下面是兩段信息,是從【…

好久不來這里寫東西了.

我正準備離開學校去實現自己的目標,很清楚自己在學校的... ...做共享程序員,就不得不考慮些商業上的東西,自己要吃飯啊!我想我是該好好的處理一下這二者的關系. 轉載于:https://www.cnblogs.com/wangxiang/archive/2007/01/01/609714.html

Asp.net mvc中使用配置Unity

第一步:添加unity.mvc 第二步:在添加之后會在app_start中生成UnityConfig.cs,UnityMvcActivator.cs 第三步:使用 第四步:效果展示 轉載于:https://www.cnblogs.com/WJ--NET/p/7117839.html

頂級數據恢復_頂級R數據科學圖書館

頂級數據恢復Data science is the discipline of making data useful數據科學是使數據有用的學科 When we talk about the top programming language for Data Science, we often find Python to be the best fit for the topic. Sure, Python is undoubtedly an excellent cho…

xp系統oracle數據庫,Oracle10g 數據庫的安裝基于windowsXP

Oracle的安裝一、首先去官網下載自身系統相對應的數據庫軟件http://www.oracle.com/cn/index.htmlOracle軟件本身是免費的,個人用途完全沒關系,商業用途并被發現才會被Oracle所要求收費,收費買的不是軟件,而是授權。何謂授權&…

了解React Native中的不同JavaScript環境

by Khoa Pham通過Khoa Pham 了解React Native中的不同JavaScript環境 (Get to know different JavaScript environments in React Native) React Native can be very easy to get started with, and then at some point problems occur and we need to dive deep into it.Reac…

分布與并行計算—生命游戲(Java)

生命游戲其實是一個零玩家游戲,它包括一個二維矩形世界,這個世界中的每個方格居住著一個活著的或死了的細胞。一個細胞在下一個時刻生死取決于相鄰八個方格中活著的或死了的細胞的數量。如果相鄰方格活著的細胞數量過多,這個細胞會因為資源匱…

正確認識 Vista 激活期限

當我們在安裝 Vista 時,可以不輸入序列號進行安裝,這和以往的操作系統安裝有所不同,我們不必再為安裝系統時找不到我們的序列號標簽而發愁。如果不輸入序列號而繼續安裝系統,那么系統將提示我們有30天的激活期限!這里的…

Oracle使用hs odbc連接mssql2008

1.創建odbc 2.在 product\11.2.0\dbhome_1\hs\admin\ 下拷貝initdg4odbc,把名字改為initcrmsql(init所建odbc的名稱) HS_FDS_CONNECT_INFO crmsql #odbc名稱 HS_FDS_TRACE_LEVEL 0 HS_FDS_RECOVERY_ACCOUNTsa #要連接的數據庫名稱 HS_FDS_RECOVERY_PWD…

oracle修改物化視圖字段,獲取物化視圖字段的修改矢量(一)

當表建立了物化視圖日志之后,表的DML修改會被記錄到物化視圖日志中,而物化視圖日志則包含了一個修改矢量,來記錄哪個列被修改。在文章列的修改矢量可以通過2的N次方來獲得,也就是POWER(2, N)。而N的值,就是列的位置。但…

聚合 數據處理_R中聚合的簡介:強大的數據處理工具

聚合 數據處理by Satyam Singh Chauhan薩蒂揚辛格喬漢(Satyam Singh Chauhan) R中聚合的簡介:強大的數據處理工具 (An introduction to aggregates in R: a powerful tool for playing with data) Data Visualization is not just about colors and graphs. It’s …

大數據 notebook_Dockerless Notebook:數據科學期待已久的未來

大數據 notebookData science is hard. Data scientists spend hours figuring out how to install that Python package on their laptops. Data scientists read many pages of Google search results to connect to that database. Data scientists write a detailed docume…

【NGN學習筆記】6 代理(Proxy)和背靠背用戶代理(B2BUA)

1. 什么是Proxy模式? 按照RFC3261中的定義,Proxy服務器是一個中間的實體,它本身即作為客戶端也作為服務端,為其他客戶端提供請求的轉發服務。一個Proxy服務器首先提供的是路由服務,也就是說保證請求被發到更加”靠近”…

分布與并行計算—并行計算π(Java)

并行計算π public class pithread extends Thread {private static long mini1000000000;private long start,diff;double sum0;double cur1/(double)mini;public pithread(long start,long diff) {this.startstart;this.diffdiff;}Overridepublic void run() {long istart;f…

linux復制文件跳過相同,Linux cp指令,怎么跳過相同的文件

1、使用cp命令的-n參數即可跳過相同的文件 。2、cp命令使用詳解:1)、用法:cp [選項]... [-T] 源文件 目標文件或:cp [選項]... 源文件... 目錄或:cp [選項]... -t 目錄 源文件...將源文件復制至目標文件,或將多個源文件…

eclipse類自動生成注釋

1.創建新類時自動生成注釋 window->preference->java->code styple->code template 當你選擇到這部的時候就會看見右側有一個框顯示出code這個選項,你點開這個選項,點一下他下面的New …

rman恢復

--建表create table sales( product_id number(10), sales_date date, sales_cost number(10,2), status varchar2(20));--插數據insert into sales values (1,sysdate-90,18.23,inactive);commit; --啟用rman做全庫備份 運行D:\autobackup\rman\backup_orcl.bat 生成…

微軟大數據_我對Microsoft的數據科學采訪

微軟大數據Microsoft was one of the software companies that come to hire interns at my university for 2021 summers. This year, it was the first time that Microsoft offered any Data Science Internship for pre-final year undergraduate students.微軟是到2021年夏…