Oracle 10g DBLink 를 통 해 MySQL 예제 에 접근
rpm -qa |grep mysql
mysql-5.0.45-7.el5
mysql-5.0.45-7.el5
두 개의 기록 을 얻 었 습 니 다.하 나 는 x86 입 니 다.64 의 하 나 는 i386 의 것 이다.my sql 클 라 이언 트 소프트웨어 가 설치 되 어 있 지 않 은 것 을 보면 설치 해 야 합 니 다.
yum install mysql
yum install mysql.i386
이 Oracle 이 있 는 컴퓨터 가 대상 호스트 인 MySQL 데이터 베 이 스 를 연결 할 수 있 는 지 검증 해 야 합 니 다.
mysql -h 192.168.1.1 -u root -p mysql
2.Oracle 이 있 는 컴퓨터 에 MySQL ODBC 클 라 이언 트 가 설치 되 어 있 는 지 확인 하고 x8664 버 전과 i386 버 전 모두 설치 해 야 합 니 다.
rpm -qa |grep mysql-connect
mysql-connector-odbc 가 설치 되 어 있 지 않 으 면 아래 명령 으로 다운로드 하고 설치 합 니 다.mysql-connector-odbc 다운로드:
wget ftp://mirror.switch.ch/pool/3/mirror/centos/5.2/os/i386/CentO S/mysql-connector-odbc-3.51.12-2.2.i386.rpm
mysql-connector-odbc 설치:
rpm -ivh mysql-connector-odbc-3.51.12-2.2.i386.rpm
알림 받 기
libltdl.so.3 is needed by mysql-connector-odbc-3.51.12-2.2.i386 , libtool i386 , libtool-ltdl.i386:
yum list *.i386|grep libtool
yum install libtool-ltdl.i386
3.Oracle 이 있 는 컴퓨터 에서/etc/odbc.ini 파일 을 편집 하고 ODBC 작업 테스트
vi /etc/odbc.ini
\#odbc.ini 내용 은 다음 과 같 습 니 다
[test]
Driver=/usr/lib64/libmyodbc3.so
Description=MySQL
Server=192.168.1.1(MySQL Server IP)
Port=3306
User= (MySQL Username)
UID= (MySQL Username)
Password= (MySQL PWD)
Database= (MySQL Database Name)
Option=3
Socket=
명령 행 에서 다음 명령 을 수행 합 니 다.MySQL Client 창 에 순조롭게 로그 인 할 수 있어 야 합 니 다.즉,ODBC 기능 이 정상 임 을 증명 합 니 다.
isql -v test
quit
4,hs 프로필 vi/ora 10g/hs/admin/inittest.ora 편집(파일 이름 의 파란색 부분 은 odbc.ini 의 파란색 이름 임 을 주의 하 십시오)
HS_FDS_CONNECT_INFO = test
HS_FDS_TRACE_LEVEL = on( , off)
HS_FDS_TRACE_FILE_NAME = test.trc
HS_FDS_SHAREABLE_NAME=/usr/lib/libmyodbc3.so
set ODBCINI=/etc/odbc.ini
5.Oracle 이 있 는 컴퓨터 의 Oracle listener 설정 파일 을 편집 하고 Oracle Listener 를 모 의 감청 방식 을 구축 하여 앞으로 dblink 를 구축 할 준 비 를 합 니 다.vi/ora 10g/network/admin/listener.ora 는 다음 과 같은 문 구 를 추가 합 니 다.
(SID_DESC =
(SID_NAME = test)
(ORACLE_HOME = /ora10g)
(PROGRAM = hsodbc)
(ENVS=LD_LIBRARY_PATH=/ora10g/lib32:/usr/lib64:/ora10g/lib)
)
listener.ora 파일 의 현재 내용 은:
SID_LIST_LISTENER = (
SID_LIST =
(SID_DESC =
(ORACLE_HOME = /ora10g)
(PROGRAM = extproc)
(GLOBAL_DBNAME=prod)
(SID_NAME=prod)
)
(SID_DESC =
(SID_NAME = test)
(ORACLE_HOME = /ora10g)
(PROGRAM = hsodbc)
(ENVS=LD_LIBRARY_PATH=/ora10g/lib32:/usr/lib64:/ora10g/lib)
)
)
LISTENER = (
DESCRIPTION_LIST =
(DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521)) )
)
Listener 를 적용 하기 위해 lsnrctl reload 를 실행 합 니 다:
su C oracle
lsnrctl reload
LSNRCTL for Linux: Version 10.2.0.4.0 - Production on 09-FEB-2009 13:59:38 Copyright (c) 1991, 2007, Oracle.
All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
The command completed successfully
lsnrctl status
LSNRCTL for Linux: Version 10.2.0.4.0 - Production on 12-FEB-2009 08:56:00
Copyright (c) 1991, 2007, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 10.2.0.4.0 - Production
Start Date 03-JAN-2009 03:47:39
Uptime 40 days 5 hr. 8 min. 20 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /ora10g/network/admin/listener.ora
Listener Log File /ora10g/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=1521)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "test" has 1 instance(s).
Instance "test", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
6.Oracle 이 있 는 컴퓨터 의 tnsnames.ora 파일 을 편집 하여 dblink 를 만 들 수 있 습 니 다.이 tnsnames 설정 은 tnsping 을 지원 할 수 있 지만 sqlplus 로그 인 은 지원 되 지 않 습 니 다.dblink:
vi /ora10g/network/admin/tnsnames.ora
test =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SID = test)
)
(HS = OK)
)
에 만 사 용 됩 니 다.7.Oracle Database 에 dblink:
create public database link MYSQL
connect to "mysql username" identified by "mysql pwd"
using '(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP) (HOST = 127.0.0.1) (PORT =1521) )
(CONNECT_DATA = (SID= test) )
(HS=OK)
)';
를 만 들 려 면 사용자 이름과 비밀번호 에 더 블 따옴표 가 필요 합 니 다.그렇지 않 으 면 Oracle 이 전송 하 는 것 은 모두 대문자 로 MySQL 에 로그 인 할 수 없 을 수도 있 습 니 다.8.MySQL 의 표 이름 의 대소 문자 가 민감 하기 때문에 SQL 조 회 를 할 때 표 이름 을 작은 따옴표 로 확대 해 야 합 니 다
select * from "tablename"@test
.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
kintone에서 사용하는 메일 서비스 요약kintone에는 이른바 메일 서버 기능이 없기 때문에, 예를 들면 「고객 마스터에 등록된 메일 주소로 메일을 송신한다」라고 하는 경우는 외부의 메일 서비스를 이용하게 됩니다. kintone 개발시 자주 사용하는 메...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.