About Ispirer Systems

Ispirer Home Page Database Migration Application Conversion Downloads


Sqlways.ini File - Section [MYSQL]

This article describes sqlways.ini file's [MYSQL] section and the options it contains.

Option name Description
BIN Specifies the directory where MySQL utilities are located.
HOST Specifies a remote host name where the target MySQL database is located.
DATABASE Specifies the database name which is used in generated scripts for MySQL.
PORT This option sets port number that will be used to connect to MySQL database.
TARGET_VERSION Specifies the target version of the MySQL database. If this option is empty, the latest MySQL database version will be used.
Note: According to the version number conversion results may differ.
USER Specifies the user name which is used in generated scripts for MySQL.
PWD Specifies the user password which is used in generated scripts for MySQL.
TABLE_TYPE This option specifies the table type which is used when creating tables in MySQL database. MySQL supports two kinds of tables: transaction-safe tables (InnoDB and BDB) and not transaction-safe tables (HEAP, ISAM, MERGE, and MyISAM).
For example, when table_type=InnoDB is selected, the tool generates TYPE=InnoDB clause in CREATE TABLE statements for MySQL.
IMPORT_FROM_CLIENT If “Yes” is specified, the LOCAL keyword is generated for MySQL LOAD DATA INFILE command which is used to import data to MySQL. When LOCAL is specified, data files can be located on the client host.
If “No” is specified, the LOCAL keyword is not generated and data files must be located on the server before import.
Possible values - \“Yes”, “No”. The default value is “Yes”.
DATA_LOAD_OPTION If “Replace” is specified, existing rows will be updated in an existing table based on primary or unique key information or added to the table if a primary key doesn’t match. If “Ignore” is specified, existing rows in the table will not be updated when primary or unique key values are equivalent to the values that exist in the table. The rows from the text file which do not match primary or unique key in the table are inserted.
ENABLE_PARTITIONING This option controls partitioned tables conversion for Oracle to MySQL and MSSQL to MySQL migration directions. If it is set to “Yes”, partitioning for tables conversion will be migrated to target MySQL database. Otherwise partitioning will be omitted. Possible values are “Yes”, “No”. The default value is “No”.
EXISTS2JOIN If it is set to “Yes”, all the occurrences of EXISTS clauses in SELECT statements will be replaced by the tables placed to common FROM clause and conditions placed to common WHERE clause. Possible values - “Yes”, “No”. The default value is “No”.
IN2JOIN If this option is set to “Yes”, all the occurrences of IN clauses in WHERE condition will be moved to JOIN conditions with ON clause. Possible values - “Yes”, “No”. The default value is “No”.
FOREIGN_KEY_CHECKS This option was added to ignore foreign key constraints during LOAD DATA operation and to ignore check of data when adding FOREIGN KEY constraints to the table. Possible values - “Yes”, “No”. The default value is “No”.
CONVERT_PARTITIONS This option allows to convert RANGE and LIST partitions for Oracle to MySQL conversion direction.
Possible values - “Yes”, “No” or empty. Default value - “No” or empty.
CHARACTER_SET This option defines the encoding that will be used to store the extracted data in the files in export folder.
Also according to the assigned value, this option may change the conversion of VARCHAR data type into TEXT data type. For example, when migrating from Oracle database to MySQL with utf8 encoding, maximum varchar length is different. In Oracle the maximum value of VARCHAR2 is equal to 32767, and in MySQL with utf8 it is 21 844. Thus if this option is set to “UTF8”, all the VARCHAR2 data types with length greater than 21 844 will be converted into TEXT in MySQL.
SSL_CA This option defines the path to a file in PEM format that contains a list of trusted SSL certificate authorities.
Default value - Empty.
SSL_MODE This option specifies the security state of the connection to the server.
Possible values - PREFERRED, DISABLED, REQUIRED, VERIFY_CA, VERIFY_IDENTITY and Empty.
Default value - Empty.
KEY_LENGTH_FOR_BLOB_IDX If MySQL index is created on BLOB/TEXT columns, you need to specify key length value for such columns. This option defines the key length value for BLOB/TEXT columns that is used in indexes.
Possible values - numbers from 0 and higher.
Default value - 255.
ENABLE_LOCAL_LOAD This option controls the local data load into MySQL database. If this option is set to Yes, mysql.exe utility will be run with the local-infile option, which allows to use LOAD DATA LOCAL command in the .ldi file to load data into the target server from the local machine.
Possible values - “Yes”, “No” or Empty.
Default value - “Yes”.
CREATE_DEFINER This option controls whether the definer clause should be added to the procedures, functions and triggers when migrating to MySQL database. In this option we need to specify the user that will be used in CREATE DEFINER clause in generated MySQL code. If this option is set to “No” or empty, CREATE DEFINER clause will not be added to the MySQL objects.
Default value - “No” or Empty.
PRESERVE_COMMENTS This option controls whether the comments inside the SQL should be preserved during the import process. If this option is set to “Yes”, the tool will generate command to mysql.exe utility with the ”–comments” option, so that mysql.exe utility will save the comments inside the SQL code during the import. If this option is set to “No”, the tool will use ”–skip comments” option with mysql.exe utility. Thus this utility will not save comments inside the SQL code during the import.
Possible values - “Yes” or “No”.
Default value - “No” or Empty.
CREATE_CONDITION_HANDLER This option was created to emulate the Transact-SQL behavior inside MySQL stored procedures and functions when an error in one of the statements inside the procedure or function body arises. By default, this option is set to “Yes”. In this case the tool adds the CONDITION HANDLER to each “BEGIN…END” block that handles the error without terminating the procedure or function execution. The errors are hidden in this case. When this option is set to “No”, no CONDITION HANDLER is added and the first error encountered during the procedure or function run terminates the procedure or function execution. The error message will be returned after the procedure terminates.
Possible values - “Yes” or “No”.
Default value - “Yes”.
USE_FN_CHARACTERISTIC This option defines whether the characteristic block will be generated for MySQL functions.
Possible values - “Yes” or “No” or Empty.
Default value - “No” or Empty.
BIT_DATATYPE This option defines how to convert BIT data types into MySQL database.
Default value - CHAR(1).
KEEP_INCLUDED_COLUMNS This option defines whether the INCLUDED columns is kept in the index definitions or not.
Possible values - “Yes” or “No”.
Default value - “Yes” or Empty.
VARCHAR_PAR_LEN This option defines the length of VARCHAR parameters when converting from Oracle to MySQL. If this option is empty, then will be used 4000 as a length of varchar parameters in MySQL. If this option is set to a some value, then this value will be used as a length of a VARCHAR parameter in MySQL.
CLIENT_CHARACTER_SET This option adds option –default-character-set=charset_name in the .bat file in the command line for mysql.exe. Default value - Empty.
RETURN_STATUS_TO This option defines conversion of procedure that returns result set from RETURN statement. If this option is set to “INOUT” in MySQL, the result set from RETURN statement will be converted to INOUT parameter of procedure. If this option is set to “LOCAL” , then the statement RETURN should be ignored and no additional parameter in target should be created . Possible values - “INOUT”  or “LOCAL”. Default value - “INOUT”.
Usage example.
DEFAULT_AUTH_PLUGIN This option adds option –default-auth=plugin_name on the command line of mysql.exe utility during import objects to SingleStoreDB database. The –default-auth=plugin_name option can be specified on the command line as a hint about which client-side plugin the program can expect to use, although the server overrides this if the server-side plugin associated with the user account requires a different client-side plugin.
Possible values - mysql_native_password, caching_sha2_password, mysql_old_password, sha256_password and Empty.
Default value - Empty.

Example:

[MySQL]
HOST=hostname
DATABASE=test
USER=root
SSL_CA=D:\test\ca-file.pem
SSL_MODE=VERIFY_IDENTITY