About WebAdmin

Enables you to administer DataCaster server with web interface.

Listed below are the features available in WebAdmin through which you can interact and manage the DataCaster server.

The items marked as [admin] are only available to administrators.


Database

This group allows you to manage database on the server.

Browse

Use this page to browse through the database on your server, it enables browsing similar to directory browsing. All the database identified on the server will be list at the start. Start browsing the database just by click on the database name.

Search

Use this page to search for the catalog/schema/table/view by name. You can select the databases in which the search should be made (by default all the databases are considered). The search is case-insensitive and looks for matching substring. When you choose to search for, say table, all the tables present in selected databases will be taken as candidates for searching.

Manage [admin]

Use this page to manage the server database. Administrator has the privilege of creating the database on the server. This page allows you to start and shutdown the database. By starting the database you will open the database instance so that it will be available for remote access and its name will be added to DataServer for shutdown. You can shutdown the started database by using the shutdown link.

Export [admin]

Use this page to export the server database or parts of the database like (catalog, tables, sql query) in CSV Zip Format. This is useful when you want to port the database from one version to another. The exported file is stored in the user directory. To know more about export check out ExportAndImport.

Import [admin]

Use this page to import the database from the exported file earlier. This is useful when you are importing to a newer version of database from the older one. The know more about import check out ExportAndImport

Archive Tools

This group allows managing the database archiving.

Manage Dump [admin]

Use this page to take the archive dump of the database. The files are stored in archive directory (dbprefs.xml entry "db.archive_dir" value) as zip file.

Manage Restore [admin]

You can restore the database from any existing archive. Click on the database name listed to restore the latest archive or click on the available archive links to restore the specific one. Or if you have any specific time period in mind, you can give that(to the required degree) in 'custom input' to restore the most relevant archive. 'Custom input' is also useful in cases where the database does not exist so it is not listed in the databases column.

Note: This will delete the existing database copy and replace it with the archived one.

Manage Timer [admin]

You can automate the process of archiving using a timer. You can specify at what time you want to archive the database and how often you want to do it. You can also enable or disable this timer. These settings are on a per database basis.

Index Tools

This group allows you to manage the indexes of the table.

Show BTreePages [admin]

Use this page to look at the BTree pages associated with the table index. The database name, schema name, table name and index name are compulsory inputs needed. You can optional specify the start page and end page (number).

Check Index [admin]

Use this page to check the index of the table. The database name, table name and index name are compulsory inputs needed. It will check the indexes by iterating the keys and tuples and ensuring all data is in the correct place and index structure is intact.

Repair Index [admin]

Use this page to repair the the index of the table. The database name, schema name, table name and index name are compulsory inputs needed. It will repair the damaged index files.

Check Table [admin]

Use this page to check if table tuples are in proper state. The database name, table name are compulsory inputs. This is useful to check the table max tuple id and size by iterating the main index. This is normlly done after recovery, but may be required in a few other cases to ensure the subsequent inserts have no issues.

Index Tuples [admin]

This tool is used to print tuples in a range from an index, typically for debugging purposes. Prints the tuples associated with the index specified.


SQL Commands

This group gives the support for SQL interaction with the database.

Run Query

Use this page to execute a sql query. You have to provide the database name, the sql query and optionally the schema name. You can select the output format (html, xml, csv). Click RunQuery to execute the query. The page will list limited command history that was recently executed (not repeated), you can select any of the listed query. Query is executed by creating the SQL Statement, compiling it and then execute it. Once the query is executed and the output format is html. The resulting table rows will displayed. In the result page you can edit the query and input a new query. You can bookmark the query link. You can also try other output format, like xml, csv which executes the query again (please be careful when the query changes the database state, say, insert, delete, update). When there is lot of the columns in the result you can hide the entire column by clicking the cross mark and make it appear again by click on the name of the column which is highlighted. RMI Support is added to RunQuery, all you need to do is select the check box "Is Remote" and provide the required information and click RunQuery, like RMI URL, Remote Username and Remote Password. Some non-sql commands like 'show catalogs', 'show schemas', 'show tables' and 'show views' are supported.

The number of rows that is displayed from the resulting query table is set to 1000. It is good to use LIMIT option in query if the resulting table is large.

Search Query

Use this page to search for the queries that have executed on this server. This search will be done on the history file. You can search on different fields, like the query, database name, schema name, or all. By default all the fields will be used to search for the input. The serach present on RunQuery page is for convienence where the default search field is selected as 'query'. The result of the search will be links to the query with the input information that was provided when it was executed. You can select any query for execution.

