Skip to main content

By clicking Submit, you agree to the developerWorks terms of use.

The first time you sign into developerWorks, a profile is created for you. Select information in your profile (name, country/region, and company) is displayed to the public and will accompany any content you post. You may update your IBM account at any time.

All information submitted is secure.

  • Close [x]

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerworks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

By clicking Submit, you agree to the developerWorks terms of use.

All information submitted is secure.

  • Close [x]

Automate small footprint, embedded Informix Dynamic Server deployments

End-to-end embeddability for IDS deployments on Linux, UNIX, and Windows using the IDS deployment utility and embeddability toolkit

Sreeni Paidi (spaidi@us.ibm.com), Advisory Software Engineer, IBM
Sreeni Paidi photo
Sreeni Paidi is an Advisory Software Engineer and Enablement Consultant with IBM's Information Management Technical Enablement organization. Sreeni has over 13 years of experience working with DB2, Informix, Oracle, and PostgreSQL database servers as a Database Programmer, DBA and Integration Architect. He joined IBM as part of Trigo Technologies acquisition in 2004. Sreeni is part of a worldwide team that provides technical skills and consulting services to help business partners and customers accelerate the integration of IBM database software with their applications.

Summary:  This tutorial shows you how to automate IBM® Informix® Dynamic Server (IDS) small footprint deployments by using the IDS deployment utility and the IDS embeddability toolkit. An important requirement of an embedded database system is that it be invisible to end users and administrators. IDS is a perfect database system for application environments that require an embedded database because you can install, deploy, and administer the database silently. It is transparent to users that there is a robust and reliable database system catering to the database requirements of the application.

Date:  11 Mar 2010
Level:  Intermediate PDF:  A4 and Letter (247 KB | 34 pages)Get Adobe® Reader®

Activity:  21942 views
Comments:  

IDS deployment utility

Introduction

You can use the IDS deployment utility to deploy snapshots of pre-configured IDS instances and the related dbspaces onto target computers. The deployment utility is included with IDS 11.50.xC6 on Linux, UNIX, and Windows platforms.

You must install IDS before creating a snapshot. You can choose to include a fully configured IDS instance in the snapshot or create the instance at the time of deployment.

The advantage of using the deployment utility is that you do not have to install and configure IDS on each target computer. You simply deploy a previously installed and fully configured IDS instance. This gives you the ability to quickly re-create a fully configured IDS instance on one or more target computers.

See the Resources section for a link to the IDS deployment utility topic in the IDS Information Center.

Using the deployment utility

To use the deployment utility, you run the ifxdeploy command either from a command line or as part of an application integration script. When you run the command in silent mode it does not require any user interaction.

Listing 1 shows you the syntax for using ifxdeploy on Linux and UNIX. Listing 2 shows the syntax for using ifxdeploy on Windows.


Listing 1. Using ifxdeploy on Linux and UNIX
    
Usage:
./ifxdeploy [-config <configfile>] [-extractcmd <command>] [-verbose]  
            [-l <logfile>] [-p <password>] [-silent] [-sqliport port]
            [-drdaport <port>] [-servernum <num>] [-rootpath <rootdbs>]
            [-file <tgz_file>] [-relocate <path>] [-force] [-keepdis] [-y]

        -config       : Specify a deployment utility config file.
        -extractcmd   : Command to extract archive
        -verbose      : Verbose mode.
        -l            : Log file name to write progress messages
        -p            : Informix user password to create user.
        -silent       : Silent mode (writes to log only).
        -sqliport     : Specify SQLI port number (default is 9088).
        -drdaport     : Specify DRDA port number (default is 9089).
        -servernum    : Specify onconfig SERVERNUM (default is 0).
        -rootpath     : Root dbspace location (default is $INFORMIXDIR/rootdbs).
        -relocate     : Chunk path relocation specification.
        -file         : Specify gzipped tar file of an IDS instance.
        -force        : Overwrite existing settings.
        -keepdis      : Keep discovery files in $INFORMIXDIR/etc.
        -y            : Do not prompt for confirmation.

Uninstall:
./ifxdeploy [-u <path> | -uninstall <path>] [-delifx]
            [-verbose ] [-silent] [-y] [-l]

        -uninstall      : Uninstall IDS from the specified path.
        -delifx         : Remove informix user and group.
        -l              : Log file name to write progress messages
        -silent         : Silent mode (writes to log only).
        -verbose        : Verbose mode.
        -y              : Do not prompt for confirmation.

        Version 2.1.0


Listing 2. Using ifxdeploy on Windows
Usage:
ifxdeploy.exe [-file <zip_file>] [-p <password> | -system] [-l <logfile>]
              [-config <configfile>] | [-silent] [-6432] [-sqliport <port> | namedpipe]
              [-drdaport <port>] [-servernum <num>] [-rootpath <rootdbs_file>]
              [-extractcmd <command>] [-installdrive <DRIVE>] [-verbose]
              [-relocate <path> ] [-force] [-y]

        -config         : Specify a deployment utility config file.
        -force          : Overwrite existing settings.
        -installdrive   : Drive where the IFMXDATA directory will be created.
        -namedpipe      : Set the primary SQLI protocol to use named pipes.
        -rootpath       : Root dbspace location 
                          (default is C:\ifmxdata\svr_name\rootdbs_dat.000)
        -relocate       : Relocate chunk specification
        -silent         : Silent mode (writes to log only).
        -system         : IDS service will logon as SYSTEM user.
        -verbose        : Verbose mode.
        -6432           : Required to Install/Uninstall 32-bit IDS on 64-bitWindows.
        -extractcmd     : Command to extract archive
        -l              : Log file name to write progress messages
        -y              : Do not prompt for confirmation.

         drdaport     : Specify DRDA port number (default is 9089).
         password     : Informix user password for creating IDS service.
         servernum    : Specify onconfig SERVERNUM (default is 0).
         sqliport     : Specify SQLI port number for the IDS instance (default is 9088).
         extractcmd   : Use provided command to extract archive instead of '7z'.
         zip file     : Specify zipped snapshot file.

