Quick onboard
Deployment
Data Modeling
Connecting
Migration
Query
Operations and Maintenance
Common Maintenance
Partition
Backup and Restore
Expansion
Mirroring
Resource Management
Security
Monitoring
Performance Tuning
Troubleshooting
Reference Guide
Tool guide
Data type
Storage Engine
Executor
Stream
DR (Disaster Recovery)
Configuration
Index
Extension
SQL Reference
This example demonstrates how to connect to SQL Server 2016 using PXF.
sudo yum install pxf-matrixdb3-5.16.1-1.el7.x86_64.rpm -y
sudo mkdir /usr/local/pxfconf
sudo chown mxadmin.mxadmin -R /usr/local/pxfconf
sudo chown mxadmin.mxadmin -R /usr/local/pxf-matrixdb4
export PXF_HOME=/usr/local/pxf-matrixdb4
export PXF_CONF=/usr/local/pxfconf
export PATH=$PXF_HOME/bin:$PATH
cd $PXF_CONF/servers
mkdir sqlserv_server
Initialize PXF:
pxf cluster init
Download the JDBC driver from:
https://docs.microsoft.com/en-us/sql/connect/jdbc/using-the-jdbc-driver?view=sql-server-ver15
File: sqljdbc4.jar
Copy the JDBC driver to the PXF library directory (required on all nodes):
cp sqljdbc4.jar $PXF_CONF/lib
Synchronize configuration to all cluster nodes:
pxf cluster sync
Start PXF services on all nodes:
pxf cluster start
Check cluster status:
pxf cluster status
Create the extension:
postgres=# CREATE EXTENSION pxf_fdw ;
CREATE EXTENSION
Define the foreign server:
DROP SERVER sqlserv_server CASCADE;
CREATE SERVER sqlserv_server FOREIGN DATA WRAPPER jdbc_pxf_fdw OPTIONS (
jdbc_driver 'com.microsoft.sqlserver.jdbc.SQLServerDriver',
db_url 'jdbc:sqlserver://{ip}:{port};databaseName={database_name}',
batch_size '10000',
fetch_size '2000'
);
Create a user mapping:
CREATE USER MAPPING FOR mxadmin SERVER sqlserv_server OPTIONS (user '{username}', pass '{password}');
Create a foreign table:
CREATE FOREIGN TABLE foreign_sqlserver (
id int4,
banzu varchar(20),
banzu_name varchar(50),
realdate timestamp
)
SERVER sqlserv_server
OPTIONS (resource '{source_database_schema.table_name}');
Query data from SQL Server through the foreign table:
SELECT * FROM foreign_sqlserver LIMIT 10;