Oracle Database Lite 10g (OLite 10g)

Introduction

Oracle Database Lite 10g extends the power of grid computing to a mobile workforce with a complete, integrated, secure database for building, deploying, and managing mobile applications for a broad range of mobile devices. Oracle Database Lite 10g enables persistent access to critical information and applications without requiring continuous connectivity to back-end enterprise systems. As a result, users increase the efficiency, productivity, and responsiveness of mobile workforces while reducing costs and improving customer satisfaction.

Oracle Database Lite is a complete, integrated, and secure infrastructure to build, manage, and provision mobile database application to a broad range of wireless devices. It is the leading platform to develop, deploy and manage mobile applications that store data locally on mobile devices (Smartphones, PDAs, Handheld Computers, and traditional Laptops) and synchronize data with central servers. Oracle Database Lite includes: scalable data synchronization architecture to thousands of mobile users; centralized management through easy-to-use graphical user interface; utilizes Oracle Real Application Clusters for maximum high-availability and failover; and revolutionary new mobile database development tools increases developer productivity. With Oracle Lite, your business cost-effectively extends enterprise data to occasionally connected mobile users. Oracle Lite is a complementary product optimized to work with Oracle Database Standard or Enterprise Edition.

Usability

Employees are working away from their desks and require access to corporate data normally found only on desktop devices connected to enterprise networks. Wireless connections for mobile users offer the promise of remote access of enterprise data but persistent wireless connections are not always possible, practical or desirable.

Wireless connections are not always possible because mobile workers may be in an environment that does not have wireless coverage. Often it is not practical to use a persistent wireless connection because applications do not have a real time data access requirement to justify the costs of communications. There are situations where a wireless connection is not desirable because the very presence of a wireless connection could compromise an application or a user’s security.

Developers require an infrastructure with application services that enable the development, delivery and operation of secure, personalized applications to mobile or embedded devices.

Database Lite Components

Oracle Database Lite 10g is a part of Oracle’s Database that extends the grid environment
and it makes your applications mobile. Oracle Database Lite describes a group of components that includes the Lite Database, the Mobile Server for Data Synchronization, Life Cycle Management and a Rapid Application Development environment.

Oracle Database Lite is a complete solution and includes more than a small database. The Oracle Lite database included in this solution is not an abbreviated version of the Oracle database but was designed from the ground up to be used with mobile applications in small and embedded devices.

untitled.jpg

Prerequisite Software for Lite

Since Oracle Database Lite stores and retrieves your information from an Oracle database, you must have a back-end Oracle database to run Lite. The Oracle database can be either Standard or Enterprise Edition, running a minimum version of 8.1.7 or higher.

Middle-Tier Option for Mobile Server

Oracle Database Lite uses a middle-tier to communicate between the clients and the back-end database. You must use one of the following as the middle-tier:

  • Stand alone OC4J – for development environments
  • Oracle Application Server – for production environments

Stand Alone OC4J

Stand Alone OC4J is automatically installed with Oracle Database Lite and this provides a standalone Mode for development environments.

Mobile Server in standalone mode uses the standalone version of Oracle Containers for J2EE (OC4J). This is the preferred configuration for development and testing but it will
support only a limited number of concurrent users.

Oracle Application Server

Production environments require either Oracle Application Server 10g. The application server is not installed with Oracle Database Lite and must be installed before installing Oracle Database Lite Mobile Server.

The Oracle Application Server production environment will support large numbers of  users, provides caching, load balancing, centralized management, security, and Single Sign On support.

Oracle Lite Database

The Oracle Lite Database is a small footprint, Java enabled, secure, relational database
management system created specifically for laptop computers, handheld computers, PDAs, and information appliances. Oracle Lite Database runs on Windows 2000/XP, Windows CE/Pocket PC, Symbian OS, and Embedded Linux.

Oracle Lite Database provides JDBC, ODBC, ADO.NET and Simple Object Data Access (SODA) APIs, for an easy-to-use C++ interface that is optimized for the object-oriented and SQL functionality of Oracle Database Lite.

Installation of the Mobile Development Kit (MDK) installs the Oracle Lite Database and all its utilities on your development machine.

Data Synchronization

A user’s data is synchronized between Oracle Lite Database and an Oracle database server.

Synchronization is accomplished by invoking the Mobile sync client, mSync, which interacts with the Mobile Server. The Mobile Server uses synchronization objects such as users, publications, publication items, and subscriptions to process client and server data changes. This technique is referred to as a publish/subscribe model.

Synchronization Process

Oracle Database Lite contains a subset of data stored in the Oracle database. This subset is stored in snapshots in the Oracle Lite database. Unlike a base table, a snapshot keeps track of changes made to it in a change log. Users can make changes in the Oracle Lite database while the device is disconnected, and can synchronize with the Oracle database
server.

There are basically three types of publication items that can be used to define synchronization; fast refresh, complete refresh, and queue based. The most common method of synchronization is a fast refresh publication item where changes are uploaded by the client, and changes for the client are downloaded.

