2016-01-22 43 views
0

我已經知道這個oracle數據庫,嘗試了幾個命令的組合,但仍然無法連接。下面是我最近嘗試連接的 。cx_Oracle連接問題

ip = "173.37.65.217" #datamart 
port = '1810' 
SID = 'fntr3prd.cisco.com' #'ARCHIVE_HC6_ARCH'#"fntr3prd" 
username = 'xx' # I don’t have permission to share 
password = 'xx' # I don’t have permission to share 
dsn_tns = cx_Oracle.makedsn(ip, port, SID) 
con = cx_Oracle.connect(username,password,dsn_tns) 
cur = con.cursor() 

cur.execute("select * from ARCHIVE_HC6_ARCH」) 

的例外,我得到...

Traceback (most recent call last): File "/Users/tlombard/Desktop/FY16Metrics/ppmArchive.py", line 12, in con = cx_Oracle.connect(username, password, dsn_tns) DatabaseError: ORA-12505: TNS:listener does not currently know of SID given in connect descriptor

注:如你可以看到下面,我能夠連接到這個數據庫用sqlplus ...

SQL> DESC ARCHIVE_HC6_ARCH Name Null? Type ----------------------------------------- -------- ---------------------------- ARCH_FISCAL_DT NOT NULL DATE HC NUMBER DE_DT_YN VARCHAR2(30) RESOURCE_POSITION VARCHAR2(150) CLIENT_FUNDED
VARCHAR2(200) RESOURCE_NAME VARCHAR2(300) RESOURCE_DEPT_NAME VARCHAR2(150) RESOURCE_DEPT_NO
NUMBER RESOURCE_ID VARCHAR2(50) RESOURCE_MANAGER
VARCHAR2(200) RESOURCE_POOL VARCHAR2(255) RESOURCE_ROLE
VARCHAR2(255) RESOURCE_TITLE VARCHAR2(500) RESOURCE_TYPE VARCHAR2(7) ROLE_CATEGORY VARCHAR2(255) ROLE_GROUP VARCHAR2(255) L0 VARCHAR2(20) L1
VARCHAR2(20) L2 VARCHAR2(20) L3 VARCHAR2(20) L4 VARCHAR2(20) UNNAMED VARCHAR2(30) WORK_COUNTRY VARCHAR2(100) WORK_SITE VARCHAR2(300) MONTH_KEY NUMBER MONTH VARCHAR2(50) QUARTER_KEY NUMBER QUARTER_NAME VARCHAR2(50) YEAR_NAME VARCHAR2(50) BPF VARCHAR2(255) PROJECT_PRIORITY VARCHAR2(100) PROJECT_STATUS
VARCHAR2(200) PRODUCT_FAMILY VARCHAR2(200) PIN_AGGREGATED VARCHAR2(1000) PROJECT_OS VARCHAR2(2000) PLATFORM VARCHAR2(765) PROJECT_CLASS VARCHAR2(100) PROJECT_ID VARCHAR2(300) PROJECT_INITIATIVE
VARCHAR2(150) PROJECT_LEAD VARCHAR2(150) PROJECT_MGR
VARCHAR2(150) PROJECT_CATEGORY VARCHAR2(300) PROJECT_NAME VARCHAR2(1500) PROJECT_HEALTH
VARCHAR2(100) PLANNED_RELEASE VARCHAR2(500) PROJECT_TECH_AREA VARCHAR2(150) PROJECT_TYPE
VARCHAR2(150) WORK_COUNTRY_SORT VARCHAR2(15) PROGRAM_NAME VARCHAR2(500) YEAR_KEY NUMBER ARCH_FISCAL_MONTH VARCHAR2(100) SOLUTION VARCHAR2(500) PROJECT_ROLE_CATEGORY VARCHAR2(255) RESORUCE_DEPT_FUNCTION
VARCHAR2(500) RESOURCE_MANAGER_ID VARCHAR2(255) RESOURCE_ACTIVE VARCHAR2(50) PROJECT_ACTIVE
VARCHAR2(100) PROJECT_ORG VARCHAR2(255) L5
VARCHAR2(20) QUADRANT VARCHAR2(255)

SQL>

什麼任何想法我應該嘗試下一個?

+0

SID通常不是服務器的dns名稱,你有沒有其他方法可以訪問數據庫Toad? – John

回答

0

假設你有一些其他類型的訪問數據庫的嘗試

SELECT sys_context('USERENV', 'SID') FROM DUAL; 

,並用它來代替

SID = 'fntr3prd.cisco.com' 
0

您是否已經安裝了oracle客戶端併爲其配置了LDAP配置?