ODBC драйверът на SQL Server ви позволява да свържете Oracle на Linux и UNIX платформи към SQL Server или SQL Azure. Ако решите да шифровате мрежовата връзка от вашите клиентски приложения към SQL Server или използвате SQL Azure, трябва да използвате TLS версията на драйвера, която е включена в дистрибуцията на драйвери на SQL Server ODBC.
Ако не използвате TLS версията на ODBC драйвера на SQL Server, за да се свържете с екземпляр на SQL Server, който е конфигуриран да изисква криптирана връзка, ще получите тази грешка:
Client unable to establish connection: SSL requested but not supported
Ако вече използвате ODBC драйвера на Easysoft SQL Server с Oracle:
- В източника на данни на SQL Server, посочен от
HS_FDS_CONNECT_INFO
във вашияinitSID.ora
, направете следните промени:- Променете
Driver
от:Driver = Easysoft ODBC-SQL Server
до:
Driver = Easysoft ODBC-SQL Server SSL
- Добавете тези редове:
Encrypt = Yes TrustServerCertificate = Yes
- Променете
- Ако посочите библиотеката на драйвери, а не библиотеката на Driver Manager в
initSID.ora
, променетеHS_FDS_SHAREABLE_NAME
стойност до:install_dir/easysoft/sqlserver/lib/libessqlsrv_ssl.so
- Рестартирайте слушателя на Oracle.
Ако сте нов потребител:
- Инсталирайте и лицензирайте ODBC драйвера на SQL Server на машината, където е инсталиран Oracle.
За инструкции за инсталиране вижте документацията на ODBC драйвера.
Забележка Имате нужда от unixODBC Driver Manager инсталиран на вашата машина. Дистрибуцията на Easysoft включва версия на unixODBC Driver Manager, с която е тестван ODBC драйверът на Easysoft SQL Server. Програмата за настройка на драйвера Easysoft ви дава възможност да инсталирате unixODBC.
- Създайте ODBC източник на данни в /etc/odbc.ini, който се свързва с базата данни на SQL Server, до която искате да получите достъп от Oracle®. Например:
[SQLSERVER_SAMPLE] Driver = Easysoft ODBC-SQL Server SSL Server = my_machine\SQLEXPRESS User = my_domain\my_user Password = my_password # If the database you want to connect to is the default # for the SQL Server login, omit this attribute Database = Northwind Encrypt = Yes TrustServerCertificate = Yes
- Използвайте isql, за да тествате новия източник на данни. Например:
cd /usr/local/easysoft/unixODBC/bin ./isql.sh -v SQLSERVER_SAMPLE
При подкана въведете „помощ“, за да се покаже списък с таблици. За да излезете, натиснете връщане в празен ред с подкана.
Ако не можете да се свържете, вижте тази статия за помощ.
- Създайте файл за инициализиране на DG4ODBC. За да направите това, променете на
hs/admin
поддиректория. Например:cd $ORACLE_HOME/product/11.2.0/xe/hs/admin
Създайте копие на файла
initdg4odbc.ora
. Наименувайте новия файлinitmssql.ora
. - Уверете се, че тези параметри и стойности присъстват във вашия начален файл:
HS_FDS_CONNECT_INFO = var>my_mssql_odbc_dsn
Заменете my_mssql_odbc_dsn с името на източник на данни за драйвер на SQL Server ODBC, който се свързва с целевия екземпляр на SQL Server. Например
HS_FDS_CONNECT_INFO = "SQLSERVER_SAMPLE"
- Коментирайте реда, който позволява проследяване на DG4ODBC. Например:
#HS_FDS_TRACE_LEVEL = <trace_level>
- Добавете запис към
listener.ora
което създава SID_NAME за DG4ODBC. Например:SID_LIST_LISTENER = (SID_LIST = (SID_DESC= (SID_NAME=mssql) (ORACLE_HOME=$ORACLE_HOME) (PROGRAM=dg4odbc) ) )
- Добавете запис в DG4ODBC към
tnsnames.ora
който посочва SID_NAME, създаден в предишната стъпка. Например:MSSQL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = oracle_host)(PORT = 1521)) (CONNECT_DATA = (SID = mssql) ) (HS = OK) )
Заменете oracle_host с името на хоста на вашата Oracle® машина.
- Стартирайте (или рестартирайте) Oracle® Listener. Например:
lsnrctl stop lsnrctl start
- Свържете се с вашата база данни Oracle® в SQL*Plus.
- В SQL*Plus създайте връзка към базата данни за целевия екземпляр на SQL Server. Например:
CREATE PUBLIC DATABASE LINK mssqllink CONNECT TO "my_sqlserver_user" IDENTIFIED by "my_password" USING 'mssql'; SELECT * from suppliers@mssqllink
Бележки
- Ако имате проблеми при свързването със SQL Server от Oracle®, активирайте проследяването на DG4ODBC и проверете проследяващите файлове, записани в
hs/log
директория. За да активирате проследяването на DG4ODBC, добавете редаHS_FDS_TRACE_LEVEL = DEBUG
къмinitmssql.ora
и след това стартирайте/рестартирайте слушателя на Oracle®. Акоlog
директория не съществува, създайте я. Например:mkdir log chmod +w log