Feed aggregator

SAGE Computing Services Success: Forms upgrade to 11g

Chris Muir - Wed, 2011-03-30 08:51
I don't normally write these sort of blog posts, but Oracle's been keen to let customers know how simple the upgrade of Oracle Forms 10g to 11g is. One of the major sticking points for customers is that this requires a move from Oracle Application Server and OC4J to WebLogic Server, a foreign application server platform to many traditional Oracle sites.

SAGE Computing Services assisted the Department of Treasury and Finance in Western Australia in undertaking such an upgrade in late 2010, and we can attest to the fact that this is an easy process, Oracle's WebLogic Server is fully capable of running your production Oracle Forms systems.

For those interested Oracle has recorded the success in a whitepaper.

So now there's no reason to upgrade to Apex or ADF, just upgrade your Forms system instead!

Making It Easier For Developers To Access LDAP

Mark Wilcox - Tue, 2011-03-29 02:41

One of the reasons why I think LDAP has always had slow adoption by developers is most of their tools provided great abstractions for dealing with databases (like Hibernate, Toplink/JPA, ADF Business Components, etc) while LDAP trailed.

However, at Oracle we do have some great ways to fix this problem.

And not just by trying to make LDAP look like a database.

There are three ways to do this:
1 - You can use OVD's Web Interfaces - either REST (OVD HTTP/Web Gateway) or SOAP (DSML v2)
2 - Oracle Platform Security Services User/Role API
3 - Oracle Platform Security Services Identity Governance Framework ArisID

Posted via email from Virtual Identity Dialogue

How To Query OVD, OID, DSEE Using SQL

Mark Wilcox - Tue, 2011-03-29 02:24

One of the perpetual questions in LDAP is "how to query via SQL". I even wrote a post on this 3 years ago.

And while it doesn't occur very often anymore - it popped up again this week. So I suspect there might be others.


First - to be clear - SQL is very different than LDAP. SQL is simply a standardized query language for querying a relational database. Each database has a different protocol - that's why each database must provide its own database driver even for a standard connection API like JDBC (or ODBC or .NET ADO).

Second - if you have access to an Oracle database (even Oracle XE) you can use the DBMS_LDAP PL/SQL API to query an LDAP server. And a very useful trick to perform with that is to create a database view that maps to a DBMS_LDAP call. When you go this route - you can have your PL/SQL expert write one package and then anything that can connect to the view - can use the data without needing to use PL/SQL or LDAP.

Third - If you are using Java - you can use the JDBC-LDAP library. JDBC-LDAP is a JDBC driver we wrote almost a decade ago at OctetString. Because there was so little demand for it - we actually released it as open-source and donated to OpenLDAP. And you can get pre-built binaries here.

Once you have JDBC-LDAP then you can use it similar to any other JDBC driver.

And even do a SQL query - though it has a strong LDAP flavor:

ResultSet rs = stmt.executeQuery("SELECT cn, uniquemember FROM subTreeScope;dc=example,dc=com WHERE objectclass=groupofuniquenames");

This says "retrieve the cn and uniquemember attributes from any groupofuniquenames objects under the dc=example,dc=com branch"

In LDAP terms - the start of the statement lists which attributes you want (this could be * for all attributes), Scope & searchbase is set on FROM and WHERE clause is the LDAP filter.

And here is an example of what the results look like (captured from my output in Netbeans):

run:
Sort by : null
numColumns is 4
uniquemember_0:uid=kvaughan,ou=People,dc=example,dc=com
uniquemember_1:uid=rdaugherty,ou=People,dc=example,dc=com
uniquemember_2:uid=hmiller,ou=People,dc=example,dc=com
cn:Directory Administrators
uniquemember_0:uid=scarter,ou=People,dc=example,dc=com
uniquemember_1:uid=tmorris,ou=People,dc=example,dc=com
uniquemember_2:
cn:Accounting Managers
uniquemember_0:uid=kvaughan,ou=People,dc=example,dc=com
uniquemember_1:uid=cschmith,ou=People,dc=example,dc=com
uniquemember_2:
cn:HR Managers
uniquemember_0:uid=abergin,ou=People,dc=example,dc=com
uniquemember_1:uid=jwalker,ou=People,dc=example,dc=com
uniquemember_2:
cn:QA Managers
uniquemember_0:uid=kwinters,ou=People,dc=example,dc=com
uniquemember_1:uid=trigden,ou=People,dc=example,dc=com
uniquemember_2:
cn:PD Managers
BUILD SUCCESSFUL (total time: 1 second)

