Axional DBStudio can also be started in web server mode.

1 Startup

Th web server is started by passing the parameter -server to the run java command :

  • MacOS:
    Copy
    $ java -XstartOnFirstThread -jar axional-server-dbstudio-[VERSION]-all.jar --server [--port num] [--swt] [--api]
  • Linux:
    Copy
    $ java -jar axional-server-dbstudio-[VERSION]-all.jar  --server [--port num]  [--swt] [--api]
  • Windows:
    Copy
    C: java -jar axional-server-dbstudio-[VERSION]-all.jar --server [--port num]  [--swt] [--api]

By default, with no arguments, the SWT application is started and the http server is disabled.

The following options are available:

  • --server: Starts only the web server. The SWT app is not started.
  • --port num : Specify a port number to be used by the web server.
  • --swt: Forces SWT app to be started. This option only makes sense when used in conjuction with --server
  • --api: Enables REST api web service (requires -server mode).

2 SQL client

SQL Command Line Interface (CLI) allows users to run SQL statements on any selected database. The interface is divided in two areas, the editor section on top and the log/results section on bottom.

  • Multiple statements can be executed.
  • Statement separator is semicolon
  • Statements will be executed sequentially, and execution will stop as soon as an error occurs.
  • Execution will apply for all text in editor or selected text if selection exists.
  • Statements are executed using a connection pool.
  • A single connection from pool is used per an execution block.
  • Transaction control is set to autocommit by default.
  • Transaction control statements can be used in statements.
  • When execution finishes with an open transaction with no explicit commit, rollback is done.

2.1 Editor Actions

  • : Run SQL statements
  • : Stop ongoing execution of SQL statements
  • : Open history view with last and favorite querys
  • : Undo the most recent editor action
  • : Redo the most recent editor action

2.2 Results

The results of executions are displayed in tabs. The first tab is always a logs tab, which shows a log of executions in the SQL Editor.

2.2.1 Data tabs

Each statement result is displayed in a different tab. The name of the tab is the name of the main table of the statement. When a statement does not result a ResultSet, a small table is displayed with the result of the execution showing status, time, rows updated.. etc

When a statement fails the following table is displayed:

  • : Reloads data shown in panel, running the SQL statement that produced the output again.
  • : Reloads panel data every selected seconds.
  • : Exports data in panel to file.

2.2.2 SQL history

Show the historic of executions for the selected database. When clicking a row, the sql statement is copied into the sql editor. A text input is provided to filter the sql statement list

3 DB explorer

3.1 Objects explorer

The database objects explorer shows a hierachical view of database objects.

3.1.1 Schemas

In a relational database, the schema defines the tables, fields, relationships, views, indexes, packages, procedures, functions, triggers, types, sequences, views, synonyms and other elements.

The Schemas node shows the database defined schemas (owner) and the objects that belongs to it.

The general view for Tables, Views, etc, contains the same information but ignoring schema ownership.

3.1.2 Tables

The Tables node retrieves a description of the tables available in the given catalog. Only table descriptions matching the catalog, schema, table name and type criteria are returned. They are ordered by TABLE_TYPE, TABLE_CAT, TABLE_SCHEM and TABLE_NAME.

Columns

Retrieves a description of table columns available in the table.

Data

Shows first (1000) rows of table data

Indexes

Retrieves a description of the given table's indices and statistics. They are ordered by NON_UNIQUE, TYPE, INDEX_NAME, and ORDINAL_POSITION.

Primary key

Retrieves a description of the given table's primary key columns. They are ordered by COLUMN_NAME.

Privileges

Retrieves a description of the access rights for the table. Note that a table privilege applies to one or more columns in the table. It would be wrong to assume that this privilege applies to all columns (this may be true for some systems but is not true for all.)

Constraints

Triggers

Shows the triggers associated on selected table (detailed for events, like INSERT, DELETE or UPDATE).

Version columns

Retrieves a description of a table's columns that are automatically updated when any value in a row is updated.

Table information

The table information view shows specific database information for selected table including a summary overview, the storage usage, the active locks, the activity profile and a storage estimations calculator.

Summary

The summary shows information for table profile, storage and I/O.

Storage

Shows the table storage monitor. The monitor will show all storage objects (table, indexes) related with the table, it's primary location and information related to extent size, pages allocated and usage.

Selecting on any object, you can see the Extend details and the Storage ditributon by device.

Locks

Shows current table locks

Profile

Shows table activity profile.

Estimations

Shows the table/index sizing estimation wizard.

3.1.3 Synonyms

The Synonyms node may not appear if no synonyms are present in database.

3.1.4 System tables

Shows system tables (and its data) from selected database

3.1.5 Views

Shows views (and its data content) on selected database

3.1.6 Functions

Retrieves a description of the system and user functions available in the given catalog. Only system and user function descriptions matching the schema and function name criteria are returned. They are ordered by FUNCTION_CAT, FUNCTION_SCHEM, FUNCTION_NAME and SPECIFIC_ NAME.

