IBM Informix
Version 11.1
IBM Informix Dynamic Server Getting Started Guide
G229-6372-00
IBM Informix
Version 11.1
IBM Informix Dynamic Server Getting Started Guide
G229-6372-00
Note:
Before using this information and the product it supports, read the information in “Notices” on page C-1.
This document contains proprietary information of IBM. It is provided under a license agreement and is protected by copyright law. The information contained in this publication does not include any product warranties, and any statements provided in this publication should not be interpreted as such.
When you send information to IBM, you grant IBM a nonexclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you.
© Copyright International Business Machines Corporation 1996, 2007. All rights reserved.
US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
Contents
Introduction ...... vii
In This Introduction ...... vii
About This Publication ...... vii
Types of Users ...... vii
Software Dependencies ...... viii
Assumptions About Your Locale ...... viii
Demonstration Database ...... viii
New Features in Version 11.10 ...... ix
Documentation Conventions ...... ix
Typographical Conventions ...... ix
Feature, Product, and Platform Markup ...... x
Syntax Diagrams ...... x
Example Code Conventions ...... xiii
Additional Documentation ...... xiv
IBM Informix Information Center ...... xiv
Installation Guides ...... xiv
Online Notes ...... xiv
Informix Error Messages ...... xvi
Publications ...... xvi
Online Help ...... xvi
Accessibility ...... xvii
Compliance with Industry Standards ...... xvii
IBM Welcomes Your Comments ...... xvii
Chapter 1. Introducing Dynamic Server and Client Products ...... 1-1
In This Chapter ...... 1-1
IBM Informix Dynamic Server ...... 1-1
IBM Informix Dynamic Server Edition Comparison ...... 1-2
Installation and Migration ...... 1-2
Products Bundled with the Database Server ...... 1-2
BladeManager ...... 1-2
DataBlade API ...... 1-2
DataBlade Developers Kit ...... 1-3
IBM Informix Spatial DataBlade module ...... 1-3
Server Studio ...... 1-3
IBM Informix Client SDK Products ...... 1-3
Related IBM Informix Products ...... 1-5
IBM Informix Server Administrator (ISA) ...... 1-5
OpenAdmin Tool for IDS ...... 1-6
IBM Informix MaxConnect (UNIX) ...... 1-6
IBM Office Connect ...... 1-6
IBM Informix Data Director for Web ...... 1-6
DataBlade Modules ...... 1-6
Related IBM Data Server Products ...... 1-7
Other Related IBM Products ...... 1-7
Global Language Support ...... 1-9
Chapter 2. Using New Features in Dynamic Server ...... 2-1
In This Chapter ...... 2-4
New Features in Version 11.10 of IBM Informix Dynamic Server ...... 2-5
Multiple Remote Standalone Secondary Servers ...... 2-6
Multiple Shared Disk Secondary Servers ...... 2-6
Backup and Restore to Directories with ontape ...... 2-6
Continuous Logical Log Restore ...... 2-6
Encrypted Communications for HDR ...... 2-7
© Copyright IBM Corp. 1996, 2007 iii
Improved Parallelism during Backup and Restore ...... 2-7
Automatic Ordering of dbspaces during Backup and Restore ...... 2-7
RTO Policy to Manage Server Restart ...... 2-7
Non-blocking Checkpoints ...... 2-7
Performance Improvements for Enterprise Replication ...... 2-8
ON-Bar Performance Report ...... 2-8
Transform Data during Backup and Restore ...... 2-8
Improved Performance for Cooked Files with Direct I/O on UNIX ...... 2-8
Improved Performance of Online Index Creation ...... 2-9
SQL Administration API ...... 2-9
Schedule Administrative Tasks ...... 2-9
Monitor and Analyze Recent SQL Statements ...... 2-10
Dynamically Change Enterprise Replication Configuration Parameters and Environment Variables . . . . 2-10
Dynamically Rename Enterprise Replication Columns, Tables, and Databases ...... 2-10
Truncate Replicated Tables ...... 2-10
Improved Statistics Maintenance ...... 2-10
Installation Improvements on Windows Platforms ...... 2-11
Session Configuration Routines ...... 2-11
Multiple Users for Administration Mode ...... 2-11
PHP-based OpenAdmin Tool for IDS ...... 2-12
Named Parameters in a JDBC CallableStatement ...... 2-12
Index Binary Data Types ...... 2-12
Trigger Enhancements ...... 2-12
Derived tables in the FROM Clause of Queries ...... 2-13
Index Self-Join Query Plans ...... 2-13
Optimizer Directives in ANSI-Compliant Joined Queries ...... 2-14
Deployment Wizard ...... 2-14
Enhanced Concurrency with Committed Read Isolation ...... 2-14
Enhanced Data Types and UDR Support in Cross-Server Distributed Operations ...... 2-15
XML Publishing ...... 2-15
Index Hierarchical Data ...... 2-15
Basic Text Search ...... 2-16
Improved Concurrency with Private Memory Caches for Virtual Processors ...... 2-16
Web Feature Service for Geospatial Data ...... 2-16
Support for Data Server Clients with DRDA ...... 2-16
Statement Labels, GOTO, and LOOP Statements in the SPL language ...... 2-17
New SQL Functions ...... 2-17
Automatic Re-Compilation of Prepared Statements ...... 2-18
Label-Based Access Control ...... 2-18
New Features in Version 10.00 of IBM Informix Dynamic Server ...... 2-19
New Features in Version 10.00.xC4 ...... 2-19
New Features in Version 10.00.xC3 ...... 2-20
New Features in Version 10.00.xC1 ...... 2-23
New Features in Version 9.4 ...... 2-33
Security Enhancement ...... 2-34
Database Server Usability Enhancements ...... 2-34
Performance Enhancements ...... 2-36
Enterprise Replication Enhancements ...... 2-37
Extensibility Enhancements ...... 2-39
SQL Enhancements ...... 2-40
GLS Enhancements ...... 2-44
Reliability, Availability, and Supportability Features ...... 2-44
DataBlade API Enhancements ...... 2-45
High-Performance Loader Enhancements ...... 2-46
Backup and Restore Enhancements ...... 2-46
Installation Enhancements ...... 2-46
Changed or New URLs ...... 2-47
New Features in Version 9.3 ...... 2-48
UNIX Bundle Installer ...... 2-48
Database Server Usability Enhancements ...... 2-48
DataBlade API Enhancements ...... 2-49
iv IBM Informix Dynamic Server Getting Started Guide
Enterprise Replication Enhancements ...... 2-51
Extensibility Enhancements ...... 2-54
J/Foundation Enhancements ...... 2-55
Performance Enhancements ...... 2-55
SQL Enhancements ...... 2-56
New Features in Dynamic Server, Version 9.21 ...... 2-57
ANSI Join Syntax ...... 2-57
Rename Index Statement ...... 2-57
Nonlogging (RAW) Tables ...... 2-57
onpladm Utility ...... 2-57
The onbar -b -l Command ...... 2-58
9.x DB-Access to 7.x Synonyms ...... 2-58
SQL Statement Cache Improvements ...... 2-58
DataBlade API Features ...... 2-59
Java Features in 9.21 ...... 2-59
MaxConnect Support ...... 2-60
Chapter 3. Using Existing Dynamic Server Features ...... 3-1
In This Chapter ...... 3-2
Dynamic Scalable Architecture ...... 3-2
The Shared-Memory Component ...... 3-2
The Disk Component ...... 3-3
The Virtual Processor Component ...... 3-4
Client/Server Connections ...... 3-4
High Performance ...... 3-5
Memory Management ...... 3-5
Parallelization ...... 3-6
Query Optimizer ...... 3-6
Fault Tolerance and High Availability ...... 3-6
Backup and Restore ...... 3-6
Fast Recovery ...... 3-8
Mirroring ...... 3-8
Data Replication ...... 3-8
Database Server Security ...... 3-9
Informix RDBMS Features ...... 3-10
Structured Query Language (SQL) ...... 3-10
Stored Procedure Language (SPL) ...... 3-10
System Catalog Tables ...... 3-11
Data Types ...... 3-11
Application Types ...... 3-13
OLTP Applications ...... 3-14
DSS Applications ...... 3-14
Database Support ...... 3-14
Relational Databases ...... 3-14
ANSI-Compliant Databases ...... 3-14
Object-Relational Databases ...... 3-15
Dimensional Databases ...... 3-18
Distributed Queries and Multiphase Transactions ...... 3-19
Access Methods ...... 3-20
Primary Access Methods ...... 3-20
Secondary Access Methods ...... 3-20
User-Defined Primary Access Methods ...... 3-20
User-Defined Secondary Access Methods ...... 3-21
Chapter 4. Installing, Administering, and Tuning the Database Server ...... 4-1
In This Chapter ...... 4-1
Database Server Users ...... 4-1
Planning, Installing, and Configuring the Database Server ...... 4-1
Administering the Database Server ...... 4-4
Monitoring Performance ...... 4-7
Contents v
Troubleshooting the Database Server ...... 4-8
Chapter 5. Designing, Maintaining, and Extending the Database ...... 5-1
In This Chapter ...... 5-1
Designing, Developing, and Extending the Database ...... 5-1
Developing Application Programs that Access the Database ...... 5-3
Chapter 6. Using the Documentation ...... 6-1
In This Chapter ...... 6-1
The IBM Informix Documentation Set ...... 6-1
IBM Informix Dynamic Server Publications ...... 6-1
Client SDK and Connectivity Publications ...... 6-3
DataBlade Publications ...... 6-4
Appendix A. Database Server Utilities ...... A-1
Appendix B. Accessibility ...... B-1
Accessibility features for IBM Informix Dynamic Server ...... B-1
Accessibility Features ...... B-1
Keyboard Navigation ...... B-1
Related Accessibility Information ...... B-1
IBM and Accessibility ...... B-1
Notices ...... C-1
Trademarks ...... C-3
Index ...... X-1
vi IBM Informix Dynamic Server Getting Started Guide
Introduction
In This Introduction ...... vii
About This Publication ...... vii
Types of Users ...... vii
Software Dependencies ...... viii
Assumptions About Your Locale ...... viii
Demonstration Database ...... viii
New Features in Version 11.10 ...... ix
Documentation Conventions ...... ix
Typographical Conventions ...... ix
Feature, Product, and Platform Markup ...... x
Syntax Diagrams ...... x
How to Read a Command-Line Syntax Diagram ...... xi
Keywords and Punctuation ...... xiii
Identifiers and Names ...... xiii
Example Code Conventions ...... xiii
Additional Documentation ...... xiv
IBM Informix Information Center ...... xiv
Installation Guides ...... xiv
Online Notes ...... xiv
Locating Online Notes ...... xv
Online Notes Filenames ...... xv
Informix Error Messages ...... xvi
Publications ...... xvi
Online Publications ...... xvi
Printed Publications ...... xvi
Online Help ...... xvi
Accessibility ...... xvii
Compliance with Industry Standards ...... xvii
IBM Welcomes Your Comments ...... xvii
In This Introduction
This introduction provides an overview of the information in this publication and
describes the conventions it uses.
About This Publication
® ® Use this publication to get started with IBM Informix Dynamic Server, Version
11.10. This publication describes the products bundled with Dynamic Server, the
new features in Version 11.10, an overview of major features in Dynamic Server,
and the documentation for Dynamic Server. It also summarizes the basic tasks for
using the database server and provides a quick reference to command-line utilities.
This section discusses the organization of the publication and the intended
audience.
Types of Users
This publication is written for all Dynamic Server users:
v Database server administrators
v Database administrators
v Performance engineers
v Database users
© Copyright IBM Corp. 1996, 2007 vii
v Programmers in the following categories
– Application developers
™ – DataBlade module developers
– Authors of user-defined routines
v Technical support
This publication is written with the assumption that you have the following
background:
v A working knowledge of your computer, your operating system, and the utilities
that your operating system provides
v Some experience working with relational databases or exposure to database
concepts
v Some experience with computer programming
v Some experience with database server administration, operating- system
administration, or network administration
If you have limited experience with relational databases, SQL, or your operating
system, refer to Chapter 6, “Using the Documentation,” on page 6-1, for a list of
supplementary titles.
Software Dependencies
This publication is written with the assumption that you are using Dynamic Server,
Version 11.10, as your database server. Check the release notes for specific version
compatibility.
Assumptions About Your Locale
IBM Informix products can support many languages, cultures, and code sets. All
the information related to character set, collation, and representation of numeric
data, currency, date, and time is brought together in a single environment, called a
Global Language Support (GLS) locale.
The examples in this publication are written with the assumption that you are
using the default locale, en_us.8859-1. This locale supports U.S. English format
conventions for date, time, and currency. In addition, this locale supports the ISO
8859-1 code set, which includes the ASCII code set plus many 8-bit characters such
as é, è, and ñ.
If you plan to use nondefault characters in your data or your SQL identifiers, or if
you want to conform to the nondefault collation rules of character data, you need
to specify the appropriate nondefault locale.
For instructions on how to specify a nondefault locale, additional syntax, and other
considerations related to GLS locales, see the IBM Informix GLS User's Guide.
Demonstration Database
The DB–Access utility, which is provided with your IBM Informix database server
products, includes one or more of the following demonstration databases:
v The stores_demo database illustrates a relational schema with information about
a fictitious wholesale sporting-goods distributor. Many examples in IBM
Informix publications are based on the stores_demo database.
viii IBM Informix Dynamic Server Getting Started Guide
v The superstores_demo database illustrates an object-relational schema. The
superstores_demo database contains examples of extended data types, type and
table inheritance, and user-defined routines.
For information about how to create and populate the demonstration databases,
see the IBM Informix DB–Access User's Guide. For descriptions of the databases and
their contents, see the IBM Informix Guide to SQL: Reference.
The scripts that you use to install the demonstration databases reside in the
® $INFORMIXDIR/bin directory on UNIX and in the %INFORMIXDIR%\bin
directory on Windows.
New Features in Version 11.10
For a comprehensive list of new features in IBM Informix Dynamic Server, Version
11.10, see Chapter 2, “Using New Features in Dynamic Server,” on page 2-1.
Documentation Conventions
This section describes the conventions that this publication uses. These conventions
make it easier to gather information from this and other volumes in the
documentation set.
The following conventions are discussed:
v Typographical conventions
v Other conventions
v Syntax diagrams
v Command-line conventions
v Example code conventions
Typographical Conventions
This publication uses the following conventions to introduce new terms, illustrate
screen displays, describe command syntax, and so forth.
Convention Meaning
KEYWORD Keywords of SQL, SPL, and some other programming languages appear
in uppercase letters in a serif font.
italics Within text, new terms and emphasized words appear in italics. Within
syntax and code examples, variable values that you are to specify
appear in italics.
boldface Names of program entities (such as classes, events, and tables),
environment variables, file and pathnames, and interface elements (such
as icons, menu items, and buttons) appear in boldface.
monospace Information that the product displays and information that you enter
appear in a monospace typeface.
KEYSTROKE Keys that you are to press appear in uppercase letters in a sans serif
font.
> This symbol indicates a menu item. For example, “Choose Tools >
Options” means choose the Options item from the Tools menu.
Introduction ix
Tip: When you are instructed to “enter” characters or to “execute” a command,
immediately press RETURN after the entry. When you are instructed to “type”
the text or to “press” other keys, no RETURN is required.
Feature, Product, and Platform Markup
Feature, product, and platform markup identifies paragraphs that contain
feature-specific, product-specific, or platform-specific information. Some examples
of this markup follow:
Dynamic Server
Identifies information that is specific to IBM Informix Dynamic Server
End of Dynamic Server
Windows Only
Identifies information that is specific to the Windows environment
End of Windows Only
This markup can apply to one or more paragraphs within a section. When an
entire section applies to a particular product or platform, this is noted as part of
the heading text, for example: ®
Table Sorting (Linux )
Syntax Diagrams
This guide uses syntax diagrams built with the following components to describe
the syntax for statements and all commands other than system-level commands.
Syntax diagrams depicting SQL and command-line statements have changed in the
following ways:
v The symbols at the beginning and end of statements are double arrows.
v The symbols at the beginning and end of syntax segment diagrams are vertical
lines.
v How many times a loop can be repeated is explained in a diagram footnote,
whose marker appears above the path that is describes.
v Syntax statements that are longer than one line continue on the next line.
v Product or condition-specific paths are explained in diagram footnotes, whose
markers appear above the path that they describe.
v Cross-references to the descriptions of other syntax segments appear as diagram
footnotes, whose markers immediately follow the name of the segment that they reference.
The following table describes syntax diagram components.
Component represented in PDF Component represented in HTML Meaning
>>------Statement begins.
------> Statement continues on next
line.
x IBM Informix Dynamic Server Getting Started Guide
Component represented in PDF Component represented in HTML Meaning
>------Statement continues from
previous line.
------>< Statement ends.
------SELECT------Required item.
--+------+--- Optional item.
’------LOCAL------’
---+-----ALL------+--- Required item with choice.
+--DISTINCT-----+ One and only one item must
’---UNIQUE------’ be present.
---+------+--- Optional items with choice
+--FOR UPDATE-----+ are shown below the main
’--FOR READ ONLY--’ line, one of which you might
specify.
.---NEXT------. The values below the main
----+------+--- line are optional, one of
+---PRIOR------+ which you might specify. If
’---PREVIOUS-----’ you do not specify an item,
the value above the line will
be used as the default.
.------,------. Optional items. Several items
V | are allowed; a comma must
---+------+--- precede each repetition.
+---index_name---+
’---table_name---’
>>-| Table Reference |->< Reference to a syntax
segment.
Table Reference Syntax segment.
|--+-----view------+--|
+------table------+
’----synonym------’
How to Read a Command-Line Syntax Diagram
The following command-line syntax diagram uses some of the elements listed in
the table in the previous section.
Creating a No-Conversion Job