Posted via email from Virtual Identity Dialogue

Information Rights Management supports IE9

Simon Thorpe - Mon, 2011-03-28 19:03

 

Hi, just a brief note to mention that we released an IRM Desktop last week to provide compatibility with IE9. The new IRM Desktop is compatible with 10g and 11g IRM Servers, and is available via our patch delivery mechanism in the Oracle Support site. Customers can download it from their and distribute it to their users as and when required.

To recap, the latest IRM Desktop supports Microsoft Office from 2000 through 2010 for Office formats and RTF and text, Outlook likewise for sealed email, Adobe 9 and X for PDF, MS IE 7 through 9 for HTML, XML and some image formats, and MS SharePoint 2007 and 2010.

For searching encrypted content, it also supports Windows Explorer Search from XP through Windows 7, Windows Indexing Service on XP and 2003, and SharePoint Indexing Service 2003 and 2008.

UPDATE: A number of people have contacted me to ask how to get hold of the patch kit. If you are an Oracle customer, you can go to support.oracle.com and log in using your customer service id to access patches and knowledge base articles and much more. The IRM patch for IE9 should be found by searching for 10410462. If you use IRM as part of a service run by one of our customers, then the service provider should be making the patch available to you.

 

OID Supports 400,000 (Four Hundred Thousand!!) Operations Per Second on 500 Million User Database. AKA OID Eats Facebook Database For Breakfast

Mark Wilcox - Mon, 2011-03-28 08:36

It's funny - in the Internet - we can forget that no matter how popular new technologies are - like Twitter or Facebook that their other less "fashionable" (after a few drinks you might even say "dead" :)) technologies like SMTP, IMAP and of course LDAP that still handle far more social networks than these two systems do.

And we've seen this because in the past year - there has been a number of new opportunities around building new extremely large (e.g. larger than 10 million) directory servers.

Typically this is because companies are either launching new cloud services or consolidating older user databases into standards-based approaches. This isn't just the usual suspects (e.g. telco) either. Insurance agencies, retailers and others who have large customer bases that need to use a directory service for customer-facing portals, messaging, etc all are looking into these types of solutions.

At Oracle both OID and DSEE are strategic options for directory services. We love them both :).

But because OID uses the Oracle RDBMS for its storage - when it comes to these extremely large directories it gives customers some unique capabilities that don't exist with any other directory product.

In particular:

  • ability to scale to extremely large number of entries without needing to split the entry database into multiple instances (called partitions)
  • can leverage Oracle Exadata database machines

And we have put this together into a new whitepaper.