3.1.7 System functions

Shows system functions (and function body content) on selected database.

3.1.8 Procedures

Retrieves a description of the stored procedures available in the given catalog. Only procedure descriptions matching the schema and procedure name criteria are returned. They are ordered by PROCEDURE_CAT, PROCEDURE_SCHEM, PROCEDURE_NAME and SPECIFIC_ NAME.

3.1.9 System procedures

Shows system procedures (and procedure body content) on selected database.

3.1.10 Triggers

Shows database triggers (and trigger body content) on selected database.

3.1.11 Attributes

Retrieves a description of the given attribute of the given type for a user-defined type (UDT) that is available in the given schema and catalog. Descriptions are returned only for attributes of UDTs matching the catalog, schema, type, and attribute name criteria. They are ordered by TYPE_CAT, TYPE_SCHEM, TYPE_NAME and ORDINAL_POSITION. This description does not contain inherited attributes.

3.1.12 Privileges

Shows database user privileges on selected database.

3.1.13 Sequences

Shows the sequences currently defined on selected database.

3.1.14 Data types

Shows the Disctinct, Opaque and UDT (used defined types) object types defined on selected database.

3.1.15 ER diagram

The entity relationship graph automatically renders all referential integrity constraints using a directed graph (also called digraph) representation. The table nodes and relations are layed out automatically and graph scale is adjusted to fit available display are. A set of options are available from the toolbar including:

  • Toggle show constraint names in edges
  • Export graph to PNG
  • Zoom out
  • Zoom in
  • Zoom 1:1
  • Zoom to fit
  • Select deep level (only on ER for tables)
  • Toggle view for Columns, Columns and data type, Primary keys only, Only table names

You can double click on a table to get it's detailed information.

 

4 DB Server administration

4.1 General

This area, allows to access to key instance information like current on use configuration parameters, default parameters set on configuration file, global profile instance information like total amount of disk i/o or memory cache performance, shared memory use, etc.

One of the important information you can get from this area is machine information statistics and license usage statistics. This two areas are used to review compliance about license of instance and even they are documented, they are not clearly exposed to user. With this information DBA can get key information about how Instance is being used and if all license restrictions are applied.

4.1.1 Checkpoints

Checkpoints tab shows last checkpoints executed in server.

4.1.2 Onconfig

Onconfig tab shows all Engine configuration parameters with values defined in configuration file and current effective configuration values.

4.1.3 Profile

Allows to get relevant information about Server profile, including global data for disk activity: reads or writes, sequential scans, waits produced by locks or by buffer contention, etc.

4.1.4 Shared Memory

Shows information about critical shared memory parameters, including the server state in the sh_mode parameter. It's possible values are:

Value Explanation
0 Initialization
1 Quiescent
2 Recovery
3 Backup
5 Shutdown
5 Online
6 Abort
7 Single_user

4.1.5 Machine Info

Shows information about physical server where instance is currently executing.

4.1.6 License Info

Last 5 years information about parameters relevant for licensing, like maximum memory allocated, virtual processors or total disk used.

4.1.7 Server Features

Shows last 5 years statistics about server usage. This information can also be relevant for licensing monitoring, but includes other global parameters about server configuration and usage.

4.2 Health

This menu entry shows information about event alarms generated by the database server or alerts generated by the Scheduler. Alerts that are associated with built-in tasks and sensors are automatically added to this list.

User can dismiss alert to remove from the list or ask for recheck again.

4.3 Logs

You can review logs generated by engine and logs generated by onbar archive system. This entry allows you to manage tasks for rotating log files automatically and keep only a number of log files in your server

Also, you can view the history of all the SQL administration API functions that the were run in the previous 30 days.

4.4 Tasks

You can use the Scheduler to create jobs to run administrative tasks or collect information at predictable times. The Scheduler uses SQL statements instead of operating system job scheduling tools.

The Scheduler has four different job types that you can choose from:

  • Task: Runs an action at a specific time and frequency.
  • Sensor: Runs an action at a specific time and frequency to collect data, create a results table, store the data in the results table, and purge old data after a specified time.
  • Startup task: A task that runs only when the server moves from quiescent mode to online mode.
  • Startup sensor: A sensor that runs only when the server moves from quiescent mode to online mode.

The action of a task or sensor can be one or more SQL statements, user-defined routines, or stored procedures.

In addition to defining an action for a task or sensor, you can also use the Scheduler to:

  • Associate tasks and sensors into functional groups
  • Track the execution time and return value each time a task or sensor is run
  • Define alerts with varying severity
  • Define thresholds to control when tasks or sensors are run

The Scheduler contains built-in tasks and sensors that run automatically. You can modify the built-in tasks and sensors and define your own tasks and sensors.

4.4.1 Modify tasks

To enable or disable a task or change execution parameters or scheduling, go to Axional DBStudio menu and choose Server Information > Tasks

Select task you want to modify and click on the Name button. This will popup Task information window.

4.5 Databases

