반응형
Oracle Database Link - MySQL 등가물?
Oracle 데이터베이스 링크를 사용하면 여러 물리적 데이터베이스에 대해 쿼리할 수 있습니다.
MySQL에 해당하는 것이 있습니까?해결 방법?
두 개의 실제 데이터베이스에 있는 두 개의 테이블에서 조인 쿼리를 실행하려고 합니다.MySQL에서 가능합니까?
귀사의 시나리오에 대해 다음과 같은 네 가지 해결 방법을 생각해 볼 수 있습니다.
- 외부 테이블을 쿼리할 때 완전 수식 테이블 이름을 사용합니다. MySQL은
dbname.tablename
- 현재 데이터베이스 범위 밖의 테이블에 액세스할 수 없습니다.이렇게 하려면 현재 연결된 사용자가 다른 실제 데이터베이스의 요청된 테이블에서 읽을 수 있는 적절한 권한이 있어야 합니다. - 외부 데이터베이스가 다른 MySQL 서버(같은 시스템 또는 네트워크 연결)에서 실행 중인 경우 복제를 사용하여 원격 테이블의 읽기 전용 복사본을 지속적으로 업데이트할 수 있습니다.두 개의 개별 MySQL 인스턴스를 실행하는 경우에만 복제가 가능합니다.
- MySQL 스토리지 엔진을 사용하여 테이블을 현재 데이터베이스로 가상으로 가져옵니다.이렇게 하면 자격 증명이 다음과 같이 제공되므로 현재 사용자에게 두 번째 데이터베이스에 대한 액세스 권한을 부여해야 하는 요구 사항이 완화됩니다.
CREATE TABLE
- 사용 시 설명FEDERATED
저장 엔진이것은 다른 물리적 서버 또는 다른 MySQL 인스턴스에서 실행되는 데이터베이스에서도 작동합니다.저는 이것이 가장 좋지 않은 수행 방법이 될 것이라고 생각하며, 사용 시나리오와 요구 사항에 따라 다소 중요한 몇 가지 제한이 있습니다. - 이것은 방법 1의 확장입니다.외부 테이블에서 정보를 요청할 때마다 정규화된 테이블 이름을 지정해야 하는 대신, 단순한 데이터베이스를 기반으로 현재 데이터베이스 내에 보기를 만들 수 있습니다.
SELECT <<columns>> FROM <<database>>.<<table>>
이것은 방법과 비슷합니다.FEDERATED
-method는 작동하지만 동일한 MySQL 인스턴스의 테이블로 제한됩니다.
개인적으로 (4) 방법이 가장 유용하다고 생각하지만, 다른 방법도 요구 사항에 따라 해결 방법이 될 수 있습니다.
현재 MySQL 등변 메서드는 없습니다. 이 게시물을 참조하십시오.그러나 포스터에서 알 수 있듯이 데이터베이스가 동일한 컴퓨터에 있는 경우 테이블 이름 앞에 데이터베이스 이름을 추가하는 것만으로 해결할 수 있습니다.
6년이 지났지만 아직도 해결되지 않았습니다.문을 닫았고 아마도 더 이상 그들의 할 일 목록에 없을 것입니다.
언급URL : https://stackoverflow.com/questions/1565993/oracle-database-link-mysql-equivalent
반응형
'sourcecode' 카테고리의 다른 글
Angular 6 날짜별 객체 배열 정렬 (0) | 2023.06.12 |
---|---|
TypeScript의 클래스에 메모지 사용 (0) | 2023.06.12 |
문자열의 내용을 C#의 클립보드에 복사하려면 어떻게 해야 합니까? (0) | 2023.06.12 |
MySQL에서 목록을 열고 전치하는 방법 (0) | 2023.06.12 |
Firebase 계정에서 Firebase 참조 URL을 어디서 찾을 수 있습니까? (0) | 2023.06.12 |