Run Script

Use this page to run the sql script on the database. The script file will be uploaded to the server and a temporary file is created and will be used. [The temporary file is deleted when the server is stopped]. The output of last query executed will be displayed (the number of rows dispalyed is limited to 1000).

Data Dictionary

This group allows you to document you database with descriptions.

Browse

Use this page to browse through the database, this will allow you to edit the description on the tables and columns.

Table Description

Use this page to set the description for the database table. You have to first select the database, then select the schema which contains the table and select the table on which you want to add/edit the description.

Column Description

Use this page to set the description for the column of the table in the database. You have to first select the database, then select the schema, then the table which contains the column. Then you can add/edit the description.


Logs

This group allows you to view the log file information on the server.

Info Log

Use this page to see the "system.out" (defined in dbprefs.xml, output log). This will list the output log files. You can browse through the output log file using (Paged View) or see the raw content of the file (Show File). When browsing, only log output group starting with [INFO] are filtered for display. The file is read in reverse during browse which can be slow.

Errors

Use this page to see the "system.err" (defined in dbprefs.xml, error log). This will list the error log files. You can browse through the error log file using (Paged View) or see the raw content of the file (Show File). When browsing, only error output group starting with [ERROR] are filtered for display. The file is read in reverse during browse which can be slow.

Stack Trace

Use this page to see the "system.stacktrace" (defined in dbprefs.xml, trace log). This will list the trace log files. You can browse through the trace log file using (Paged View) or see the raw content of the file (Show File). When browsing, only error output group starting with [STACKTRACE] are filtered for display. The file is read in reverse during browse which can be slow.

Audit Log

Use this page to see the "audit.file" (defined in dbprefs.xml, audit log). This will list the audit log files. You can browse through the audit log file using (Paged View) or see the raw content of the file (Show File). The file is read in reverse during browse which can be slow.

Transaction Log [admin]

Use this page to see the database transaction log. You have to select the database name, which allows you to browse the transaction log of the database. Only a snippet of the messages will be shown for all the logs, click [SHOW] to see more details.

Repair TxLog [admin]

Use You can repair the transaction log file of the database.

Trace Levels [admin]

Use this page to set the trace levels for each module. These levels will be used to print the messages from each module. Turning on the trace level to higher value might lower the performance. This should used only in case any debugging needs to be carried out.

Module Trace logs

Use this page to see the trace logs of each module. The trace logs details for each module depends on its trace level setting. You have to select the database first. List of available trace log files are displayed. You view the log output by filtering based on module tag, or see the raw file using "Show File" link, or see all the module output using "Paged View" link.

System Catalogs

This group allows you to look at details of database System catalog or DEFINITION_SCHEMA.

Browse [admin]

Use this page to browse through the DEFINITION_SCHEMA, first you have to select the database.

Http Clients

This group allows you to manage database access to this DataCaster server.

Deny Access [admin]

Use this page to deny access to database from a client. You have to provide the client address to which the access should be denied.

Users and Roles

This group allows you to manage the users and roles associated with users on this server.

Manage Users [admin]

Use this page to add user to this server. This is need to allow the user to access the database. All the user on this server will be able to access WebAdmin, but commands available to each user is determined based on whether the user is administrator (super user) or normal user.

Manage Roles [admin]

Use this page to add user to a role/group. Access to WebAdmin for a user is not available if user is in webadmin role. You can unassign the role for a user by clicking on the role name that is already assigned.

Change Password

Use this page to change your password. Only Administrators can change the password for other users. If you are changing the admin password, you can select the 'Store password for server startup as well' which will store the encrypted password to the file.


Remote Clients

This group allows managing the access of this server from other remote server.

Remote Users [admin]

DataCaster allows users on remote DataCaster servers or access tables and views on this server. Use this page to allow access to this server for remote users. With user-level access, an individual user can access this server with the specified username and password.

Before remote users can access tables and views from this server, they will need to setup their clients to use this username and password for user-level access to this server. In addition, access to specific tables and views on this server is subject to the necessary SQL authorization with GRANT statements. Remote users will have access to specific tables or views if granted for the specific user, or public access is granted.

Remote Clients [admin]

DataCaster allows users on remote DataCaster servers or access tables and views on this server. Remote access can be setup at a server-level, so that all users on a specified remote client system have acceess to this server. Use this page to allow access to this server for all users on a remote server. With server-level access, any authenticated user on the remote server can access this server.