This menu option allows to analyze database contents from Server Instance prespective. You can get all database contents, including tables and indexes getting current size, dbspace and compression statistics.

By clicling in database name button, you can access to database management. This option allows to change database logging mode to: non logging, buffered, unbuffered or ansi. If database selected is sysadmin you can also reset sysadmin database and create a new sysadmin database in dbspace selected in combo box.

By selecting a database in right side menu, you can get list of tables and explore their content just selecting one table. Clicking on table name button, you can access extended table menu that allows you to check data in the engine (oncheck command).

Image pending

4.6 Storage

The storage section gives a complete view of all Informix storage objects from databases to dbspaces and chunks.

4.6.1  Monitoring space usage

Review information about space usage and the storage spaces for a database server. For a specific storage space, review information about the space usage and optimization, and the chunks, tables, and indexes in the space.

Image pending

To monitor space usage:

  • On the menu of the server connection, click Server Information > Storage > Overview. The page displays panels of information about space usage for the database server.
  • To display detailed information of dbspaces , click dbspace name in the list. To obtain detailed infor for chunks, click on the chunk number in chunk list panel.

You can also get detailed information of a dbspace by selecting it in tree menu expanded in the overview node. Click on dbspace you want to obtain detailed information.

Image pending

4.6.2 Managing space usage

Manage the storage space for a database server.

Creating a dbspace

To create a new dbspace, fill the form, with dbspace name and properties for first chunk.

Modifying a space

To modify a space by expanding its available space.

On the menu of the Axional DBStudio, click: Server Information > Storage > DBSpaces.

  1. On the dbspaces list panel, select the space and click on space name button.
  2. Open the Expand tab
  3. Select expansion mode: By automatically expanding the space or by adding a chunk.
  4. Complete the fields on the page.

Drop a space

If all the chunks belonging to a dbspace are empty, you can drop a dbspace.

On the menu of the Axional DBStudio, click: Server Information > Storage > DBSpaces.

  1. On the dbspaces list panel, select the space and click on space name button.
  2. Open the Drop tab
  3. Press the Confirm Drop button.

This procedure will drop dbspace and all belonging chunks.

Add a chunk

To add a new chunk to a dbspace, you should use the "Modifying a space" procedure described previously. Choose to expand dbspace by adding a new chunk and fulfill form data to add this chunk to the dbspace.

Modifying a chunk

This procedure allows to specify whether the database server can automatically extend the chunk when necessary or expand available size for a chunk inmediabely

To modify a chunk:

On the menu of the Axional DBStudio, click: Server Information > Storage > Chunks.

  1. On the chunks list panel, select the chunk and click on #Chunk button.
  2. If chunk is not expandable, you car mark it as expandable by using Mark expandable tab
  3. Open the Expand tab
  4. Fill the fields to configure the space to be added to expandable chunk
  5. Press the Expand chunk button.

Drop a chunk

This procedure allows to specify whether the database server can automatically extend the chunk when necessary or expand available size for a chunk inmediabely

To modify a chunk:

On the menu of the Axional DBStudio, click: Server Information > Storage > Chunks.

  1. On the chunks list panel, select the chunk and click on #Chunk button.
  2. Open the Drop tab
  3. Indicate if you want the chunk space to be returned to storage pool or just discarted
  4. Press the Drop button.

4.6.3 Adding storage space automatically

Every instance of Informix has a storage pool. The storage pool contains information about the directories, cooked files, and raw devices that the server can use if necessary to automatically expand an existing dbspace, temporary dbspace, sbspace, temporary sbspace, or blobspace.

When the storage space falls below a threshold defined in the SP_THRESHOLD configuration parameter, Informix can automatically run a task that expands the space, either by extending an existing chunk in the space or by adding a new chunk.

Configure the database server to add storage space automatically when more space is needed. Add entries to the storage pool that the server can use to expand a space and set the threshold for expanding a space.

Add a storage pool

On the menu of the Axional DBStudio, click: Server Information > Storage > Add Storage Pool.

Specify the information requested:

  • The path for the file, directory, or device that the server can use when additional storage space is required.
  • The offset in KB into the device where Informix can begin allocating space.
  • The total space available to Informix in this entry. The server can allocate multiple chunks from this amount of space.
  • The minimum size in KB of a chunk that can be allocated from the device, file, or directory. The smallest chunk that you can create is 1000 KB. Therefore, the minimum chunk size that you can specify is 1000 KB.
  • Priority (1 = high; 2 = medium; 3 = low). The server attempts to allocate space from a high-priority entry before it allocates space from a lower priority entry.

Modify a storage pool

Modify the directories, files, and devices that the database server can use to add storage space automatically when more space is needed.

On the menu of the Axional DBStudio, click: Server Information > Storage > Storage Pools.

Select the storage pool you want to modify and click on the corresponding ID button.

Complete the fields in the page.

Image pending

Drop a storage pool

To delete a storage pool entry, follow same procedure as if you want to modify it, but select drop tab and confirm by clicking Drop pool button.

