Paris, France - December 3rd, 2015 **Ora2Pg 16.1 released**
Version 16.1 of Ora2Pg, a free and reliable tool used to migrate an Oracle database to PostgreSQL, has been officially released and is publicly available for download. This release fixes several issues and adds some very useful features: * Generate automatically a new import_all.sh shell script when using option --init_project to help automate all import into PostgreSQL. See sh import_all.sh -? for more information. * Export Oracle bitmap index as PostgreSQL btree_gin index. This require the btree_gin extension and PostgreSQL >= 9.4. This is the default. * Auto set DEFINED_PK to the first column of a table that have a unique key defined that is a NUMBER. This allow data of any table with a numeric unique key to be extracted using multiple connexions to Oracle using -J option. Tables with no numeric unique key will be exported with a single process. * Improve BLOB export speed by using hex encoding instead of escape. This might speed up be BLOB export by 10. * Allow use of LOB locator to retrieve BLOB and CLOB data to prevent having to set LONGREADLEN. Now LONGREADLEN is set to 8KB. Old behavior using LONGREADLEN can still be enabled by setting NO_LOB_LOCATOR to 0, given for backward compatibility. Default is to use LOB locator. * Ora2Pg will also auto detect table with BLOB and automatically decrease DATA_LIMIT to a value lower or equal to 1000. This is to prevent OOM. * Improving indexes and constraints creation speed by using the LOAD action and a file containing SQL orders to perform. It is possible to dispatch those orders over multiple PostgreSQL connections. To be able to use this feature, PG_DSN, PG_USER and PG_PWD must be set. Then: "ora2pg -t LOAD -c config/ora2pg.conf -i schema/tables/INDEXES_table.sql -j 4" will dispatch indexes creation over 4 simultaneous PostgreSQL connections. This will considerably accelerate this part of the migration process with huge data size. * Domain indexes are now exported as b-tree but commented to let you know where possible FTS are required. * Add number of refresh ON COMMIT materialized view in detailed report. * Allow redefinition of numeric type, ex: NUMBER(3)::bigint to fix wrong original definition in Oracle. * Allow export of all schema from an Oracle Instance when SCHEMA directive is empty and EXPORT_SCHEMA is enabled. All exported objects will be prefixed with the name of their original Oracle schema or search_path will be set to that schema name. * Allow use of COPY FREEZE to export data when COPY_FREEZE is enabled. This will only works with export to file and when -J or ORACLE_COPIES is not set or default to 1. It can be used with direct import into PostgreSQL under the same condition but -j or JOBS must be unset or default to 1. Some new configuration directives: * BITMAP_AS_GIN: enable it to use btree_gin extension to create bitmap like index with pg >= 9.4. You will need to create the extension by yourself: "create extension btree_gin;". Default is to create GIN index, when disabled, a btree index will be�created. * NO_LOB_LOCATOR: to disable use of LOB locator and extract BLOB "inline" using a less or more high value in LONGREADLEN. * BLOB_LIMIT: to force the value of DATA_LIMIT for tables with BLOB. Default is to automatically set this limit using the following code: BLOB_LIMIT=DATA_LIMIT; while (BLOB_LIMIT > 1000) BLOB_LIMIT /= 10 * COPY_FREEZE: use it to use COPY FREEZE instead of simple COPY to speedup import into PostgreSQL. As usual there is also some bug fixes and Oracle to PostgreSQL conversion adjustments, for a complete list see: https://github.com/darold/ora2pg/blob/master/changelog ===== Links & Credits ===== Thanks to all contributors, they are all cited in the changelog file. Useful Links: - Website: http://ora2pg.darold.net/ - Download: http://sourceforge.net/projects/ora2pg/ - Development: https://github.com/darold/ora2pg - Changelog: https://github.com/darold/ora2pg/blob/master/changelog - Documentation: https://github.com/darold/ora2pg/blob/master/README -------------- **About Ora2Pg** Ora2Pg is an easy and reliable tool to migrate from Oracle to PostgreSQL. It is developed since 2001 and can export most of the Oracle objects (table, view, materialized view, tablespace, sequence, indexes, trigger, grant, function, procedure, package, partition, data, blob, external table, etc.). Ora2Pg works on any platform and is available under the GPL v3 licence. Docs, Download & Support at http://ora2pg.darold.net/ -------------- -- Gilles Darold Consultant PostgreSQL http://dalibo.com - http://dalibo.org -- Sent via pgsql-announce mailing list (pgsql-announce@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-announce