數據庫‎ > ‎連通工具‎ > ‎

Easysoft ODBC-ODBC Bridge

張貼者:2010年8月30日 下午11:56未知的使用者   [ service orderble 已於 2012年8月8日 下午2:40 更新 ]
Easysoft
Easysoft的ODBC - ODBC橋是用於在Linux,Unix和視

窗平台的數據庫連通工具。這是一個客戶端/服務器端的產品,允許的ODBC應用程序訪問一台遠程機器上的的ODBC驅動。OOB本客戶端是一個的ODBC驅動,可連通帶外服務器,帶外服務器連接到位於服務器上的的ODBC驅動。該產品不需要安裝到任何數據庫服務器上。


---
開發商: Easysoft Limited.
原廠網址: http://www.easysoft.com/products/data_access/odbc_odbc_bridge/index.html
更新日期:2011/05/18
採購正式版、大量授權報價、技術支援、軟體諮詢、委託採購、詢問報價請來電 02-29299388 分機16 , 
來信service@orderble.com,或點我
-----------------------------------------------------------------------------




通常使用的帶外訪問,以提供一個 ODBC驅動程序無法獲取客戶端平台。 例如,您的ODBC應用程序需要在Linux上運行,但它需要使用Microsoft ODBC驅動程序只能在Windows上。

我們的客戶通常使用帶外的應用程序和接口,如Perl,阿帕奇/ PHP,Python和C的訪問許多 Windows的ODBC驅動程序只能從 Unix和Linux,其中包括:

微軟 SQL服務器
微軟訪問
微軟的Navision
其中的任何其他數據庫的ODBC驅動程序。
為了幫助您管理和控制遠程 ODBC訪問,還提供了帶外服務器功能,如集中配置,管理,訪問控制和監測的ODBC數據訪問。












The OOB is normally used to provide access to an ODBC driver you cannot obtain for the client platform. For example, your ODBC application needs to run on Linux but it needs to use a Microsoft ODBC driver only available on Windows.

Our customers are typically using the OOB with applications and interfaces such as Perl, Apache/PHP, Python and C to access many Windows-only ODBC drivers from Unix and Linux, including:

Microsoft SQL Server
Microsoft Access
Microsoft Navision
Any other database for which an ODBC driver is available.
To help you administer and control remote ODBC access, the OOB Server also offers features such as centralised configuration, management, access control and monitoring of ODBC data access.

Features
Client
The OOB Client is a fully ODBC 3.5 compliant ODBC driver.

The OOB Client provides access to remote ODBC drivers installed on machines other than the one where your ODBC application is running.

In addition, the OOB Client:

Leads you through the process of creating your first data source and shows you your remote data, during installation on Unix.
Has built in support for installing itself into the Microsoft ODBC Driver Manager, the Open Source unixODBC Driver Manager. On Windows, OS X and platforms that support X, we provide GUI setup dialogues accessible from the ODBC Administrator that let you configure your data sources.
Includes oobping-a program that lets you check that an OOB Server is alive, test authentication and connection to remote DSNs.
Works seamlessly with ODBC interfaces such as Perl DBI and DBD::ODBC, PHP, Rexx/SQL, Python mxODBC and pyodbc.
Has been tested with a large range of ODBC applications. Supported applications include OpenOffice.org, ApplixWare, StarOffice, Microsoft Access and Microsoft Excel.
Performs caching of SQLGetInfo results.
Contains ODBC optimisations for fetching rows from applications not using bound columns.
Compresses network data for maximum throughput.
Has comprehensive tracing facilities.
Contains a demonstration ODBC application (with source) that connects to an ODBC data source.
Encrypts sensitive information (like connection strings which often contain passwords) passed across the network. Data can also be encrypted by passing it through an IP tunnel.
Includes the unixODBC Driver Manager on Unix platforms and the Microsoft Driver Manager on Windows.
Has thread-safe versions for platforms supporting threads.
Supports fallback OOB servers to increase service availability. If the primary server is unable to service a request, fallback servers can be swapped in and out automatically without interruption of service.
Server
The OOB Server is a multi-threaded service running under the Windows service manager or inetd/xinetd on Unix or it is a standalone application. It receives ODBC API calls from the OOB Client and directs them to the requested ODBC driver.

In addition, the OOB Server:

