views:

29

answers:

3

Does anyone know if Informix has the same capability as Oracle with respect to the autoextend feature. With Oracle I can create a datafile and by using the autoextend feature Oracle will automatically grow the file when it gets full.

Does Informix have anything like that for chunks? I can't seem to find anything in the documentation.

Thanks,

A: 

Nope!.. IDS doesn't autoincrement extents.

Frank Computer
+1  A: 

You can manually add chunks to existing dbspaces to give your databases more space, this can be done with the engine online and there is no impact. There is nothing built into Informix that will do this for you automatically.

One workaround would be to write a script that periodically monitors the free space in your dbspaces and executes the onspaces -a command to add a chunk to a dbspace if it needs it.

A similar solution would be to write a stored procedure that is executed by the Informix scheduler to check for dbspace free space and uses the SQL Admin API to add a chunk.

You can also modify alarmprogram.sh to catch the alarm Informix raises when a dbspace becomes full and run a script to use onspaces -a to add a chunk. This isn't great because it waits for the dbspace to become full before taking action.

The typical solution to this problem is to size your dbspaces with growth in mind to minimize the times you need to add a chunk and to have a script monitor dbspace free space each day and alarm when it is getting close to needing more space.

Andrew Ford
Thanks a lot, you can help me with your possible workaround, bring me the script or give some additional details please."One workaround would be to write a script that periodically monitors the free space in your dbspaces and executes the onspaces -a command to add a chunk to a dbspace if it needs it."
MaK
A: 

Hi, you could check Andrew Ford´s solution, on his blog: http://www.informix-dba.com/2010/08/autoextenze-dbspace-enhancement-for.html

Best regards

Alexandre Marini