Tuesday, December 06, 2005

Moving an application

We moved one of our major schemas to a new database this past weekend. This schema had lived in the same database for over six years. Over that time many people worked on the system and brought their experience to the development of it. Some of the things we found during the move:

  1. Some Java programs still continue to use a connection URL of host:port:sid.
  2. People really like synonyms. There were a couple situations where a synonym pointed to a synonym which pointed to a synonym which pointed to a synonym...
  3. Recently, we have been setting up TNS aliases for each application and not each database. Sure, when we have multiple applications on one database there are multiple aliases. But when we move the application and flip the alias, everybody changes at once. Programs that used the application specific aliases moved with no problems.
  4. It's 2005 (almost 2006) and we are still fighting people hard-coding username/passwords in their programs.
  5. Got a call from a user Sunday, "I can't login with user X to the database." I replied, "User X doesn't live on that database anymore, and where did you get user X's password?"

4 comments:

Tim... said...

Different connect strings for different applications also makes sense because it allows you to use services in 10g:

http://www.oracle-base.com/articles/10g/Services10g.php

These are good for RAC, but also handy for tracing using DBMS_MONITOR:

http://www.oracle-base.com/articles/10g/SQLTrace10046TrcsessAndTkprof10g.php

Cheers

Tim...

Anonymous said...

I feel your pain Jeff, and I can relate all the way LOL!

Anonymous said...

Dear Jeff,
Cool and interesting :) But just curious about your experience in hard-coding user/pass in application: If I use an obfuscator tool is there any room for worry about user/pass again?
-Cheers

Noons said...

Hard-coding useridS and passwordS?!

Pah! I wish! I've had enough trouble getting them to use more than ONE userid/password for EVERYTHING!!!...