Image pending

4.6.4 View physical log info

This option show information related to physical log storage and usage and allows to move physical log to another dbspace, perform a check point or drop a physical log dbspace after physical log has been moved to another dbspace and physical log dbspace is empty.

4.6.5 View all logical logs

This option allows to get complete list of logical logs and administer it by allow dropping logs or create new ones.

4.6.6 Monitoring temporary space usage

This option allows to get complete list of temporary tables allocating space in temporary dbspaces.

4.6.7 Optimizing storage space

Compress tables, indexes, and fragments, consolidate free space (repack), return free space to the dbspace (shrink), and merge extents (defragment). Uncompress tables and table fragments.

4.6.8 Managing recovery logs

View and manage the checkpoints, logical logs, and physical logs for a database server.

4.7 Sessions

The sessions section allows to analize current client connections, what's being executed currently in the server and locked resources with locking waiters.

4.7.1 Current sessions information

This option show all current opened sessions. If session is killable, clicking on the "Kill" button kills this session.

Field Description
Session Session ID
User User name who created session
Host Client host from session is created
database Database where session is connected
Age Time passed since session where created
Memory Total memory allocated for this session
IO Wait Time this session spent waiting for I/O
CPU Time Total CPU Time consumed by this session
Run Threads Current threads running statement in this session
is_killable Allow to kill sessions killable by pressing button.

Clicking on a session row, you can get advanced information about session selected:

Session current statement

SQL Current Tab shows information about current executing SQL Statement.

Session SQL Trace History

If tracing is enabled, you will see last SQL statements for this session.

Image review pending

Field Description
sql_id Unique SQL execution ID
sql_stmtname Statement type displayed as a word
sql_statement SQL statement that ran

Session locks hold

Field Description
table_name Database and table name
lock_type Type of lock:
  • B: Byte lock.
  • IS: Intent shared lock.
  • S: Shared lock.
  • XS: Shared key value held by a repeatable reader.
  • U: Update lock.
  • IX: Intent exclusive lock.
  • SIX: Shared intent exclusive lock.
  • X: Exclusive lock.
  • XR: Exclusive key value held by a repeatable reader.
lock_held Lock held time
others_waiting_for_lock NONE or Session ID of the user waiting for the lock. If more than one user is waiting, only the first session ID appears.
rowid Real rowid if key lock (0 indicates a table lock.)
index_number Key number of index key lock
key_item_locked Key value locked

Session threads

Field Description
name The name of the thread.
thread_id The numeric identifier of the thread.
statedesc Thread state description.
wait_reason Reason for thread to be wait.
num_scheduled Number of time thread scheduled.
total_time Time spent running on vp.
time_slice Time slice (total_time/num_scheduled).
vpid The ID of the virtual processor that the thread was last scheduled to run on.
vpclass Classname of VP.
thread_priority The priority of the thread.

Session memory pools

Session network usage

Session environment variables

Session Profile

Session profile provide information about session memory amounts and buffers and disk utilization. for session selected.

Field Description
nreads Total number of read operations
nwrites Total number of write operations
isreads Total number of ISAM read operations
iswrites Total number of ISAM write operations
isdeletes Total number of ISAM delete operations
iscommit Total number of ISAM commit transaction operations
upf_bufreads Number of buffer reads performed in session
upf_bufwrites Number of buffer reads performed in session
upf_seqscans Number of sequential scans performed in session

4.7.2 SQL Statements

SQL Statements shows similar information like previous Sessions option menu, but focused in showing SQL Statements currently executing in each session in a performance point of view.

You can introspect more session information in a similar way like Sessions menu. Results from SQL Current, SQL Trace, Locks, Threads, etc. are the same and can be obtained by selecting a session in Sessions panel.

Field Description
Session Session number ID
User User name for the connection
Host Client host from where connection has been stablished
Database Session
Age Time since session opening
Running Show if SQL Statenent is currently runned or already finished
Isolation Isolation mode
Lock mode Lock mode
SQL-Error SQL Error Number for last SQL Execution
ISAM-Error ISAM Error Number for last SQL Execution
SQL Statement Last Executed SQL Statement
FE Version Client Informix connection protocol version
FE Program Client program responsible of session connection stablishement

4.7.3 Active Threads

Use this menu option to obtain a list of threads. By default, you get only Active Threads, but you can change filtering behavour by selectiong thread state to show pressing the filtering button.

  • Active threads are threads currently running in server. Each SQL Statement runs in one or multiple sqlexecd type threads. Other threads usually running in sever are network polling looping to receive client statements.
  • Ready threads are theads ready to run but waiting for enough server resources in thre server.
  • Waiting threads are threads threads the system that are currently in the wait queue and not currently executing.
  • Yield status, are threads not doing anything particularly important and if any other threads or processes need to be run, they should run. Otherwise, the current thread will continue to run.

Image pending