Contains an HTTP Administration Server which can be used to configure, monitor and control the OOB Server.
Uses native OS authentication to protect access to your data sources and the OOB HTTP Administration Server.
Supports access control rules that let you restrict access to the OOB Server by user, machine or network address.
Can protect thread-unsafe ODBC drivers when accessed from a multi-threaded application.
Provides statistics on uptime, CPU usage, total connections, total successful connections, active connections, peak concurrent connections, time of last connect and disconnect and list of connecting clients.
Audits connection activity to a file. Generates audit log (and native Windows event log) entries for connection attempts denied due to invalid authentication details, a connection limit or an access control rule.
Can display a list of configured System DSNs in the HTTP Administration Server. The System DSNs are therefore visible in any Web browser.
Can limit the total number of concurrent connections or connections from a particular client. Also logs all clients that have connected.
Supports access control lists that let you restrict access to DSNs by user, machine or network address.
Can restrict remote access to the HTTP Administration Server by user, machine or network address. Remote access can also be disabled entirely.
Allows individual HTTP Administration Server pages to be password protected or disabled. For example, the pages that let you change OOB configuration settings, browse DSNs and their underlying databases.
Allows these statistics to be exported to timestamped file: average connections per minute, connections per client.
Rotates audit files automatically.
Lets you view audit files in the HTTP Administration Server.
Can provide a graphical representation of connection history and auditable events helping you identify daytime trends and plan downtime.
Can provide data source statistics including connections per DSN and average time per connection.
Logs failing SQL. This helps you track down who or what is failing to query your database and the reason for the failure.
Lets you export configuration details and licenses to create backup copies. You can reduce the time taken to administer servers by importing configuration details.
Supports multiple network interface cards. The OOB Server can either listen on one network interface or all network interfaces. The default behaviour is to listen on multiple networks.
Provides a remote DSN explorer allowing DSN, tables, columns, and rows to be viewed in your browser. Browsing remote DSNs is useful when writing your client application on a different machine to the one on which the DSNs have been added.
Supports process affinity on Windows. This lets you define which CPUs are available to the OOB Server process on Windows machines with multiple CPUs.
Can enable connection pooling in the Driver Manager, reducing connection times for applications that repeatedly open and close ODBC connections.
The OOB Server uses the database manufacturer's supplied ODBC driver so if the protocol is changed by the database manufacturer, OOB automatically supports these changes since database manufacturers always keep their ODBC driver synchronised with the database. This is not true of some other OOB competitors which use what they call wire protocol drivers; these drivers always have to be updated when the protocol changes to support new or changed features. An example of this is Microsoft SQL Server, where OOB uses the Microsoft SQL Server ODBC driver to access Microsoft SQL Server. If the TDS (Tabular DataStream) protocol is changed, OOB automatically tracks this change. For example, when TDS changed between Microsoft SQL Server 6 and 7, Easysoft made no changes to OOB to support the new functionality.

Conformance to Standards
OOB supports ODBC 1.0–3.5.

Although the OOB Client is an ODBC driver, you can only use the ODBC functionality provided by the ODBC driver at the server end.

ODBC Functions
All the following ODBC functions are fully supported by the OOB, although support in the ODBC driver used behind the OOB Server may differ. A call to SQLGetFunctions from the application will return the functions supported in the remote ODBC driver and not those supported by the OOB Client.

SQLAllocConnect
SQLAllocEnv
SQLAllocHandle
SQLAllocHandleStd
SQLAllocStmt
SQLBindCol
SQLBindParameter
SQLBrowseConnect
SQLBulkOperations
SQLCancel
SQLCloseCursor
SQLColAttribute
SQLColAttributes
SQLColumnPrivileges
SQLColumns
SQLConnect
SQLCopyDesc
SQLDescribeCol
SQLDescribeParam
SQLDisconnect
SQLDriverConnect
SQLEndTran
SQLError
SQLExecDirect
SQLExecute
SQLExtendedFetch
SQLFetch
SQLFetchScroll
SQLForeignKeys
SQLFreeConnect
SQLFreeEnv
SQLFreeHandle
SQLFreeStmt
SQLGetConnectAttr
SQLGetConnectOption
SQLGetCursorName
SQLGetData
SQLGetDescField
SQLGetDescRec
SQLGetDiagField
SQLGetDiagRec
SQLGetEnvAttr
SQLGetFunctions
SQLGetInfo
SQLGetStmtAttr
SQLGetStmtOption
SQLGetTypeInfo
SQLMoreResults
SQLNativeSql
SQLNumParams
SQLNumResultCols
SQLParamData
SQLParamOptions
SQLPrepare
SQLPrimaryKeys
SQLProcedureColumns
SQLProcedures
SQLPutData
SQLRowCount
SQLSetConnectAttr
SQLSetConnectOption
SQLSetCursorName
SQLSetDescField
SQLSetDescRec
SQLSetEnvAttr
SQLSetPos
SQLSetScrollOptions
SQLSetStmtAttr
SQLSpecialColumns
SQLStatistics
SQLTablePrivileges
SQLTables
There are no ODBC functions partially supported or unsupported.

The following ODBC installer functions are provided by the OOB Setup library:

