The mxODBC Zope DA™ product allows you to easily connect your Zope installation or Plone CMS to just about any database backend on the market today, giving you the reliability of the commercially supported eGenix.com product mxODBC and the flexibility of the ODBC standard as middle-tier architecture.
mxODBC Zope DA works on Windows, Linux, Mac OS X, Solaris and FreeBSD, providing you with the same interface, flexibility and robustness across all on all these platforms.
The mxODBC Zope DA implements thread-safe connection pooling and multiple physical connects per logical Zope connection. You can safely run Z SQL Methods in parallel, achieving a much better performance than other Zope database adapters under heavy load. This makes it ideal for deployment in ZEO Clusters and Zope hosting environments where stability and high performance are a top priority.
At EuroPython 2007, we have given a talk about Zope and relational database systems (RDBMS). The talk provides a high-level introduction on how Zope can be used for database web applications and where the mxODBC Zope DA can help. Please see our Presentations & Talks section for details.
Zope Level 3 Database Adapter: the mxODBC Zope DA is fully multi-threaded and can handle multiple connections to multiple databases.
Fully compatible to standard Z SQL Methods.
Connection Pooling: physical database connections are pooled and kept open, to reduce the connection overhead to a minimum. This is especially important for high latency database connections and ones like Oracle which take a considerable amount of time to setup
Parallel Execution of Queries on a single logical connection: the mxODBC Zope DA can manage any number of physical connections on a single logical connection. This enables running truly parallel Z SQL Method queries -- a feature not available in other Zope DAs.
Robust Mode of Operation: connections which have timed out or go away due to network problems are automatically reconnected.
Cross-platform Connection Objects: The Zope DA will automatically choose the right platform specific ODBC manager for you.
Per Connection Adjustable ODBC Interface: mxODBC comes with many different subpackages to choose from on Unix. The Zope DA allows you to select these subpackages on a per-connection basis.
Per Connection Error Handling: you can tell each connection whether it should report ODBC warnings or not; furthermore all warnings and errors are made available as list .messages on the DatabaseConnection object.
Transaction safe automatic reconnect: when the DA finds that a connection has timed out, it automatically tries a reconnect and replays the transaction on the connection (unlike other DAs which break the transaction scheme by doing a reconnect without replay).
Built-in Schema Cache: this results in improved performance under heavy load.
Database Schema Access: all ODBC catalog methods are made available for much better database schema inquiry. The catalog methods allow building generic database interrogation or manipulation tools and facilitates writing database independent Zope products.
Lazy Connect: the mxODBC Zope DA only connects to the database backends when a connection is actually requested. This results in a better use of resources compared to other Zope DAs.
Drop-in compatible to the ZODBC DA: the mxODBC Zope DA provides the same interfaces as the old and unmaintained ZODBC DA to allow a smooth upgrade path from this simplistic adapater to the high performance mxODBC Zope DA.
Fully compatible to the popular Znolk SQL Wizard Product and other similar products relying on the common database schema access methods .tables() and .columns().
The mxODBC Zope DA distribution includes all software needed to connect Zope to an ODBC manager. However, it does not include an ODBC manager or any ODBC drivers. You have to have these installed in order to be able to use mxODBC Zope DA.
On Windows, the situation is very simple: most databases come with ODBC drivers and register them with the Windows ODBC manager that's part of every Windows system.
Please consult the ODBC driver documentation for details on how to setup ODBC data sources. The mxODBC Zope DA Administration and User Manual also includes a section on this topic and some helpful hints in case you run into problems.
On Unix, you will have to install one of the popular ODBC managers iODBC 3.52.x or unixODBC 2.2.x and then register the ODBC drivers for your database with these ODBC managers.
Linux systems usually come with at least one of these ODBC managers preinstalled. Please see the mxODBC Zope DA Administration and User Manual for setup instructions.
On Mac OS X, you can use the system system ODBC manager (which actually is a version of the popular iODBC manager).
Please see the mxODBC Zope DA Administration and User Manual for setup instructions.
The mxODBC Zope DA product is a commercial product and made available under the terms and conditions of the eGenix.com Commercial License Agreement, Version 1.1.0 (PDF file).
When purchasing a license for the mxODBC Zope DA product, you will receive a digitally signed Proof of Authorization authorizing you to install the product for use within one Zope Instance, i.e. one Zope installation.
If you are using Zope clusters or multiple Zope instances on a single machine, you will have to buy one Zope Instance license per Zope instance that you have installed on the machine.
If you would like to evaluate the mxODBC Zope DA, please request an evaluation license or send an email to the eGenix.com Sales Team and include the following information: name of the licensee, number of evaluation licenses.
We will then send you the requested number of evaluation licenses. The evaluation licenses have a built-in timeout of 30 days, but are otherwise fully functional.
If you are satisfied with the product, you can then proceed to the next section.
Production licenses for the mxODBC Zope DA product can be bought via our secure eGenix.com Online Shop which is hosted by ShareIT.com (a service of Digital River). Licenses are sold per Zope Instance. For prices and volume discounts please check the mxODBC Zope DA Shop Page.
After purchase, you will receive the necessary license files from eGenix.com within two business by email to the address you specified in the ordering process.
If you need to buy licenses for third parties (e.g. as contractor), please consult sales@egenix.com for instructions.
If you have questions about the ordering process, or the needed number of licenses, please write to the eGenix.com Sales Team.
The following documentation is available for the mxODBC Zope DA:
mxODBC Zope DA Administration and User Manual - HTML and PDF
This manual includes instructions on how to install, configure and use the mxODBC Zope DA as well as a reference of the available programming interfaces.
mxODBC Reference Manual - HTML and PDF
The mxODBC Reference describes the included eGenix.com product mxODBC which is used by the mxODBC Zope DA to interface to the various database backends.
Please note that the mxODBC package included in the mxODBC Zope DA can only be used from within Zope and is usually a different version than the stand-alone mxODBC package.
The PDF files are also available as part of the installation. The mxODBC Zope DA Connection help screens provide links to the local copies after installation.
Please note that these binary distributions do not contain any license keys. You will either have to obtain evaluation licenses or buy production licenses in order to successfully install the package.
These files are made available to you under the terms and conditions of the eGenix.com Commercial License Agreement, Version 1.1.0 (PDF file).
Note: You are not allowed to redistribute these files.
This distribution includes the mxODBC Zope DA Zope Product and all necessary eGenix.com mx Products (including mxODBC 2.1) in one binary archive.
The Windows ODBC manager which comes with the Windows Operating System will be used by this distribution.
This distribution includes the mxODBC Zope DA Zope Product and all necessary eGenix.com mx Products (including mxODBC 2.1) prebuilt for Zope installations.
You will need to have one of popular ODBC managers for Unix installed on the target system: iODBC 3.52.x or unixODBC 2.2.x. We have successfully tested the Zope DA with iODBC 3.52.6 and unixODBC 2.2.12.
This distribution includes the mxODBC Zope DA Zope Product and all necessary eGenix.com mx Products (including mxODBC 2.1) prebuilt for Zope installations.
You will need to have one of popular ODBC managers for Unix installed on the target system: iODBC 3.52.x or unixODBC 2.2.x. We have successfully tested the Zope DA with iODBC 3.52.6 and unixODBC 2.2.12.
This distribution includes the mxODBC Zope DA Zope Product and all necessary eGenix.com mx Products (including mxODBC 2.1) prebuilt for Zope installations. Note that Mac OS X comes with a UCS2 build of Python, so please try the UCS2 product versions first.
Mac OS X ships with the iODBC ODBC manager as system default ODBC manager. Please configure your data sources using the system ODBC manager.
This distribution includes the mxODBC Zope DA Zope Product and all necessary eGenix.com mx Products (including mxODBC 2.1) prebuilt for Zope installations.
You will need to have one of popular ODBC managers for Unix installed on the target system: iODBC 3.52.x or unixODBC 2.2.x. We have successfully tested the Zope DA with iODBC 3.52.6 and unixODBC 2.2.12.
This distribution includes the mxODBC Zope DA Zope Product and all necessary eGenix.com mx Products (including mxODBC 2.1) prebuilt for Zope installations.
You will need to have one of popular ODBC managers for Unix installed on the target system: iODBC 3.52.x or unixODBC 2.2.x. We have successfully tested the Zope DA with iODBC 3.52.6 and unixODBC 2.2.12.
This distribution includes the mxODBC Zope DA Zope Product and all necessary eGenix.com mx Products (including mxODBC 2.1) prebuilt for Zope installations.
You will need to have one of popular ODBC managers for Unix installed on the target system: iODBC 3.52.x or unixODBC 2.2.x. We have successfully tested the Zope DA with iODBC 3.52.6 and unixODBC 2.2.12.
This distribution includes the mxODBC Zope DA Zope Product and all necessary eGenix.com mx Products (including mxODBC 2.1) prebuilt for Zope installations.
You will need to have one of popular ODBC managers for Unix installed on the target system: iODBC 3.52.x or unixODBC 2.2.x. We have successfully tested the Zope DA with iODBC 3.52.6 and unixODBC 2.2.12.
mxODBC Zope DA is a commercial product for which we don't distribute the source code.
If you have requirements for other platforms or Zope versions, please send us a note. The mxODBC Zope DA will compile on most Unix-like platforms where iODBC and/or unixODBC are available.
We can also prepare special versions which link directly against the database ODBC drivers. This may in some cases give you access to more advanced native database features.
On Unix it is important to know whether you need to download a distribution for a narrow Unicode build of Python (UCS2) or a wide version (UCS4).
Most Unixes ship with wide Python builds these days (including RedHat and SuSE). In order to make sure, please run the following command which will tell you what kind of Python installation you have:
python -c "import sys;print(sys.maxunicode<66000)and'UCS2'or'UCS4'"
If you get errors such as "unresolved symbol PyUnicodeUCS2_AsEncodedString" when trying to load an extension from the distribution, you have likely installed an archive for a wrong Unicode version.
The mxODBC Zope DA Administration and User Manual has the details on how to install and setup the package.
If you prefer third-party reviews, have a look at these independent product reviews:
eGenix offers these support options:
Professional level support for this product as well as all other eGenix products and Python itself is available directly from the developers at eGenix.com.
eGenix.com offers professional consulting services for all questions and tasks around this product, including customized modifications, help with integration and on-site problem solving. Please contact sales@egenix.com for details.
In order for our users to keep in touch and be able to help themselves, we have created the egenix-users user mailing list.
The mxODBC Zope DA is already in production use on several high-volume Zope sites. Many others are currently evaluating the product, among these some very well-known companies in the industry. Please write to sales@egenix.com for more information.