Field Description
tcb Is the address for the thread, in hexadecimal value. It matches column 'rstcb' in 'onstat -g ath' and column 'address' in 'onstat -u' outputs.
rstcb RSAM thread control block. From this number you can access user thread and session information: onstat -u. If rstcb = 0 it means this thread is internal and not related to any user session.
priority Priority of the thread
State
expression
name Thread name
session ID Is the session ID, the unique identifier for the session. Details on the session can be seen with 'onstat -g ses sid' command. It matches column 'sid' in 'onstat -g ntt' output.
username Is the user ID at the operating system, that established the connection.
pid Is the identifier of the process at the operating system from which the connection was established.
hostname
sqs_statement SQL Statement running in thread
scs_sqlstatement Extended SQL Statement running in thread

4.7.4 Transactions

This option shows list of all opened transactions.

Field Description
txid id of transaction
address address of transaction struct
sid session id creator of transaction
username session username
hostname session client hostname
log_begin Logical log ID where transaction begins
log_end Current Logical log ID where transaction is registering operations
filltime time when first logical log used by this transaction was filled.
filltime_duration Time since the first logical log used by this transaction was filled
rb_time Estimated rollback time
tx_state Transaction state
longtx Has long transaction rollback be fired by this transaction?
sqs_dbname Database name where transaction is executed
sqs_statement Current SQL Statement executing
istar_coord istar coordinator

4.7.5 Server locks

This option provides information about all the currently active table locks in the database server.

dbsname Database name
tabname Table name
rowidlk Real rowid, if it is an index key lock
keynum Show if lock is over table or Key number if index key lock
type Description
Column Type of lock:
type Description
Shared Shared lock: A shared lock reserves its object for reading only. It prevents the object from changing while the lock remains.
Exclusive Exclusive lock: An exclusive lock reserves its object for the use of a single program.
Update Update lock: An update lock is a special kind of lock generated by a cursor that has been declared with the for update clause. Update locks could only be placed on a row that currently has no update or exclusive lock on it.
XR Exclusive key value held by a repeatable reader.
XS Shared key value held by a repeatable reader.
Intent locks shared or exclusive: An intent lock is the lock the database server (lock manager) places on a higher granularity object when a lower granularity object needs to be locked. For example, when a user locks a row or page in Shared lock mode, the database server places an IS (intent shared) lock on the table to provide an instant check that no other user holds an X lock on the table.
owner Session ID of the lock owner
waiter Session ID of the user waiting for the lock. If more than one user is waiting, only the first session ID appears.
partnum Partition number
grtime Grant time

4.7.6 Waiting locks

Shows lock intents waiting for resources already locked.

Image review pending

Field Description
dbsname Database name
tabname Table where resource is locked
rowidr Real rowid if key lock
keynum Keynum of item lock
type Lock type
owner Session ID currently locking resource
ownername User name owner of session currently locking resource
waiter Session ID waiting for resource to unlock
waitname User name owner of session waiting for resource to unlock

4.7.7 Waiting resources

List of sessions currently waiting for a condition: latch, lock, buffer, check point, etc.

Field Description
id Session ID
username User owner of session
is_wlatch Session waiting for a latch
is_wlock Session waiting for a lock
is_wbuff Session waiting for buffer adquisition
is_wckpt Session waiting for check point to finish
is_wlogbuf Session waiting for logical log buffer
is_wtrans Session waiting for transaction

4.8 Network

Show a list containing information about the instance network operation.

Field Description
net_id Netscb id
sid Session id
net_netscb Netscb prt
net_client_type Client type Int
net_client_name Client protocol name
net_read_cnt Number of network reads
net_write_cnt Number of network writes
net_open_time Time this session connected
net_last_read Time of the last read from the network
net_last_write Time of the last write from the network
net_stage Connect / Disconnect / Receive
net_options Options from sqlhosts
net_protocol Protocol
net_type Type of network protocol
net_server_fd Server fd
net_poll_thread Poll thread

4.9 Backup

4.9.1 Backup size estimation

Shows estimation of backup size in kilobytes. This stamation don't take care of compression method defined in BACKUP_FILTER when real backup is writed to disk.

To calculate estimation, aggregates all pages used plus physical log size plus current logical log.

4.9.2 Backup traffic

Logfile traffic produced over the last 24 hours

Field Description
time Time period corresponding to last 24H
logtraffic_24 Size of all logical logs filles in last 24H
logfiles_24h Number of logical logs filled in last 24 H

4.9.3 Backup status

Field Description
dbsnum Dbspace number
name Dbspace name
oldestlevel0 Time of last level 0 archive
oldestlevel1 Time of last level 1 archive
oldestlevel2 Time of last level 2 archive
dbstype Type of dbspace

4.9.4 Backup configuration

Specify the utility to use to back up the storage spaces. You can choose between two options:

  • Use onbar utility command options to back up to tape.
  • Use ontape utility command options to back up to tape.