Before remote users can access tables and views from this server, they will need to setup their clients to use the servername and password for server-level access to this server. In addition, access to specific tables and views on this server is subject to the necessary SQL authorization with GRANT statements. Remote users will have access to specific tables or views if granted for the specific user, or when public access is granted.

Change User Password [admin]

Use this page to change a password for a remote user. i.e. user-level access to this server by a remote user. Users will need to setup this modified password on the client before they can access this server.

Change Client Password [admin]

Use this page to change the password for remote server-level access to this server from a remote server. The access password on the remote server will then need to be changed to access this server.

Remote Server

This group allows managing the access to other remote servers from this server.

User-level Access [admin]

DataCaster allows users on this server to access tables and views on remote DataCaster servers. Use this page to setup access to a specified remote server for a given user on this server. With user-level access, the specified local user on this server can access tables and views on the remote server.

Before local users can access tables and views from the remote server, access will need to setup on the remote server, and the same username and password authorized for user-level access. In addition, access to specific tables and views on the remote server is subject to the necessary SQL authorization with GRANT statements. Remote users will have access to specific tables or views if granted for the specific user, or when public access is granted.

Server-level Access [admin]

DataCaster allows users on this server to access tables and views on remote DataCaster servers. Remote access can be setup at a server-level, so that all users on this server have acceess to a specified remote server. Use this page to allow access to a specified remote server for all users on this server. With server-level access, any authenticated user on the remote server can access this server.

Before local users can access tables and views from the remote server, access will need to setup on the remote server, and the same servername and password authorized for server-level access. In addition, access to specific tables and views on the remote server is subject to the necessary SQL authorization with GRANT statements. Remote users will have access to specific tables or views if granted for the specific user, or when public access is granted.

Change User Password [admin]

Use this page to change the access password for user-level access to a remote server. This needs to be used if the password for user-level access changes for a remote server.

Change Server Password [admin]

Use this page to change the access password for server-level access to a remote server, i.e. access available to all users on this server. This needs to be used if the password for server-level access changes for a remote server.

Monitor Server

This group allows you to monitor this DataCaster server.

Server Status [admin]

Use this page to know the status of the DataCaster server. It will display information like, memory usage, open connections to database of this server.


Server Utilities

This group provides some utilities to manage this server.

Manage Application [admin]

Use this page to 'Start' or 'Stop' the DataCasterApplication. You should add the DataCasterAppplication to 'Start' it. You can 'Remove' the DataCasterApplication, this will 'Stop' the application and then removes it from this server. The status message of all the DataCasterApplication is shown on this page. Clicking on the Application name will give more details about it.

Add Application [admin]

Use this page to add a DataCasterApplication to this server. You have to specify the application name, name of the class to load and classpath that will allow the class to be loaded (should be specified if class does not exists in the existing CLASSPATH). Once the application is use Manage Application page to manage it.

RMI Server [admin]

Use this page to 'Start' or 'Stop' the RMI Server. This allows RMI access to database on this server for other clients.

Database Replicator [admin]

The following steps are needed to start database replication using WebAdmin Console.
  • Open the page Database Replicator under Server Utilities group, provide the required inputs, like the local database name, the remote url to be used and the start time and then Click Initialize
  • You will now be presented the Manage Applications page, you can now start the Database Replicator application using the Start link.
  • When the Database Replicator application is already initialized, you will not be able to initialize it again, you can do that by removing the application.
  • You can stop the database replication using the Stop link. The timestamp of the last log event applied will be shown as the Status Message on the Manage Applications page.


Scripting Support

This group provides support for scripting on this server.

Jython Scripting [admin]

Use this page for executing jython scripts on this server. If you have uploaded/saved the script file you can use 'Browse Script Files' to select the script file and execute it.

Manage Script File [admin]

Use this page to upload jython script to the server. Use 'Select File' to select the script for execution, 'Show File' to see the content and 'Delete File' to delete the script file.


Limitations

These are some of the known limitations
  • If the command takes long time to execute, the browser might show up the alert box, like, 'Document has no content'. Although the command will be executing at the server. In such case only way to know the status of the command execution is looking at the Tomcat output.
  • To support connection timeout (for long running command), the page communicates with the server every few seconds, like in Jython Scripting, although you can 'Cancel Request' in the middle, some issues might arise which can lock the database.