SQLConfigDriver
SQLConfigDSN
The following ODBC functions are provided by the Driver Manager:

SQLDataSources
SQLDrivers
ODBC Data Types
SQL_CHAR
SQL_WCHAR
SQL_VARCHAR
SQL_WVARCHAR
SQL_LONGVARCHAR
SQL_WLONGVARCHAR
SQL_NUMERIC
SQL_DECIMAL
SQL_SMALLINT
SQL_INTEGER
SQL_REAL
SQL_FLOAT
SQL_DOUBLE
SQL_BIT
SQL_TINYINT
SQL_BIGINT
SQL_BINARY
SQL_VARBINARY
SQL_LONGVARBINARY
SQL_TYPE_DATE
SQL_TYPE_TIME
SQL_TYPE_TIMESTAMP
SQL_INTERVALS (all types)
Supported SQL
The OOB does not examine any SQL passed through ODBC calls. The SQL supported is that SQL supported by the remote ODBC driver behind the OOB Server.

ODBC Features
The OOB supports all ODBC features supported by the remote ODBC driver behind the OOB Server with one exception:

Driver specific SQL_IS_POINTER attributes to SQLSetConnectAttr, SQLSetStmtAttr and SQLSetDescField are not supported. To our knowledge, no current ODBC drivers have driver-specific pointer attributes.

The OOB provides transparent access to the remote ODBC driver with the following exceptions:

Calls to SQLGetInfo for SQL_DRIVER_NAME, SQL_DRIVER_ODBC_VER, SQL_DRIVER_VER, (driver name, driver ODBC version, driver version) return OOB Client specific values instead of values from the remote ODBC driver. This may be overridden with GetInfoPassThru connection or DSN attribute.
The results of most SQLGetInfo calls are cached in the OOB Client so that multiple calls for the same Info Value in the ODBC application are only seen once in the remote ODBC driver.
Any error generated by OOB itself has "[Easysoft ODBC (Client)]" or "[Easysoft ODBC (Server)]" appended to the ODBC diagnostic string. For example, if you attempt to access an OOB Server from a client denied access in the OOB Server's access control rules.
Row-wise binding of columns is not duplicated in the remote ODBC driver by OOB. Instead, any row bound columns are converted to column-bound columns in the remote ODBC driver and converted to row bound columns in the OOB Client and the ODBC application. As far as the ODBC application is concerned, row-wise binding is occurring and this should not have any detrimental affects on the ODBC application other than possibly a very small increase in time due to conversion.
If the connection or DSN attribute BlockFetchSize is set to a non-zero value and the right conditions apply (see the OOB documentation), the OOB client will bind the columns itself as an optimisation. The remote ODBC driver will see SQLBindCol and SQLFetch calls instead of SQLFetch and SQLGetData calls.
If the connection or DSN attribute MetaDataBlockFetch is enabled (it is by default), the optimisation above for BlockFetchSize is performed automatically for the metadata calls (for example, SQLTables). More information is available in the OOB documentation).
Some repeated calls to SQLBindParameter by the ODBC application are not passed on to the remote ODBC driver. This is an optimisation that should have no effect on the ODBC application.
Thread Safety
The Windows OOB Client is thread-safe. This means it is safe to use behind multi-threaded applications (as all ODBC 3.0 drivers are supposed to be).
The non-Windows OOB Client is available with a thread-safe driver (OOB_r) version and a non-thread-safe driver (OOB) version, because: 
Not all versions of Unix operating systems have a thread library (for example, Posix, GNU Threads) or thread-safe runtime C library.
On some Unix operating systems, mixing libraries built depending on threads and libraries not using threads does not work.
Multi-Threaded Application
The Windows OOB Server is a multi-threaded application, which may run in either multi-threaded or MultiProcess mode. 
The default mode is multi-threaded, which means that the OOB Server creates a new thread to handle each connection from an OOB Client, whereas in MultiProcess mode, the OOB Server creates a new process for each connection from an OOB Client.

If the ODBC driver you are using is not thread-safe (for example, Microsoft Access Jet versions prior to 4.0, see the knowledge base), the OOB Server should be run in MultiProcess mode.

Because the OOB Server is a multi-threaded application, it can take full advantage of the performance benefits available from systems with multiple processors, from multi-core platforms such as those based on the Intel® CoreTM Duo processor and from systems that support Hyper-Threading Technology (HT Technology).
The non-Windows OOB Server is single-threaded application. Every time an OOB Client connects to the OOB Server port, inetd/xinetd starts a new OOB Server process to handle the connection. There can only be one thread of execution in these circumstances. 
If the OOB Server is run standalone (without inetd/xinetd) then the same principle applies, only this time the OOB Server starts a new process to handle each connection.

Comments