Specify backup target storage (Tape, Disk file or Disk directory) and configuration parameters for ontape:

  • Path (TAPEDEV): The tape device path for backups.
  • Block size (TAPEBLK): The tape block size, in KB, for backups.
  • Device size (TAPESIZE): The maximum amount of data to put on one backup tape.

Schedule and enable backup copies for each level (0,1 and 2):

  • Start Time (Hours, Minutes and Seconds).
  • Mark the options for each day of the week.

Finally, a summary of the configuration made in the previous steps is shown.

4.9.5 Backup logs

Field Description
user User and from which host the backup was released.
cmd_exec_time The time that the command started to execute backup.
Command The executed command.
Return status Return codes indicate whether the function succeed or failed. If this value is less than zero, the function failed. Other value the function succeed.
cmd_ret_msg Return message.

4.10 High Availability

This menu section show all information about High availavility system current status and statistics. This includes HDR nodes and RSS nodes.

4.10.1 Type

Image review pending

Field Description
ha_type Server type.
  • 0: Not part of a high-availability environment.
  • 1: Primary server.
  • 2: HDR secondary server.
  • 3: SD secondary server.
  • 4: RS secondary server.
ha_primary Primary server name.
ha_secondary HDR or SD or RS secondary server name.

4.10.2 Workload

Show workload statistics on each of the secondary servers.

Field Description
Secondary Name of secondary server.
Last update Time at which workload last updated.
wl_ttype This row contains the ready queue size, user CPU time, and system CPU time.
wl_01 Most recent workload activity.
wl_02 Second most recent workload activity.
wl_03 Third most recent workload activity.
wl_04 Fourth most recent workload activity.
wl_05 Fifth most recent workload activity.
wl_06 Sixth most recent workload activity.
wl_07 Seventh most recent workload activity.
wl_08 Eighth most recent workload activity.
wl_09 Ninth most recent workload activity.
wl_10 Tenth most recent workload activity.
wl_11 Eleventh most recent workload activity.
wl_12 Twelfth most recent workload activity.
wl_13 Thirteenth most recent workload activity.
wl_14 Fourteenth most recent workload activity.
wl_15 Fifteenth most recent workload activity.
wl_16 Sixteenth most recent workload activity.
wl_17 Seventeenth most recent workload activity.
wl_18 Eighteenth most recent workload activity.
wl_19 Nineteenth most recent workload activity.
wl_20 Twentieth most recent workload activity.

4.10.3 Lag Time

Show HA server latency information.

Field Description
Key Name of the latency metric.
Value Value of the latency metric.
Info Description of the latency metric.

4.10.4 Proxy

Show Proxy Agent information.

Field Description
tid ID of the proxy agent thread.
flags flags of thread.
proxy_id Proxy distributor ID.
source_session_id ID of session on source node.
proxy_txn_id Number of current transaction.
current_seq Sequence number of current operation.
sqlerrno SQL error number.
iserrno ISAM/RSAM error number.

4.10.5 Multiplexer

Show SMX connection information.

Field Description
address SMX pipe address.
name Target server name.
encryption_status Enabled/Disabled.
buffers_sent Number of buffers sent.
buffers_recv Number of buffers received.
bytes_sent Number of bytes sent.
bytes_recv Number of bytes received.
reads Number of read calls.
writes Number of write calls.
retries Number of write call retries.

4.11 Connection Manager

4.12 Replication

4.12.1 Connection Manager

4.12.2 Clusters

Image pending

4.12.3 Grid

List ER Grids defined in server.

Image pending

4.12.4 ER Domain

Shows list of server groups integrated in ER Domain.

Server relationships can be defined according to this group types:

Root server An Enterprise Replication server that is the uppermost level in a hierarchically organized set of information The root is the point from which database servers branch into a logical sequence. All root database servers within Enterprise Replication must be fully interconnected.
Nonroot server An Enterprise Replication server that is not a root database server but has a complete global catalog and is connected to its parent and to its children
Leaf server A database server that has a limited catalog and no children.

By selecting one server group, you can get, in below area,all replicates defined for this group.

Image pending

Field Description
serverid Group ID for servers defined in sqlhosts file.
dbsrvnm Name of the server group.
ishub Is a root server?
isleaf Is a leaf server?
servstate Current status of server group.
rootserverid If server is a "non root" server, this field shows id for the master or root server who current server is connected. Defines a relationship between database servers in a tree data structure in which the parent is one step closer to the root than the child.

4.12.5 ER Layout

Image pending

4.12.6 Node Details

Summary

Capture

Send Queue

Disk Usage

Apply

ATS

RIS

Errors

Configuration

Resume all configuration parameters related with Enterprise Replication usage.

4.12.7 Replicates

Templates

Image pending

Replicate Set

Image pending

Replicates

Image pending

Task Status

Image pending

4.13 Instance Administration

4.13.1 Memory

Memory Segments

Show all memory segments allocated in memory by engine. Administration options allos to allocate new virtual memory segments or to drop all unused free memory segments currently allocated by server.

Low memory manager

Memory Cache