Meanwhile, a background process called the Message Generator and Processor (MGP) periodically collects the changes uploaded by all clients and applies them to database tables. It then composes new data, ready to be downloaded to each client during the next
synchronization, based on predefined subscriptions.

Oracle Lite Sync is a two step asynchronous process:

untitled1.jpg

  1. Sync moves updated rows from the client database to the In Queue and from the Out Queue to the client database.
  2. MGP (Message Generator Processor) applies In Queue changes to base tables and Composes the changes to the base tables to client Out Queues.

Until recently, most business applications have only been accessible from network tethered PCs in offices, away from where a business’ productive assets and employees are at work, its customers are serviced, and its operations performed. A new generation of lightweight and powerful mobile devices combined with inexpensive, widely available wireless data connections promise to redefine the reach of Enterprise applications. Oracle is committed to servicing the mobile computing needs of businesses worldwide with solutions and software platforms that offer the depth of feature, scalability, reliability and performance.

Please note that above discussion is taken from Oracle white paper.

Below I have given the steps for installing Olite 10g in E- Business suite environment.

Installing OLite 10g

For installing Oracle database lite 10g for demo and checking out product features, you need to get the required software download from thislink.

Once downloaded, it need to be installed, very similar to our regular database installation. I have given the brief installation step for the same. As far as DBA is concern, the main resonsibility lies in installation and management. Please follow the below steps to install this software successfully. Also, please note that the steps below are the installtion steps for Linux OS. But though the basic steps are going to be almost same in any platform.
Note that the below discussion is for the installation on R12 instance.

Once the dump is extracted from zip file, before starting the OUI, you need to set the following environment variable.

ORACLE_HOME
JAVA13_HOME
TNS_ADMIN

For this software you need to set the path for ORACLE_HOME. You can create a directory called olite10g and set the path for this directoy as ORACLE_HOME.

JAVA13_HOME will be the location for your JAVA home. You can check the path for your java installtion, either 1.3 or 1.4 and set the path accordingly. Usually in Linux the path will be some thing like /local/java/jdk1.4.2.

TNS_ADMIN should point to $ORACLE_HOME/network/admin

Make sure you drop ‘mobileadmin’ schema with cascade option.

Connect to applications as system user and

SQL> Drop user mobileadmin cascade;

User Dropped.

SQL>

Once the above parameters are set and exported, check the DISPLAY environment variable(if installing on any of UNIX platform) and use the below command (from the software dump directory) to start the installation.

==========================================================
./runInstaller -invPtrLoc $ORACLE_HOME/oraInst.loc

Starting Oracle Universal Installer …

Checking requirements…

Checking operating system version: must be redhat-2.1, UnitedLinux-1.0 or redhat-3
Passed
All requirements met.

Checking if CPU speed is above 450 MHz.
Actual 3056 MHz Passed
Checking for Kernel version 2.4.21-4.EL Passed
Checking swap space: must be greater than 1536 MB.
Actual 23744MB Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2007-05-28_03-38-56AM. Please wait ..
sal Installer, Version 2.3.0.10.0
Copyright (C) 1999, 2003, Oracle. All rights reserved.

1.jpg

The above screen is just a welcome screen. Click next.

Next screen is a Inventory screen. Please note that we are here using the local inventory as specified by invPtrLoc attribute supplied, when we started the installation above. We also specified the location of oraInst.loc file. If the file doesnt exist, installer will create the file and the location of inventory will the one that we will provide in this Specify Inventory Directory screen. So basically oraInst.Loc file will be created with the inventory location as given in this screen. Give the location of your ORACLE_HOME, followed by a directory oraInventory. Even if the directory does not exist, installer will create the same.

1-1.jpg

2.jpg

In the above screen, we just specify the group of the user who is doing installation.

3.jpg

Specify File location page needs the product.jar file, which comes with software dump and name & location of ORACLE_HOME. Keep the default value and click next.

4.jpg

Press ‘Yes’ when you get such warning. The reason for this warning is that, the ORACLE_HOME directory that we are using is not empty, because we are creating the oraInventory directory in the same location. So by the time we come to this sceen, some components of inventory already got created in ORACLE_HOME directoy.

5.jpg

Select Installation Type as Mobile Server. This also includes Mobile Development Kit. Press Next.

6.jpg

On Mobile Server Repository Database Information page, you need to provide the information about, the hostname on which database resides, the tnsport of database and database sid. Once provided the info, click Next.

7.jpg

Mobile Server Repository screen will confirm your acceptance in installing the mobile server repository. This will create a schema, which will contain some schema and code objects specific to mobile administration. If you remember, before starting the installation, we have dropped mobileadmin schema for the same purpose. In case there is already existing repository, then the repository creation wizard will fail. So in usual practice, we drop the repository and create a fresh one when we install Olite 10g. ALso please note that upgrade repository option doesnt work with 10g Olite installation. Select Yes option if you want to create repository, else you can even select No.

