2016-07-14 7 views
0

SQL 데이터베이스에 연결하려면 로컬 포트를 원격 시스템으로 리디렉션하는 터널을 먼저 만들어야합니다. 터널의 포트 번호에 따라 다른 DB 서버에 연결합니다.MySql에서 데이터베이스를 고유하게 식별하는 방법은 무엇입니까?

다른 말로하면 : 나는 항상 localhost와 동일한 매개 변수를 사용하여 MySql에 연결합니다. 미리 생성 된 터널은 내가 실제로 연결하는 서버를 정의합니다.

테스트 용으로 동일한 스키마를 가진 여러 개의 MySql 서버가 있으며 실제로 연결된 데이터베이스를 알고 싶습니다 (내 스크립트는 알고있는 터널 매개 변수에 액세스 할 수 없습니다).

새 데이터베이스를 만들 때 GUID 또는 그 데이터베이스에 할당되는 항목이 있습니까? 아마도 쿼리로 검색 할 수있는 무엇인가 information_schema

답변

1

아니요, 스키마 이름은 식별자입니다.

각각의 MySQL 인스턴스에 server_id을 고유하게 설정할 수 있습니다. 이 정수는 MySQL 인스턴스의 my.cnf 파일에서 구성하는 1 - 2 -1 범위의 정수입니다. 보통 server_id

http://dev.mysql.com/doc/refman/5.7/en/replication-options.html#option_mysqld_server-id

는 바이너리 로그의 변화에 ​​태그를 사용되므로 복제 세트는 이미 본 적이 변화를 재생하지 않습니다.

그러나 당신은 어떤 SQL 쿼리의 server_id 읽을 수 있습니다, 당신은 당신이 어떤 디자인에 따라 모든 인스턴스의 server_id을 설정 한 가정, 당신은에있어 어떤 MySQL 인스턴스 알 수

SELECT @@server_id; 

을 그리고 그 값을 기준으로 그래서 알게 될거야.

+0

엄청나게 필요한 것! –

관련 문제