4.13.2 Virtual Processors

4.13.3 Update Statistics

Update Statistics configuration

4.13.4 Accelerators

The Accelerators node inside the Administration section allows us to monitor the state of all the IWA instances attached to the DB engine. We will also be able to create another logical accelerators and attach them to the DB engine, as well as operating with the datamarts defined on the accelerators. The datamart creation wizard will simplify the definition of new datamarts.

Introduction

The Accelerators node in DBStudio offers us two sections for the administration of IWA instances on a particular DB engine:

  • The list of all IWA instances currently attached to the DB
  • The form for defining a new accelerator and submiting the data to DB.

Operating with existing accelerators

Once the accelerators have been created, they can be shown in the Instances tab from the Accelerators menu. Clicking on the blue column containing the accelerator name of the displayed rows will lead to the "Remove Accelerator" screen. However, if we wish to operate upon a certain accelerator, click on the row instead (on id, Host IP or Service Port). This will open three new tabs: Active Marts, Create Mart Wizard and Create Mart.

View active marts

The Active Marts menu will display every available DataMart for that accelerator. Similarly to the Instances tab, clicking on the blue column will prompt a window to perform a drop, load/refresh or enable/dsiable on the DataMart. To see further information of a specific DataMart, just like in the Instances Tab, click on the row of such DataMart (not on the blue cell). Doing so, will open three new tabs : Mart Definition, Mart Diagram and Modify Mart

View mart definition as XML

On the Mart Definition tab, the XML used to generate such datamart is displayed. However, modifying the DataMart by editing this XML is not possible. This is instead done on the Modify Mart tab

View mart diagram

On the Mart Diagram menu, we can see the columns and relations for such datamart displayed in a typical table diagram. Again, this is purely informational and does not change the datamart definition.

Image pending
Modify datamart (wizard)

Finally, the Modify Datamart wizard will open the Create Mart Wizard (section 2.2) but loading the data from the already defined XML displayed at the Mart Definition tab. Even though, the detailed steps on using the Wizard can be found in section 2.2, the outlines of modifying the datamart are the following :

1. Review the selected columns and table. To add a new table click on the left menu with the "Tables" header and to add or remove a column click on the checkbox of the right menu with the "Columns" header

2. Review the links. To remove one, click on the red cross of such link, and to add a new one, first select the two tables involved, and then click first on the row that contains the source column and then on the row that contains the end column. If done correctly, this will draw a line between these two rows

Image pending

3. Review the XML generated by the new changes. Note that there is some information missing compared to the initial XML. This is because such information is not relevant to the DataMart.

Create a datamart (wizard)

The Axional DBStudio application allows for an easy setup of an Informix DataMart with the DataMart Creation Wizard. This is particularly useful when creating a DataMart from scratch, that is, without a previous xml, although it can also be created directly from such xml. With the DataMart Creation Wizard, we are able to select which tables and columns do we want to store and define links between distinct columns of different tables (same table links are also allowed).

