Integration: Relational Databases

MySQL

Environments

The Omnidex Environment File contains metadata that describes the MySQL database and the Omnidex configuration. This includes the following connection and schema information:

  • MySQL system, user, or file datasource
  • MySQL user and password
  • MySQL schema information tables, columns, and datatypes
  • MySQL primary and foreign key constraints
  • MySQL native indexes

Automatically Generating an Omnidex Environment File

Omnidex can automatically generate the CREATE ENVIRONMENT, CREATE DATABASE, CREATE TABLE, and CREATE INDEX statements needed for an Omnidex Environment File. The EXTRACT statement is used to connect to the MySQL database, query the underlying schema information, and generate the appropriate statements. This statement can be issued through OdxSQL, or through any ODBC or JDBC application.

extract       DDL
  for         MYSQL
  to          "simple.sql"
  with        DSN="simple"
              USER="simple"
              PASSWORD="simple"
              DATABASE="simple"
              INDEX_DIRECTORY="idx"


The following options from the EXTRACT SQL statement are used to provide MySQL connection information and control the output of the statement. These options also correlate with the options of the CREATE DATABASE statement.

DSN or FILEDSN

The DSN option references a system or user datasource for the database, and the FILEDSN option references a file datasource for the database. These datasources are created within MySQL to access the native MySQL database.

USER

The user to be used when accessing MySQL. One user and password is used when connecting to the MySQL database. That login determines the security access to the database and the visibility of the underlying database objects. This option is required unless a user and password are included in the datasource.

PASSWORD

The password to be used when accessing MySQL. This password must correspond to the user referenced in the USER option. This option is required unless a user and password are included in the datasource, or unless the user does not require a password.

DATABASE

The DATABASE option controls the logical database name to be recorded in the Omnidex Environment File for this database. This is not a MySQL setting, but rather a logical name given to the database for use in Omnidex statements. This option is required.

TABLES

The TABLES option controls the table schema information to be extracted from MySQL. The TABLES option can include a comma-separated list of tables or “*” to extract all tables. If this option is omitted, then all available tables are extracted.

INDEX_DIRECTORY

The INDEX_DIRECTORY option declares the directory to contain the Omnidex indexes. This is not a MySQL setting, but rather a path designation where indexes should be built. This directory can include either absolute or relative path designations. If this option is omitted, then the indexes will be built in the same directory as the Omnidex Environment File.

Limitations of the Omnidex EXTRACT statement

The extracted CREATE statements represent the best translations that can be automatically generated from MySQL; however, these statements may require edits by the administrator. Edits that may be required include:

  • MySQL object names, such as tables, columns, constraints or indexes, are reduced to 32 bytes in length for use in Omnidex.
  • MySQL Wide Character datatypes, which are commonly used to store Unicode data, are shown as CHARACTER or STRING datatype, as these are the most universal datatypes in an Omnidex application. If necessary, these can be changed to Omnidex NCHARACTER or NSTRING datatypes.

Manually Creating an Omnidex Environment File

An Omnidex Environment File can also be created by manually issuing CREATE ENVIRONMENT, CREATE DATABASE, CREATE TABLE, and CREATE INDEX statements in OdxSQL or using ODBC or JDBC. If these statements are written to a text batch file, then that file can be submitted to OdxSQL using the USE command.

Additional Resources

See also:

 
Back to top
integration/rdbms/mysql/environments.txt · Last modified: 2016/06/28 22:38 (external edit)