- All
- 4Js Genero
- Informix Administration Tips, Tricks and Tools
- Informix Back-up and Recovery
- Informix Data Mining and BI
- Informix Integration
- Informix Security
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Updated June 2024
June 2024 change log:
- sp_load into temp table handled
- sp_load no longer specifies EXPRESS (only caused warning in message log)
September 2023 change log:
- Work-around for tables containing hidden specialized columns such as VERCOLS
- DBDATE external table option removed for better flexibility via environment
- CONSTRAINTS also disabled as necessary for EXPRESS with hidden indexes.
We have raised relevant APARs to be fixed in 14.10.xC11. They are:
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Updated November 2021
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Updated December 2021
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
Updated July 2024
Thanks to Andreas Ledger, RFE INFX-I-368 has been delivered, and this feature is now available in all IDS Editions from version 14.10.FC11 onwards.Best practice has always been not to create indexes on highly duplicate data. Scanning the entire table for a common value may be quicker, and updating an index can be very costly when many pointers to rows with the same value are spread over several pages. A work-around when an index is essential in this scenario is to extend the index with a more selective column, but this obviously makes it bigger. For the first time, a far better solution was provided in IDS 14.10.FC2. It’s known as Informix 14.10 Partial Indexes Partial Indexes (click for the relevant page in the IBM Knowledge Center). In this article, we will demonstrate how to identify where such indexes might be appropriate, how to create them, and how much smaller they can potentially be.
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
- Informix Server Administrator (ISA) – written in Perl – was in the installation media up to IDS 11.70.
- Open Admin Tool (OAT) – written in PHP – co-existing with ISA from IDS 11.10 and was included in Informix Client SDK for Linux and 32-bit Windows up to IDS 12.10.FC9. OAT can still be used with the latest IDS versions but is not secure as it uses Flash and outdated Apache 2.4.2.
- InformixHQ (HQ) – written in Java – is an HTML5 Web GUI provided with IDS 12.10.FC13 or 14.10.FC1 onwards, and has most of the functionality of OAT, and more.
[Read More…]
Abstract
[Read More…]
Updated June 2020
New related features regarding Informix storage and backup encryption are available in IDS 14.10 and described in other Oninit articles.
Abstract
- Prior to IDS 10, this had to be performed after backup files had been created.
- IDS 10 allowed backup or restore via any pipe with “ontape -t STDIO”, but only for archives.
- From IDS 11, configuration parameters exist to pass all backups and restores through specified filter commands, which is ideal for in-line compression and encryption.
[Read More…]
Updated June 2020
Informix stored procedure for mass delete: Parameter “p_select” altered to LVARCHAR (default length 2048) as VARCHAR(255) not long enough in real situations.
Updated January 2024
Informix stored procedure for mass delete resolved: 305: Subscripted column (p_select) is not of type CHAR, VARCHAR, TEXT nor BYTES.
Abstract
[Read More…]
Abstract
Although Genero BDL is based on Informix 4GL and both tools can be used to build powerful database applications, there is a world of difference between how a developer will use these tools. In our experience, to get the most out of Genero, it’s vital to have a good understanding of Genero Studio (GST) – the graphical integrated development environment that is shipped with the Genero product. Find out more about managing development projects in Genero Studio below:[Read More…]
Updated June 2020
Oninit RFE was delivered with IDS 12.10.xC10 to make switching mirrors easier:
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
- Highlighting form elements dynamically
- Hiding and revealing form elements dynamically
- Using new GUI widgets
- Additional functionality for ‘tables’
- Dragging and dropping data from and into form elements
- Using a tree view
- Incorporating web components
[Read More…]
Updated June 2020
Informix SQL Capture Techniques: InformixHQ GUI available from IDS 12.10.FC13 and 14.10.FC1.
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
As we’ve described in other articles, there are many reasons to upgrade from Informix 4GL to Genero; however, it’s not always desirable to upgrade your entire application in one go from a Text User Interface (TUI) to a Graphical User Interface (GUI). This article focuses on how you to run a green screen application in Genero its native format, whilst allowing part of the same application to be rendered as a GUI application.[Read More…]
Abstract
Originally developed as a GUI replacement to “green-screen” Informix 4GL, Genero has become a powerful and advanced development suite, with a long list of supported platforms, database engines and deployment options. A host of new features are added at every release; Whether you’re running an early version, still on 4gl, or looking for a platform for a new development project, there are some very compelling reasons to upgrade to the latest Genero release.[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract
[Read More…]
Abstract:
IBM Guardium Vulnerability Assessment is a key part of the Guardium Database Security portfolio. It is designed to help harden database infrastructures by scanning targeted systems on a scheduled basis to detect vulnerabilities. This article explains what IBM Guardium Vulnerability Assessment (VA) actually delivers and what the differences are between the various editions. Note that since the introduction of Guardium 10, there are no longer different editions of this product and all of the Advanced Edition features are available with the product.[Read More…]
Abstract
In September 2015, IBM released Guardium 10, the latest version of its flagship enterprise database security suite. IBM Guardium is relevant to any organization wishing to improve its database security management and is becoming the de facto standard for database activity monitoring and database vulnerability assessment for IBM DB2, IBM Informix, Oracle and SQL Server. This article is a quick glance at some of the more obvious operational improvements with Guardium 10, comparing the installation and configuration process and taking a look at the new interface. This article is aimed at those already familiar with Guardium or those who may have evaluated earlier versions and would like to start to explore the capabilities of the new version.[Read More…]
Abstract:
This technical article will guide the reader through an IBM Guardium v9.5 VM installation and focus on some of the more obvious do’s and don’ts. If nothing else, if this is your first time installing Guardium this article will save you hours of head scratching. Note that there are no easily accessible trials for IBM Guardium however the IBM Part Numbers have been referenced to ease location of the required software.[Read More…]
Abstract
In Informix 4GL the only way to navigate an application is using a “ring” menu. This works very well when the application has a small number of modules with one menu but in complex applications, where there are many modules grouped into various submenus, the ring menu makes navigating the application very cumbersome. Modern alternatives such as tree-view and drop-down menus don’t exist in 4GL, but they do exist in Genero! This article discuss how best to navigate a Genero application:[Read More…]
Abstract
AGS Server Studio & Sentinel are the tools of choice for day-to-day Informix DBA tasks, SQL development and system monitoring. For those who have been using it as long as we have, it is worth recapping on some of the features added since our version 7 video demos at http://www.serverstudio.co.uk were created.[Read More…]
Abstract:
Understanding Informix configurations is key to get the most out of your Informix installations. With Informix versions 11.50, 11.70 and 12.10, IBM has introduced an array of new configuration parameters that support new advanced capabilities and provide increased flexibility and agility. With all of these versions, IBM has also introduced greater self-management capability meaning that the database server can more readily adapt to its environment and workload – the database server itself takes control over part of its run-time configuration. This article examines the fundamental configuration data we can expect to find on any Informix systems today and where we find it, to ultimately help you improve your understanding of Informix configurations.[Read More…]
Abstract
Historically, data input applications only allowed a user to access one part of the application at any one time. If a user needed to access another part of the application, for example to view customer details whilst updating an order, he or she would need to stop what they were doing and navigate to another part of the same application. As applications have grown larger and more complex this becomes a big user productivity drain. This article describes how to solve this problem elegantly and simply in Genero, by allowing multiple modules of the same application to run concurrently in a single window and ultimately improve user productivity with Genero.[Read More…]
Abstract
In the commercial world today we see growing complexity and depth in the information we store. A simple example would be a custom product or order line that is itself made up of many other products each with a variety of purchasing or build options. Historically data input applications did not support this type of requirement very well. This article describes how to solve this programming problem by creating, using and managing concurrent data inputs and displays in Genero.[Read More…]
Abstract
Microsoft SQL Server is a popular choice for consolidation of report data from multiple database products, as its Linked Server feature – which is included in the base product – makes it possible to access tables in heterogeneous databases within T-SQL via OLE DB or ODBC. However, the settings are not obvious that are required to make this work with Informix Standard Engine (SE) – the legacy version of Informix that uses C-ISAM to store tables (*.dat) and indexes (*.idx) in individual files (whereas Dynamic Server manages storage within its own “dbspaces”). This article reveals how to make Microsoft SQL Linked Server and Informix Standard Engine work together.[Read More…]
Updated June 2020
Fixed in IDS 12.10.xC6 and 14.10: https://www.ibm.com/support/pages/apar/IT09329
Abstract
Bug in IDS 11: This article describes a bug in a function provided with IBM Informix Dynamic Server (IDS) which could result in disk space being filled. We have reported this to IBM who have assigned defect number (APAR) IT09329. Meanwhile, you can fix your system using code provided below.[Read More…]
Abstract
Continuing the series of lesser known IDS commands lurking in the bin directory of your Informix installation directory, today we’re looking at onsecurity. It is very important to keep your database server and associated files secure; as well as keeping your data safe, later versions of IDS will refuse to start should the base ownership and permissions be too insecure. If your installation has been moved or copied, or other files or directories been added over time, IDS may not be running in the most secure environment. Shipped with IDS since version 11.50.FC4, the onsecurity utility can check a given directory path is secure, report on any issues found, and can even generate a script to remedy the situation.[Read More…]
Abstract
Range interval tables can save disk space. If for instance, you wish to keep just a week’s worth of transactions, in order to save disk space perhaps, then it is quite straightforward to use a range interval fragmented table, and whenever you wish you can almost instantly purge any unwanted data by using the DROP or DETACH clause in the ALTER FRAGMENT statement. In any release prior to v12.10 this would have to done manually, as it were (albeit via a cron job perhaps), but now it can be managed entirely by the instance with the ‘rolling window’ functionality, as described in this article.[Read More…]
Abstract
In this series of articles we are exploring some of the lesser known, but still useful, commands hidden away in your Informix bin directory. The article explores the onclean utility. It’s often necessary to run more than one database instance on a single server. While this is a useful feature and quite easy to do with IDS, when things go wrong, it’s not always straightforward to tie each oninit binary back to a particular instance, and killing the wrong binary or shared memory segment can be disastrous. Since IDS 11, the onclean utility has been bundled with the server; this useful little program can help take some of the pain out of cleaning up an instance that has not shut down properly, killing only the relevant server processes, and dropping any attached shared memory segments.[Read More…]
Abstract
Microsoft SQL Server is a popular choice for consolidation of report data from multiple database products, as its Linked Server feature – which is included in the base product – makes it possible to access tables in heterogeneous databases within T-SQL via OLE DB. However, there are some settings required to make this work seamlessly, which are described in this article as they are not that obvious.[Read More…]
[Read More…]
Abstract
Microsoft SQL Server is a popular choice for consolidation of report data from multiple database products, as its Linked Server feature – which is included in the base product unlike Informix Enterprise Gateway Manager – makes it possible to access tables in heterogeneous databases within T-SQL via OLE DB. However, there are some settings required to make this work seamlessly, which are described in this article as they are not that obvious.[Read More…]
Abstract
[Read More…]
Abstract
Most modern Linux distributions install a journaling file system, i.e., a file system that keeps track of changes, by default. While providing excellent recovery for standard file types on the disk, such journaling can be significantly detrimental for a database server. Raw devices are becoming obsolete on many distributions, as DIRECT_IO can give comparable performance. Choosing the right file filesystem and appropriate features is an important decision for a database server administrator, getting this right from the start can prevent headaches further down the line. Read on to learn more about a journaling file system:[Read More…]
Abstract
You may experience problems with some applications such as Sage Line 500 running on Informix Dynamic Server with High Availability Data Replication (HDR). When running period end or maintenance programs that recreate tables after purging some of the contents, the table may not immediately be available afterwards, creating locked tables and causing the program to crash. This article provides a work-around.[Read More…]
Abstract
This fourth and final article in the Easy IWA series provides a demonstration of accelerating a selection of TPCH queries, based on the TPCH warehouse queries, by IBM Informix Warehouse Accelerator. Building on previous articles, this provides the ability to accelerate a set of SQL queries within a directory against IWA with sub-second timing, demonstrating the speed of query acceleration that can be attained. Provided with this article are the SQL queries and a driver script where a database (or multiple databases) is specified and the SQL queries are run against the specified database with the request to accelerate by IWA[Read More…]
Abstract
This third article in the Easy IWA series provides specific worked examples of creating two Data Marts under IBM Informix Dynamic Server and IBM Informix Warehouse Accelerator 12.10.FC4. Both examples use the “smart mart” utility, with the first example loading from external tables into IBM Informix tables and subsequently into an IWA Data Mart; the second loads directly into an IWA Data Mart from external tables. Both examples use the TPCH data generation utility and schema as detailed in a previous article, with the addition of the removal of unsuitable “*_comment” columns via a simple in-line pipe and sed or awk approach.[Read More…]
Abstract
This second article in the Easy IWA series details how to create an Accelerator under IBM Informix 12.10.FC4 Workgroup and Advanced editions. Worked examples to establish initial memory requirements are provided, which is key to effective and efficient resource usage and ensuring that initial provisions are reasonable. The Accelerator provides the interface between IBM Informix and the Warehouse Accelerator, performing mart administration and query processing.[Read More…]
Abstract
This first article in the Easy IWA series details the regular requirement for a referentially complete database schema along with the capability to generate and load data during testing and POC exercises. This article provides information on implementing the TPCH database schema in IBM Informix, the dbgen data generation utility and loading the generated data.[Read More…]
Abstract
This article provides an overview of the Easy IWA Technical Articles Series. Using the TPCH database schema, Data Generation utilities and sample queries from http://www.tpc.org, this series covers everything to get up and running with IBM Informix Warehouse Accelerator including data generation, creation of an accelerator, loading a Data Mart and running a set of queries.[Read More…]
Abstract
ILMT is an ever increasingly more important piece of software with the growth in usage of virtualized technology. This article provides a brief overview of what ILMT is, why it may be relevant and some considerations with deployment.[Read More…]
Abstract
The ‘unload’ command is not part of SQL, it is functionality built into dbaccess, other command line utilities and some GUI tools. This article shows how to extract data to a flat file directly from SQL in your application code (for instance), but only in version 11.50.xC6 or later.[Read More…]
Abstract
What is TimeSeries? TimeSeries has actually been around for a fairly long time dating back to 1992 where it started at Illustra. It was then ported to Informix when Illustra was acquired by IBM, followed by the first Informix release of the TimeSeries Data Blade in 1996. However, it is now beginning to generate a lot of hype and interest. The reason why we are only now starting to hear about TimeSeries with any persistence is quite simply due to need and achievability. By this I mean: firstly, there are now larger amounts of data stored about numerous things than there were 15 years ago – simply put data is increasingly the lifeblood of every industry. Secondly, the hardware capabilities have progressed sufficiently to manage these increasing amounts of data; however, due to these huge data stores, things are becoming sluggish, and companies are looking for improved ways to store and manage their data: enter TimeSeries…again![Read More…]
Abstract
The ability to view the size of all your databases can be of great value. However, there is no command currently provided with IBM Informix Dynamic Server that shows the total size of each of your databases in an instance. If you want to know which databases are using the most space, but do not have a GUI or need an automated script, this article provides an SQL statement that will enable you to view the size of any database you wish to measure .[Read More…]
Abstract
In cases where a simple IBM Informix Primary / HDR Secondary server pair exists, it may be considered unnecessary to implement Informix Connection Manager to manage switching between the two, as OLTP applications can simply connect to whichever is the active Primary in a group defined in the sqlhosts file. This article describes a unique method for connecting appropriate applications to the active HDR Secondary in this scenario.[Read More…]
Abstract
This article describes how to “discover” IBM Informix instances on a specified host and then gather further information about databases within each discovered instance.[Read More…]
Abstract
One major factor to obtaining and sustaining good performance within an IBM Informix database is having the appropriate statistics available. This article provides another method and explores the “output to pipe” utility within SQL. There are several ways that statistics can be maintained, the most common, apart from home grown, are:- AUS – Auto Update Statistics, driven by the dbscheduler and configured most easily through OAT
- Art Kagel’s dostats package – widely used in the IBM Informix Community and comprehensive
[Read More…]
Updated June 2020
Open source C program “bsed” is no longer accessible and has been superceded by “bbe”:
Examples in this article have been reworked accordingly.
Abstract
Depending on your IDS version, you may be unable to restore a test instance from production using “ontape” if the edition (Ultimate/Enterprise, Growth/Workgroup or Innovator) is different, even if the version is otherwise the same. This article provides a solution.[Read More…]
Abstract
Avoiding sub-queries can be essential to reduce long run-times on large data sets. However, it is sometimes necessary to identify rows in one table for which there is no associated row in another table. An example would be an order for which there are no order detail lines. The conventional approach is to use theNOT EXISTS (sub-query)
, but this can be extremely slow for large data sets. This article demonstrates how an ANSI join can achieve the same result much more efficiently, even on large data sets.
[Read More…]
Abstract
IBM Informix can use STDIO for TAPEDEV when performing backups / restores, which can be utilised to “pipe” backup data across to a target IBM Informix server, obviating the need for an intermediate file on disk. The following shows how this can be used for performing a quick copy of an IBM Informix instance.[Read More…]
Abstract
This article details how to resolve IBM Informix OpenAdmin web server shared library dependencies on OpenSuse 13.1; if these shared libraries are not present, the OAT web server fails to start.[Read More…]