Image pending
Selection of the columns to store
  1. First, we need to select the columns to be stored. To do so, click on a table on the left menu (it will turn grey when you hover it). After selecting a table, every available column for that specific table will appear on the right menu.
  2. This time, selecting the columns can be achieved just by clicking on the checkbox (or the whole row, doesn't matter) or select them all by clicking on the checkbox at the top, next to the "Columns" header. The selected columns and tables will be displayed at the bottom of the Wizard.
  3. Finally, the Fact Table has to be defined in order to continue on to the next step. To do so, simply click on the radio button on the left of each information row
Image pending

In case a mistake was made, the selected entries can be deleted just by clicking on the red cross at the bottom panel of the screen.

Definition of the links between tables

The second step of the Wizard is optional, and it is used to build connections between the selected columns chosen at the first step.

  1. To build a link between two different columns, we must first select the two tables that contain such columns. This is done on the select menus at the top (store and employee in the picture below).
  2. Once the tables have been selected, the columns chosen at the first step will be displayed. between these columns, click on a column on one side to then click a column of the opposite side ('store_id' in both sides in the example picture below).
  3. During this step, the cardinality or type of each link (1:n, n:m or n:1) is also chosen. This can be done by clicking on the dropdown select at the start of each link at the bottom menu, and selecting the desired option. This decision will also force which table will be the "Parent Table" and which one will result on the "Dependent Table", since the dependent table can only have cardinality "n" with respect to the parent.
Image pending

Note : If done correctly, the Wizard will draw a line between these columns and will show the created link at the bottom of the screen. If the link isn't build, that's probably because it was trying to be build on the same side (same table). Also, keep in mind, that the Wizard will try to modify the link if that's possible, that is, when the starting column of the link already has a link but the ending column does not or viceversa. If both the starting and the ending column are linked, no link will be produced.

Also, in the rare case the link has to be built within the same table, such table has to be selected on both menus, since links in the same side are not allowed.

Review of the information

At the last step, the xml that will be used to generate the DataMart will be displayed. If everything seems correct, click on the Create Datamart button to attempt the creation of the datamart, and if something seems wrong, data can always be modified on the previous steps just by clicking the "Back" button.

Image pending
Create a datamart (by uploading XML definition)

To build a DataMart directly from an XML, the file path to the XML and the database are necessary. To select these, use the dropdown select for the database and write the full file path on the "Local File Name" field :

Image pending

Create a new accelerator instance

Given a previously IWA instance installed and configured in a host, we will be able to connect the accelerator to the Database Server by using this form:

Image pending

We are required to fill the following information:

  • Name of the new logical accelerator. This is the name that will be used to refer to this particular IWA instance when issuing operations on the accelerator (create, load or drop a mart, etc...).
  • IP of the host where IWA service is installed.
  • Port number where IWA service is attached in the specified host.
  • PIN to be used as authorization.

It will be necessary to use the provided ondwa getpin command on the host where IWA service was intalled. This will give us a valid auth PIN number and all the information we need to fill in the previous form:

Copy
$ ondwa getpin
192.168.10.19 21022 5893

4.13.5 Configuration

4.13.6 User Privileges

Image pending

Image pending

Image pending

Access to SQL Admin API privileges is not available on servers below 12.10

4.14 Performance

4.14.1 SQL Explorer

Use the SQL Explorer to perform query drill-down. The SQL Explorer uses SQL tracing to gather statistical information about each SQL statement executed on the system and shows statement history.

SQL Explorer allows to analyze SQL Statements activity in the whole server, allowing to identify wich are the worse performance statements or the most used ones, and identifying which statements we should improve to increase global server performance.

Tracing Admin

This option is not available on servers below 12.10

Activity Summary

Transactions

SQL Statements

SQL Statements (Detailed)

4.14.2 History

This option shows history graphs about some performance items evolution.

To colect historical monitoring statistics you need to activate task named: ""

4.14.3 Sessions

This menu entry show all currently open sessions in the server from a performance prespective. Basically you can get all sessions and wait time produced by i/o, cpu time spend and memory consumed by each session.

4.15 Instance status reports

A highly useful group of commonly-used reports are ready to be executed at any time. These include:

  • Chunk I/O activity
  • I/O tables
  • I/O users
  • Queries by cost
  • Queries with poor performance
  • Inactive user resources
  • Inactive user blocks
  • Database blocks
  • Table/index extent sizes
  • Temporary table usage

4.16 Execute onstat commands

Monitor servers remotely with the onstat utility, by using the onstat utility in the Axional DBStudio.

You can use the onstat utility to check the status and monitor the activities of a database server.

Some of the onstat command executions has defined links to drill down by executing other related onstat command: e.g. onstat -g sql returns all sessions and what type of SQL command are executing currently, this screen allows to click at the session number to get more information about current statement executed by this session

To use the onstat utility:

  • On the menu, expand Server Information and then click onstat Utility.
  • Type an onstat option. You do not have to type onstat.
  • Click Run button.

4.16.1 Hiperlinks

Some comands output may contain hyperlinks. Click on the hyperlink to see related onstat information in a new window.

 

5 Table data Import and Export tool

DB Studio has a tool for easily import or export data from tables.

  • Select desired database and table on the left menu of the DB Studio application.
  • Click on the mouse right button: a new choice menu will appear.
  • Select between the import or export option.
  • Follow the steps of the wizard to import/export data (see following sections). Previous, next or cancel buttons will be always availabe.

5.1 Import table option

  • Use the drag and drop function field to transfer the Excel file to the db Studio. Press NEXT.
  • Select the Excel sheet that contains the data to transfer. Press NEXT.
  • Indicate the row of the header and the start of the row data. Also indicate wether to skip or not empty rows. Press NEXT.
  • Select a new database if necessary.
  • Select the numbers o rows to be transfered (all by default). Enable/desable the Stop on error option.
  • Click on the Finish button. Depending on selected options, the file will be unloaded or an editor with the selected data will be displayed. If the process fails/success, an information message will be displayed.

5.2 Export table option

  • Select desired output format.
    • The possible file formats are: XLS | CSV | UNLOAD | SQL | XML | JSON | HTML | PDF.
    • Write the name of the file (by default it will coincide with the table name) or select the Edit option (mode available only in some formats).
    • The export setting varies depending on the file format previously selected.
    • If necessary, select the maximum number of rows.
    • Select between the encoding options. By default it will be UTF-8.
  • Select desired columns to be exported (all by default).
    • Mark/unmark the desired columns.
  • Click on the Finish button. Depending on selected options, the file will be unloaded or an editor with the selected data will be displayed. If the process fails an information message will be displayed.
 

6 Customizable Rendering of ResultSets

 

6.1 Display of SVG graphics

Now you can display inline graphics (structs) using row types on your DB Studio. For further information on structs, see Row types.

 

6.2 Horizontal and vertical ResultSets layout selection

Now you can choose how to display ResultSets by selecting the horizontal or the vertical layout tab.