In this white paper we showed how we got OID 11g on an Exadata machine containing 500 million entries (e.g. roughly the size of Facebook's 2010 user population) - were able to get it to 400K operations per second.

And that was only on a Exadata half-rack.

With 10gb Ethernet (as opposed to Infiband).

Meaning -  we're not even close to maxing out the performance here.

Yet we're easily lapping the field and doing it with less management overhead.

Or in other words - if you find you need a new large-scale directory, there really isn't any reason to be looking at any other directory vendor.

Because no other vendor gives you two proven options to scale to these numbers. You can either choose to scale horizontally by data partitioning using DSEE leveraging existing commodity hardware  or you can avoid partitioning by utilizing the power of Oracle RDBMS with OID with or without the unique capabilities of Oracle Exadata.

Posted via email from Virtual Identity Dialogue

The Cost of Mediocre

Jeff Hunter - Sun, 2011-03-27 05:11
Over the years I've written tons of scripts to monitor all sorts of things on the database.  Some of those scripts turned out to be helpful on an ongoing basis and some ended up dying on the vine when new features of Oracle came out. One of my scripts looks at the top processes in a database from the CPU's perspective.  In other words, how much time did the process use on the CPU over it's

Concatenation, Concatenation, Concatenation

Oracle WTF - Sat, 2011-03-26 04:08

I'm still not sure what this one does, but you have to be impressed by 11 nested CONCATs.

(And by the way, you also have to be impressed by the inventor of the CONCAT function who evidently considered two arguments sufficient, unlike, say LEAST, GREATEST, DECODE, COALESCE and BIN_TO_NUM. But not NVL. Who knows what goes through these people's heads.)

PROCEDURE ins_xyz
   ( p_xyz_id_out OUT NUMBER,
     p_input_array IN myarrayrectype )
IS
BEGIN
   p_xyz_id_out := NULL;

   BEGIN
      INSERT INTO xyztab
         (
            xyz_id,
            xyz_11,
            xyz_12,
            xyz_13,
            xyz_21,
            xyz_22,
            xyz_23,
            xyz_31,
            xyz_32,
            xyz_33,
            xyz_41,
            xyz_42,
            xyz_43,
            xyz_43_concatenated
         )
      VALUES
         (
            xyz_seq.NEXTVAL,
            p_input_array.xyz_11,
            p_input_array.xyz_12,
            p_input_array.xyz_13,
            p_input_array.xyz_21,
            p_input_array.xyz_22,
            p_input_array.xyz_23,
            p_input_array.xyz_31,
            p_input_array.xyz_32,
            p_input_array.xyz_33,
            p_input_array.xyz_41,
            p_input_array.xyz_42,
            p_input_array.xyz_43,
            SUBSTR(
              CONCAT(
                CONCAT(
                  CONCAT(
                    CONCAT(
                      CONCAT(
                        CONCAT(
                          CONCAT(
                            CONCAT(
                              CONCAT(
                                CONCAT(
                                  CONCAT(
                                    p_input_array.xyz_11 || ' ',
                                    p_input_array.xyz_12 || ' '),
                                  p_input_array.xyz_13 || ' ' ),
                                p_input_array.xyz_21 || ' ' ),
                              p_input_array.xyz_22 || ' ' ),
                            p_input_array.xyz_23 || ' ' ),
                          p_input_array.xyz_31 || ' ' ),
                        p_input_array.xyz_32 || ' ' ),
                      p_input_array.xyz_33 || ' ' ),
                    p_input_array.xyz_41 || ' ' ),
                  p_input_array.xyz_42 || ' ' ),
                p_input_array.xyz_43 ),
            1, 512 )
         )
      RETURNING xyz_id INTO p_xyz_id_out;
   EXCEPTION
      WHEN OTHERS THEN NULL;
   END;
END ins_xyz;

Thanks BB for this one, which she or he (I can't say more for witness protection reasons) sent me a while ago and I almost forgot about.

I didn't post it at the time because I couldn't understand what it did. Looking at it again though, that's all part of the fun. Here's part of the conversation we had about it:

Me: Thanks BB - love it. I'm slightly puzzled by p_input_array though. Is it an array?

BB: An array of records.

Me: Yikes. So what does the target table look like? I suppose each 'xyz_nn_' column must be a nested table.

BB: In the actual system they're parts of node tuples. xyz_11, xyz_12, xyz_13, all indicate "scores" for pairings of the first node with 1, 2, 3, respectively. Hard to explain without giving away too much about the system. However, they're scalars.

Me: Glad we got that cleared up. Can I say parts of node tuples without endangering your job at NASA?

Oracle E-Business Suite and APEX White Paper

David Peake - Fri, 2011-03-25 12:21

The Oracle E-Business Suite and Oracle Application Express teams are proud to announce the release of the Extending Oracle E-Business Suite Release 12 using Oracle Application Express white paper.

Oracle E-Business Suite delivers a wide range of functionality to handle core areas of your business processing needs. However, there are situations where you want to extend your information systems beyond the range of Oracle E-Business Suite. Many times these necessary extensions are meant to handle unique industry conventions, specific customer requirements, or perhaps to offer some other competitive edge. Sometimes these change requests are simple enough, but other times more extensive customizations are needed. In these scenarios, Oracle Application Express, also known as Oracle APEX, provides an easy way to create supplemental applications that are easily integrated with your Oracle E-Business Suite and its data.


This paper outlines how to extend Oracle E-Business Suite 12.1.3 (and up) functionality using Oracle Application Express. Recommended architecture and security considerations are discussed in detail.

You can find the paper on the APEX OTN Site > Learn More > Extending Oracle E-Business Suite Release 12 using Oracle Application Express {Under Technical Information and White Papers}

All the necessary files are also available from My Oracle Support Note: 1306563.1

This document helps customers and partners implement integrated Application Express extensions to the Oracle E-Business Suite Release 12.1.3 and up. The document is complete with a worked example. This solution also requires Oracle E-Business Suite Patch 9659153

Dutch Oracle User Group's Apex Day 2011

Tony Andrews - Fri, 2011-03-25 06:32
This week I attended the Dutch Oracle User Group (OGh)'s Apex Day as a presenter, along with an ex-colleague from Northgate, Nigel Blair. We were talking about how we converted 1500+ Forms modules to Apex. There was quite a lot of interest from the 250 people present. We hope the interest wasn't due to a mix-up in the agenda that had us down as Nigel Andrews and Tony Blair!Luckily we were on Tony Andrewshttp://www.blogger.com/profile/16750945985361011515noreply@blogger.com0http://tonyandrews.blogspot.com/2011/03/dutch-oracle-user-groups-apex-day-2011.html

Upgrading to Oracle 11gR2

Jeff Hunter - Fri, 2011-03-25 05:11
I am about half way through upgrading all my dbs to Oracle 11gR2 from various versions of 10gR2.  Out of all the upgrades I've performed from 7.0 up to 10gR2, the 10g to 11g upgrade is by far the most hassle free of all. I have abandoned the GUI upgrade tool this time.  The GUI tool is fine, but internal issues prevented me from running the GUI remotely.  This meant that somebody had to be

Best practices for building cloud based applications

Debu Panda - Fri, 2011-03-25 00:07
I wrote another article outlining some best practices for building cloud based applications. You can read the article at http://www.devx.com/architect/Article/46602?trk=DXRSS_LATEST

I am writing this blog using my iPad and blogger is not iPad friendly

OTN Dev Days Database Toronto

Kuassi Mensah - Thu, 2011-03-24 18:00
Toronto: OTN Dev Days Database is coming to you; we are still taking registration and There Is Such A Thing As Free Lunch.

OVD-EUS: Questions and Answers About Mapping Database Users, Roles to AD Users and Groups

Mark Wilcox - Thu, 2011-03-24 03:19

More OVD-EUS AD Q&A from sales:

Question: which AD object types are used to store Oracle users and roles in AD
Answer: There are two ways to deploy OVD-EUS. Option 1 - uses OID (or DSEE) to store the EUS metadata, thus the only attribute used in AD is the orclcommon attribute used to store the password hash (assuming using EUS password authentication). Option 2 - The EUS meta-data is stored in a branch explicitly created to store this data and the AD schema is extended to support this.

Question: are any roles added  to AD by default with the schema extension
Answer: No.

Question:  which oracle accounts are typically excluded from integration
Answer: In 10g database you cannot use sysdba users. In 11g any user can be used.

Posted via email from Virtual Identity Dialogue

Call for Papers for Oracle OpenWorld 2011

OCP Advisor - Wed, 2011-03-23 19:37
Oracle OpenWorld 2011 will be held this year from October 2-6, 2011 in San Francisco, CA. If you want to get a free conference registration, respond to the call for papers and submit a presentation proposal. If your submission is selected, you get a FREE registration!

This year the site for presentation proposal submission is a new one. So you have to register on the site first and then submit. Read the submission guidelines before your submit your proposal. There are strict character limits on abstracts and other sections.

The title should be 80 characters or less which is about 10-17 words. A creative title always helps to catch the selection committee's attention. My first submission at Oracle OpenWorld a decade ago was "Eyes Wide Shut - Migrate Your Enterprise to Oracle Applications". Thanks to Tom and Nicole, both the movie and my session had a public viewing. The abstract has to be 750 characters or less which is about 80-100 words. Review the Primary Track and Optional Track before selecting the appropriate one. Selecting the right track increases your chances of acceptance. One can aslo add tags to the submission, so the abstract is searchable using multiple criteria. Session Type can be either conference session or panel. Session category includes best practices, case study or product strategy / roadmap. The last one is usually reserved for Oracle speakers. For the first time, one can add a video link supporting the proposal content. Perhaps a creative spot on Youtube may come in handy. The official requirement is to have a video that provides more information or background on your topic.

Call for papers close on Sunday, March 27, 2011 at 11.59 Pacific Standard Time. So put on your thinking caps and showcase your success stories for the last 12 months at the largest enterprise application technology conference in the world. Get ready to get noticed!

Seriously?

Jeff Hunter - Wed, 2011-03-23 17:11
I haven't done any research on this yet, so I don't know if it is fixed in a subsequent patch or a later version.  But seriously, a space? SQL> select * from v$version; BANNER ---------------------------------------------------------------- Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi

OGh APEX day 2011

Rob van Wijk - Wed, 2011-03-23 17:01
Yesterday I attended OGh's APEX day. Previous year was already pretty successful with 150 people attending. This year the maximum of 150 people was reached in only a few days, so we scaled up the event to a maximum of 250 people, and in the end we still had to disappoint several people. And this year we had several sponsors as well: Oracle, Ciber, Transfer Solutions and Itium. These must be signsRob van Wijkhttp://www.blogger.com/profile/00499478359372903250noreply@blogger.com2

cost claims and the law...

Nuno Souto - Wed, 2011-03-23 04:39
Been a long time since last post.  It's been a busy period since the start of 2011. Mostly because we are in a period of turmoil when apparently every man and his dog is trying to get into our site for "outsourcing".  Even though that is most definitely not what we are doing.  But never let reality interfere with a good dose of marketing... We've seen a lot of "cloud computing" and SaaS Noonsnoreply@blogger.com10

How To Do Highly Available OVD-EUS

Mark Wilcox - Tue, 2011-03-22 23:21

Got a question from sales on our mailing list that I think is good to have generally available:

My customer is considering using OVD for EUS (against AD) but worries about having one more point of failure (OVD).
Mark Comment - This is covered in our product documentation as well.

Question - What are the failover solutions available?
Answer - It's easy to make OVD highly available. All that is required that you have 2 (or more) OVD instances installed. Then you can synchronize the configuration. I typically prefer to get 1 server configured and then do the synchronize.

  Question - What  are the best practices?
Answer - After you have multiple OVD instances configured - then you can either put OVD behind an existing hardware load-balancer (most common) or if OVD implementation is restricted to just OVD-EUS, can list the specific OVD servers hostname and ports in the database's ldap.ora file. The reason why I put this caveat is that not all applications lets you list multiple connections for fail-over.

Question - Do we have customers working with highly available OVD solution?
Answer - As far as I know, everyone has OVD deployed in a highly available configuration

Posted via email from Virtual Identity Dialogue

Installing Oracle XE 10g on Ubuntu 10.10 Server and VMWare Fusion 3.1

Chris Muir - Tue, 2011-03-22 08:03
The following blog post is purely for my own purposes, to document how to install Oracle XE 10g on Ubuntu 10.10 Server as a VM under VMWare Fusion 3.1 on Mac OS X 10.6.6.

These instructions are gathered from numerous internet resources and much of the credit must be given to these authors for their superb guides. The main difference for my guide is the inclusion of screenshots which I prefer over text or video, and the occasional fix where the original instructions didn’t work for me. Reference to the external authors is given throughout this article.

Installing Ubuntu 10.10 Server on VMWare Fusion

Opening credit must go to Ted Wise for his XE on Mac guide. Ted’s guide is very indepth detailing the exact options for installing Ubuntu’s JeOS 8.04. Ubuntu doesn’t appear to have a JeOS download for 10.10 so my instructions are the Ubuntu 10.10 Server .iso instead.

First download the Ubuntu “i386” 10.10 Server edition as the Oracle XE .deb package downloaded later is “i386” too. I’m a little unsure why, but there doesn’t appear to be a 64bit version of the i386 ISO for Ubuntu, but there is an Ubuntu amd64 server release for 10.10. While the amd64 version will run in VMWare Fusion, later on attempting to install the Oracle XE .deb package, it will complain it’s only for the i386 platform, which makes the amd64 Ubuntu unviable.

There’s obviously something I don’t know about the Ubuntu supported platforms and the relating ISOs.

iiNet (local Aussie ISP) provides a handy mirror.

Once downloaded open the VMWare Fusion. From the menu select File -> New which opens the New Virtual Machine Assistant wizard:

Select the “Continue without disc” button which opens the Installation Media page in the wizard:

Select the “Use operating system installation disc image file” radio button. This will open a select file dialog where you select the Ubuntu 10.10 Server i386 iso:

Presenting the following options in the previous dialog:

Selecting “Continue” presents the Operating System page. By default Linux and Ubuntu should already be selected under the respective Operating System and Version options:

Selecting “Continue” presents the Linux Easy Install options:

Note in the above picture we unselect the “Use Easy Install” option as this will skip many of the options we want to configure when the Ubuntu installation starts in the VM. Selecting the “Continue” button will present the Finish page:

The default options for the VM are fine. However you can click the “Customize Settings” button to change them. Note on selecting either this button or the Finish button will display a save dialog asking you to name and place the VM file on the OSX file system. The default location appears to be /Users/(your username)/Documents/Virtual Machines:

Note in the above picture I already have a number of other Ubuntu VMs that were previous trials.

Once you press Save the VM will start and the Ubuntu installer will flash through some startup screens, quickly arriving at the first option to select English as the preferred language:

At the next screen select the “Install Ubuntu Server” option:

For whatever reason we’re prompted for the language again, “English damn you, English”:

Then select your country:

Select No at the “Detect keyboard layout” option:

Select USA on the “Origin of the keyboard” screen:

Wow, Ubuntu loves it’s keyboard options. Select USA at the “Keyboard layout” screen:

Change the hostname to something more suitable at the Hostname prompt on the next screen, such as “oraclexe”:

At the timezone prompt assuming the right default has been picked, press Yes:

The next set of steps owes all its credit to Ted Wise’s instructions. As Ted notes Oracle XE will require a Linux swap partition twice the size of the available RAM. This can be done post install but it’s easier done now through the install screens with no typing required. The first screen titled “Partitioned disks” select the Manual option:

On the next screen select the SCSI3 option representing the VMWare disk available to the VM:

The screen will warn you that we’re going to drop and recreate the partition, which we select the Yes prompt:

This returns to the previous screen where under the SCSI option you’ll see that there is an entry for the empty partition entitled “pri/log 21.5GB” which we select:

In the following screen select the “Create a new partition” option to create a new partition in the empty partition we just selected:

In the following screen downgrade the partition size from 21.5GB to 20GB. The remaining size will be used for the swap partition soon.

Select “Primary” to make this the primary partition:

Allow the partition to be created at the “Beginning” of the available space:

Select “Done setting up the partition” which completes the primary partition. Next we create the swap partition:

Returning to the main partition page, select the remaining “pri/log FREE SPACE” option, which will be used for the swap:

Again select the “Create a new partition” option:

Take the default 1.5GB partition space next which will allocate the remaining free space to the swap:

Again make this a Primary partition:

Select the “Use as” option as we want to change what the partition is used for:

Select “swap area” when prompted “How to use this partition”:

Then finally “Done setting up this partition”

Returning to the partitions screen select “Finish partitioning and write changes to disk”:

A final prompt warning you on your changes will display, select Yes:

At this point the installer will start copying and configuring files:

At the “Set up users and passwords” screen you have the chance to configure the primary none-root user. The first page prompts you for the user’s name, not the account name. However they can be the same. As seen in this screenshot “administrator” is entered:

Next screen you enter the actual user account name, again “administrator” is entered in this screenshot:

Over 2 screens you’ll be asked to enter and confirm a password for the new account:

Choose not to encrypt the home directory:

Only if you have a HTTP proxy between the internet and the Mac set the following options, otherwise just select Continue. The install requires access to the internet so it’s essential this is configured if required:

Now the installer will download and install additional files:

Select your preference at the screen prompting you how to apply security updates:

At the software selection page, as we want this to be a very small server install just to run Oracle XE, leave the software package selection undone:

At the GRUB Boot prompt select Yes:

Hurray!… the installation is complete:

On a reboot the VM will display the Ubuntu command line login:

On logging in using the administrator account created in the previous steps, force the Ubuntu Server to update itself using the APT package installer via the following command:

sudo apt-get update && sudo apt-get dist-upgrade

When prompted press Y

Finally reboot the server:

sudo shutdown –r now

Install VMWare Tools

Here we depart from Ted's instructions. The Ubuntu Community documentation provides under the "Installing from Ubuntu package from VM-tools" heading the instructions for installing the VMWare Tools. A number of prescribed methods didn't work, including those requiring the VMWare Tools to be mounted via a virtual cdrom.

On logging in again as administrator, enter the following commands. Note the third command; as we've installed a UI-less Ubuntu Server we use this specific command (the Ubuntu documentation lists 2 options):

sudo apt-get install linux-headers-virtual
sudo apt-get install --no-install-recommends open-vm-dkms
sudo apt-get install --no-install-recommends open-vm-tools


Installing Oracle XE

First login as administrator and install the prerequisite libraries and packages:

sudo aptitude install libaio-dev
sudo apt-get install bc


Note that there appears to be some documentation around that indicates if Oracle XE is installed under Ubuntu 64bit, there are additional prerequisite libraries that must be installed including "bc" and "ia32-libs".

In the next step I had significant issues in using the usual method that most others used to download Oracle XE. As described in Ted's instructions, the typical manner is to download and Oracle XE is to add an entry to your /etc/apt/sources.list, use wget to retrieve the GPG key for the Oracle XE package and install it the APT repository, then finally download Oracle XE using APT.

Instead I came up with the following solution.

Via my browser I discovered the URL of the Oracle XE i386 deb package from the OTN web page was as follows:
http://download.oracle.com/otn/linux/oracle10g/xe/10201/oracle-xe_10.2.0.1-1.0_i386.deb

Still logged in as administrator, issue the following command changing the username and password to match your OTN username and password:

(Post edit: It appears the wget command can't deal with the licence prompt the Oracle website asks for. To solve this, in your Mac and your favourite browser, access the following page and accept the license condition. This will set your IP up to be allowed to download the software, such that both your Mac and the VMWare session can download the .deb file. Obviously another option is to download the .deb file onto your Mac, and then access it from your VMWare session)

wget --user=(username) --password=(password) http://download.oracle.com/otn/linux/oracle10g/xe/10201/oracle-xe_10.2.0.1-1.0_i386.deb

This will download the XE .deb file. Once completed we can install the .deb file using dpkg (more information on .deb files and dpkg can be found via Chris Buckridge's page):

sudo dpkg -i oracle-xe_10.2.0.1-1.0_i386.deb

Ensure to complete the usermod step next otherwise the administrator user will not be given correct privileges to install and start the database after a reboot:

(Post edit: there's a mistake in my notes here. Either the following command must be entered now, or, after the oracle-xe configure line next. Without reinstalling the whole VM it's currently hard for me to check this)

sudo usermod -g dba administrator

The next command configures and installs the database:

sudo /etc/init.d/oracle-xe configure

At the prompts:

1) Enter a port for Apex, the default being 8080
2) Enter a port for the Oracle Listener, the default being 1521.
3) Enter a password for the SYS/SYSTEM database accounts.
4) When prompted enter Y to allow Oracle XE to be started with the VM boots.

For reference /etc/default/oracle-xe is the configuration file which stores these options.

Once completed, edit the following file via or similar:

vi ~/.bashrc

At the end of the file enter the following:

ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_HOME
export ORACLE_SID=XE
export PATH


Finally we need to login to the database as system and allow remote access to the HTTP server:

sqlplus system/(password)
EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);
quit;

Accessing the APEX homepage from the VM Host (not Guest)

Finally to access the APEX homepage from the VM Host, on the guest issue the command "ifconfig" which will reveal the current IP of the VM guest, listed under the "eth0" "inet addr" entry, as example 192.168.197.131.

On the VM Host, return to your favourite browser and enter: http://192.168.197.131:8080/apex

..and the APEX home page should display. Ensure you can login using the SYSTEM account.

It's worth checking from a tool like JDeveloper installed under OSX that you can also access the database.

Voila.

Cloud Computing for Java Developers

Debu Panda - Mon, 2011-03-21 13:38
I wrote an article Java Cloud Development: What Developers Need to Know at Developer.com. This provides an introduction to Cloud Computing from Java Developers perspective. You can read the article here.

Pages

Subscribe to Oracle FAQ aggregator