Uninstall:
ifxdeploy.exe [-u <path> | -uninstall <path>] [-delifx]
              [-verbose ] [-silent] [-y] [-l]

        -uninstall      : Uninstall IDS from the specified path.
        -delifx         : Remove informix user and Informix-Admin group.
        -l              : Log file name to write progress messages
        -silent         : Silent mode (writes to log only).
        -verbose        : Verbose mode.
        -y              : Do not prompt for confirmation.

        Version 2.1.0

Deployment utility configuration file

You can pass parameters to the deployment utility using command line options, or by using a configuration file that you pass as a parameter with the -config command line option. You can also use both command line options and a configuration file.

Listing 3 shows an example of using ifxdeploy with command line options and a configuration file on Linux. Listing 4 shows an example of using ifxdeploy with command line options and a configuration file on Windows.


Listing 3. Invoking the deployment utility with command line options and config file on Linux
ifxdeploy -y -verbose -config ifxdeploy.conf -file /opt/IBM/informix/ifxdir.tgz


Listing 4. Invoking deployment utility with some command line options and config file on Windows
ifxdeploy.exe -y -verbose -config ifxdeploy.conf -file C:\ids1150temp\11.50.zip

Following are some important notes regarding the deployment utility configuration file:

  • A sample deployment utility configuration file named ifxdeploy.conf is included on the IDS server at $INFORMIXDIR/etc on Linux and UNIX and at %INFORMIXDIR%\etc on Windows.
  • You can also specify IDS instance-specific information, for the instance that is getting deployed, in the configuration file. For example:
    • INFORMIXSERVER sets the primary server name.
    • SERVERNUM sets the primary server port number.
    • INFORMIXSQLHOSTS sets the value for the INFORMIXSQLHOSTS environment variable.
    • ONCONFIG sets the ONCONFIG file. If not specified, and the ONCONFIG environment variable is not set, a new ONCONFIG file is created based on the onconfig.std file template.
  • Use BEGIN ALIAS and END ALIAS statements to define additional server names and listeners. Each alias results in a new SQLHOSTS entry and a new value for the DBSERVERALIASES configuration parameter in the ONCONFIG file.
  • Use the BEGIN ONCONFIG and END ONCONFIG statements to add to or override configuration parameters values specified in the ONCONFIG file.

Listing 5 shows an example of a deployment utility configuration file for a Windows environment.


Listing 5. Sample deployment utility configuration file entries for Windows
INFORMIXSERVER  demo_on
PROTOCOL1 onsoctcp
PORT1 9088
SERVERNUM 1

BEGIN ALIAS 
SERVERNAME alias1
PROTOCOL drsoctcp
PORT 9091
END ALIAS

INFORMIXDIR "C:\Program Files\IBM\IBM Informix Dynamic Server\11.50"

RELOCATE C:\IFMXDATA\demo_on=C:\IFMXDATANEW\demo_on

ROOTPATH C:\IFMXDATANEW\demo_on\rootdbs_dat.000

BEGIN ONCONFIG
BUFFERPOOL default,buffers=1000,lrus=8,lru_min_dirty=50.000000,lru_max_dirty=60.500000
MAX_PDQPRIORITY	80
END ONCONFIG



Dynamic chunk relocation

The deployment utility provides the option to relocate the data spaces to a new location of your choice. This option is particularly useful when the drives or the directory structures of the source template computer and the target computer are different. An example of this would be if the data spaces are on /data1 on the template computer and you want to relocate them to /data2 on the target computer.

You can set the new location of the data spaces either as an argument on the -relocate command line parameter with the ifxdeploy command, or by setting it with the RELOCATE configuration parameter in the ifxdeploy.conf file.

You can specify a single new parent directory or map multiple separate chunk paths to different locations. Listing 6 shows an example of the -relocate command line parameter being used to relocate all chunk paths to a single directory.


Listing 6. Command line argument to relocate all chunk paths to one directory
    
-relocate /data2/demo_on

When relocating the chunks, you must specify the root dbspace chunk location either as an argument on the -rootpath command line parameter with the ifxdeploy command, or by setting it with the ROOTPATH configuration parameter in the ifxdeploy.conf file.

If you relocate dbspaces, you must also relocate the root dbspace. Listing 7 shows an example of the -rootpath command line parameter being used to point to the new location of the root dbspace chunk.


Listing 7. Command line argument to specify a new rootpath
    
-rootpath /home/informix/data/online_root

2 of 8 | Previous | Next

Comments



static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Information Management
ArticleID=473646
TutorialTitle=Automate small footprint, embedded Informix Dynamic Server deployments
publish-date=03112010
author1-email=spaidi@us.ibm.com
author1-email-cc=