データベースリンクのセッション確認

(8.0.27)

mmm050(クライアント)

mmm066(DBリンク元)
↓DBリンク
mmm070(DBリンク先)

vim /etc/my.cnf

[mysqld]
federated=1

show engines;

create table tab1f(col1 int primary key)
engine = federated
connection='mysql://root:password@mmm070/test/tab1';

select * from tab1f;


-- パケット監視
tcpdump -A -i ens192 -nn src host 10.10.10.50 and dst host 10.10.10.70 and dst port 3306
tcpdump -A -i ens192 -nn src host 10.10.10.66 and dst host 10.10.10.70 and dst port 3306

tcpdump -A -i ens192 -nn src host 10.10.10.50 and dst host 10.10.10.66 and dst port 3306


クライアントからDBリンク元に接続し、DBリンクを使用するSQLを実行すると
クライアント→DBリンク元とDBリンク元→DBリンク先のそれぞれで通信が発生する
クライアント→DBリンク先の通信はない

 

(19c)

mmm050(クライアント)

mmm065(DBリンク元)
↓DBリンク
mmm071(DBリンク先)


create database link dblink1 connect to test identified by test using 'mmm071';

select * from dba_db_links;

select * from v$instance@dblink1;

 

-- パケット監視
tcpdump -A -i ens160 -nn src host 10.10.10.50 and dst host 10.10.10.71 and dst port 1521
tcpdump -A -i ens160 -nn src host 10.10.10.65 and dst host 10.10.10.71 and dst port 1521
tcpdump -A -i ens160 -nn src host 10.10.10.50 and dst host 10.10.10.65 and dst port 1521

クライアントからDBリンク元に接続し、DBリンクを使用するSQLを実行すると
クライアント→DBリンク元とDBリンク元→DBリンク先のそれぞれで通信が発生する
クライアント→DBリンク先の通信はない

 

(14)

mmm050(クライアント)

mmm070(DBリンク元)
↓DBリンク
mmm075(DBリンク先)


create extension postgres_fdw;

\dx
\dx+

drop server remote_postgres cascade;
create server remote_postgres foreign data wrapper postgres_fdw options (host 'mmm075', port '5432', dbname 'test');

\des+

create user mapping for public server remote_postgres options (password 'postgres');

\deu+

drop foreign table tab1f;
create foreign table tab1f(col1 int) server remote_postgres options (table_name 'tab1');

\det
\det+

select * from tab1f;

 

-- パケット監視
tcpdump -A -i ens192 -nn src host 10.10.10.50 and dst host 10.10.10.75 and dst port 5432
tcpdump -A -i ens192 -nn src host 10.10.10.70 and dst host 10.10.10.75 and dst port 5432
tcpdump -A -i ens192 -nn src host 10.10.10.50 and dst host 10.10.10.70 and dst port 5432

クライアントからDBリンク元に接続し、DBリンクを使用するSQLを実行すると
クライアント→DBリンク元とDBリンク元→DBリンク先のそれぞれで通信が発生する
クライアント→DBリンク先の通信はない

 

(2019)

mmm062(クライアント)

mmm061(DBリンク元)
↓DBリンク
mmm063(DBリンク先)


USE master
GO  
EXEC master.dbo.sp_addlinkedserver
    @server = N'MMM063',
    @srvproduct=N'SQL Server' ;  
GO  


USE test
GO  

CREATE SYNONYM tab1f
FOR [MMM063].test.dbo.tab1;

SELECT * FROM tab1f;
GO

 

-- Wiresharkフィルタ
ip.src == 10.10.10.62 and ip.dst == 10.10.10.63 and tcp.dstport == 1433
ip.src == 10.10.10.61 and ip.dst == 10.10.10.63 and tcp.dstport == 1433
ip.src == 10.10.10.62 and ip.dst == 10.10.10.61 and tcp.dstport == 1433


クライアントからDBリンク元に接続し、DBリンクを使用するSQLを実行すると
クライアント→DBリンク元とDBリンク元→DBリンク先のそれぞれで通信が発生する
クライアント→DBリンク先の通信はない