Well, if they hardcoded the connect string it is entirely possible they
originally did it with an antique connect string syntax that still works
because of upward compatibility, but I suspect some such strings may not
function usefully with all service connection requirements and scan.
I wonder whether some security issue prevents them from reading parameters from
a configuration file at the start time of the application.
mwf
From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On ;
Behalf Of Sandra Becker
Sent: Tuesday, March 15, 2016 12:45 PM
To: Niall Litchfield
Cc: Peter Sharman; Robert Freeman; Mark W. Farnham; oracle-l
Subject: Re: Need two databases same name, same cluster, different versions
I'm not sure how accurate my information is about the hardcoding of database
name since I'm getting different information now. The scan issue is still a
mystery to me too. I'm still trying to get someone to explain it to me so it
makes sense. Kind of have the feeling they don't really know either so can't
explain it.
So my team lead comes by yesterday and tells me to create a new database, use
expdp/impdp to move the few hundred of the 20k+ schemas we need (which is what
I wanted to do initially), and then set up the services so service DEVDB points
to NEWDB. He believes that the connect string is what is hardcoded with the
port and database name, but isn't sure. He thinks they're using a cluster
service name and we just have to set up the services correctly with crsctl.
Not really understanding that part of it or even how to see what services are
set up for DEVDB now as a starting point. Trying to read docs, google, etc. to
figure it out. I am definitely confused about what I really need to do as far
as services.
Suffice to say this was not a well thought out upgrade plan.
On Mon, Mar 14, 2016 at 2:44 PM, Niall Litchfield <niall.litchfield@xxxxxxxxx>
wrote:
I don't think I see any later replies to the questions about what is meant by
database name, or details of the scan issue. Given that the database name is
DEVDB it seems hard to imagine even creatively idiotic developers thinking that
that should be hardcoded. The only thing that I can see you might get away with
is to create a new single instance database manually (dbca will try to register
it as an oracle restart db with clusterware otherwise), together with its own
listener on one of the nodes. That, however, would still require a port change
(and I bet you'll be told that's hardcoded as well given the other dubious
practices happening here). I *wouldn't* do this. I'd create a new db on a new
server(s) for recovery purposes. Then separate out production from dev and
build out a sensible environment from there.
On Mon, Mar 14, 2016 at 4:23 PM, Sandra Becker <sbecker6925@xxxxxxxxx> wrote:
My manager is actually working on that particular issue. At least it keeps me
out of the fray for that piece.
On Fri, Mar 11, 2016 at 4:50 PM, Peter Sharman <pete.sharman@xxxxxxxxxx> wrote:
Spinning down the stupid d’uhvelopers that created an app with a hardcode DB
name in it is also something that should be on your to-do list! L
Pete
Oracle logo
Pete Sharman
Database Architect, DBaaS / DBLM
Enterprise Manager Product Suite
33 Benson Crescent CALWELL ACT 2905 AUSTRALIA
Phone: <tel:+61262924095> +61262924095 | | Mobile: +61414443449
<tel:%2B61414443449>
Email: <mailto:pete.sharman@xxxxxxxxxx> pete.sharman@xxxxxxxxxx Twitter:
@SharmanPete LinkedIn: au.linkedin.com/in/petesharman
Website: petewhodidnottweet.com
_____
"Controlling developers is like herding cats."
Kevin Loney, Oracle DBA Handbook
"Oh no, it's not, it's much harder than that!"
Bruce Pihlamae, long term Oracle DBA
_____
From: Sandra Becker [mailto:sbecker6925@xxxxxxxxx] ;
Sent: Friday, March 11, 2016 4:41 AM
To: Robert Freeman <rfreeman@xxxxxxxxxxxxxxxxx>
Cc: Mark W. Farnham <mwf@xxxxxxxx>; oracle-l <oracle-l@xxxxxxxxxxxxx>
Subject: Re: Need two databases same name, same cluster, different versions
Spinning up a couple of RAC VMs isn't an option for me, but definitely a
worthwhile idea.
Sandy
On Thu, Mar 10, 2016 at 9:17 AM, Robert Freeman <rfreeman@xxxxxxxxxxxxxxxxx>
wrote:
For something like this, I'd spin up a couple of RAC VM's and an application VM
and do some testing to figure out what is really required to make the whole
thing work successfully before I'd haul off and upgrade anything in real life.
The ability to screw up VM's beyond recognition and then *poof* just restore
them is wonderful! :)
On Mar 10, 2016, at 9:51 AM, Sandra Becker <sbecker6925@xxxxxxxxx> wrote:
I don't have any more information other than "the dbname is hardcoded in the
app". I also was told no changes would be allowed to the app, which came as no
surprise. I figured a TNS entry with an alias pointing to a new database would
do the trick since I've done that before. I was told this would not work, they
had tried it before and there was some issue with the scan listener. I don't
know enough about RAC to say otherwise.
I'm going to upgrade GRID and the other three databases then try to get more
details about why a tns entry didn't work before. The best solution would be
to move the production app to a production database and I'll try to push that
too.
Sandy
On Thu, Mar 10, 2016 at 6:35 AM, Mark W. Farnham <mwf@xxxxxxxx> wrote:
Explain more about EXACTLY what you mean when you write that the “database
name” is hardcoded in the app.
I’m particularly interested in how this affects which instance or service they
connect to from the application and whether it matters.
mwf
From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On ;
Behalf Of Sandra Becker
Sent: Wednesday, March 09, 2016 4:31 PM
To: oracle-l
Subject: Need two databases same name, same cluster, different versions
What they want
(Servers are Linux)
Current database: ver. 11.2.0.4, 2-node RAC, dbname=DEVDB, hosts production
application
New database: ver. 12.1.0.2, 2-node RAC (same two nodes as the 11.2.0.4 DB),
dbname=DEVDB, will host production application
Background on the request and suggested strategy
I was doing the prep work for upgrading four development RAC (GRID/ASM)
databases to 12c when I ran into a lot of serious issues with one of them that
we determined were too numerous to consider fixing before upgrading. I
suggested just creating a new database with a different name, expdp/impdp the
critical schemas and create developer schemas as needed. I was told we
couldn't do that because the current database actually hosts a production
application and the database name is hardcoded in the app. So now I have a
poorly designed production app on a really messed up development database.
The decision was made not to upgrade this particular database, but rather
create a new 12c RAC (GRID/ASM) database with the same name on the same
cluster. I'm not that experienced with GRID/ASM or RAC, so I'm not sure this
is possible. Am I mistaken in my belief that GRID/ASM wouldn't like two
databases with the same name even if they were different versions? If it is
possible, can someone point me to a white paper/website to help me work through
the process?
My team lead made the suggestion to create a RAC OneNode database on one of the
nodes in the cluster with the same dbname, do the necessary expdp/impdp, and
simply shutdown the 11g database. Then convert the OneNode to a Cluster
database. I can do that, but wouldn't that affect the installation option I
need to upgrade the other three RAC databases? What about installing Cluster
software in one OracaleHome and OneNode in a different OracleHome? I'm
thinking that would solve the issue of OneNode vs. Cluster installation, but
I'm not positive. And how would that affect converting it to a Cluster
database later on?
I'm sure I've left out details/information. I'm just not sure how to proceed
with this request. I have to upgrade GRID and the other three databases this
week. The "messed up" one can wait a week or two. Comments and suggestions
are welcome and thank you.
--
Sandy B.
--
Sandy B.
--
Sandy B.
--
Sandy B.
--
Niall Litchfield
Oracle DBA
http://www.orawin.info
--
Sandy B.