If you select No at this point and later at some point of time, if you need to create a repository, you can do same by running just the respsitory wizard (repwizard) present in ORACLE_HOME/mobile/server/admin. But also note that, database information for creating repository cannot be given later, while creating the repository. But anyway you can change the information for the same by editing configuration file.

After the installtion, I will be mentioning the configuration file for OLite 10g installation in Oracle Apps R12.

At this point we will be going with repository creation option.

8.jpg

Port Number for OC4J HTTP Listener is the port we specify for webtogo URL for administration. We are use any of the unused port numbers, which are greater then 1024.

9.jpg

Demo Applications comes with product which can be used for testing and demo. Its totally upto the user to either install the same or skip. In this installation, we will be skipping the demo applicaitons.

10.jpg

Once all the parameters are provided, click on Install. The product installation will begin.

11.jpg

You can also see the progress, when the installation proceeds.

12.jpg

Once the product installation completes, Mobile Server Repository creation will start automatically. In this case the wizard will just have to create a schema(mobileadmin) and objects. For that it has to connect as system.

Since we have already specified the database details, where the wizard will connect, during installation part, it will just ask for system password. Please provide correct system password for your main database and click next.

13.jpg

When you click next, it will connect to database and check for mobileadmin schema, If the mobileadmin schema is found it will give upgrade option, else it will give the message as given in above screen and proceed further to create a new repository. Click next to continue.

14.jpg

When you click on next, it will ask for schema password, which you have to set in this screen. The schema name will be MOBILEADMIN, and password will be what ever you set here.

15.jpg

Administrator password if for administering the webtogo URL. Note that MOBILEADMIN is a database user, where are ADMINISTRATOR is a user for webtogo application. You can set the password for Administrator user on this screen.

16.jpg

As I said before, its going to install a new repository. Click next to continue.

17.jpg

You can see the Repository Creation progress.

18.jpg

Once the repository creation task is done. It will show the message as seen in the screen. Click on finish button to finish the wizard.

19.jpg

At the end you can just exit. Our Oracle Database Lite installation with repository creation was successful.

Next task that comes after installation is bringing up the services and sanity checking the  URL.

 

Configuration

At the starting of installation, we set 3 environment variables related to OLite 10g

ORACLE_HOME

JAVA13_HOME

TNS_ADMIN

Basically, when ever we have to manager Olite, we need to have these varaiables configuraed with correct values. Since we are talking about Olite installing in E-Buiness suite, we will talk about the configuration w.r.t R12.

The above three paramters can be set correct in a configuartion file called asgovars_ux.env present in $ASG_TOP/admin/template directory. Just edit the file and set these environment variables. Once that is done source the file. After sourcing when you see ORACLE_HOME, it will be pointing to Olite ORACLE_HOME (and not tools ORACLE_HOME).

You can go to $ORACLE_HOME/mobile/server/bin

and run the following command

(appmgr03) bin – -bash $ ./runmobileserver &
[1] 766
(appmgr03) bin – -bash $ 07/05/29 12:48:28 Warning: Error reading transaction-log file (/slot03/appmgr/olite10g/mobile_oc4j/j2ee/mobileserver/
persistence/transaction.state) for recovery: premature end of file
07/05/29 12:48:28 Forced or abrupt (crash etc) server shutdown detected, starting recovery process…
07/05/29 12:48:28 Recovery completed, 0 connections committed and 0 rolled back…
07/05/29 12:48:31 Tutalii: /SLOTS/slot03/appmgr/olite10g/mobile/server/bin/jzlib.jar archive

(appmgr03) bin – -bash $

This will start the webtogo service. You can verify the same using following command

(appmgr03) bin – -bash $ ps -eaf | grep oc4j.jar
appmgr03   767   766  8 12:48 pts/3    00:00:04 /local/java/jdk1.4.2/bin/java -Xms256m -Xmx512m -jar oc4j.jar

appmgr03   971 32439  0 12:49 pts/3    00:00:00 grep oc4j.jar
(appmgr03) bin – -bash $

You can see, there is 1 oc4j.jar process that is running.

The configuration file for web-to-go is present in $ORACLE_HOME/mobile/server/bin directory, and the name is webtogo.ora.

This file basically contains the database details like, Olite ORACLE_HOME, JDBC connection string, encrypted password, maximum number of connection allowed and log & trace file details.

The port number, that we select for Olite (8080), wont be present in webtogo.ora. The port information will be present in http-web-site.xml file present in $ORACLE_HOME/mobile_oc4j/j2ee/mobileserver/config directory. You can change the port any time in http-web-site.xml file and bounce the services, the new port will take effect.

For shutting down the service, there is no special command and we need to kill the oc4j.jar process, that is running. Thats the only way that is currently available for shutting down the Olite service.

The URL for accessing webtogo can be constructed as followes:

http://(hostname):(port)/webtogo.

The port here is webtogo port(8080), configured during installation.

Once the above installation is done, you can follow metalink note ID  386682.1 for post installation task. Note that these post installation task is required only if the installation is done for E-Business suite.

 

Advertisement