Deployment - Best Practices [message #404570] |
Fri, 22 May 2009 05:25 |
eigeneachse
Messages: 37 Registered: July 2008
|
Member |
|
|
Hi @ all,
with this thread i want to discuss possible solutions for an pl/sql, sql (views, ddl, ..) deployment. We have the situation that we have an development database where various scripts are generated and after an successfull test on the db, they were saved in an shared folder with an specific notation. Now when we want to update one of our customers database ( the corresponding client app is updated too ) we will execute every script gernerated before the last deployment, on the target db. This process consumes, depending on the script count, a lot of time.
Currently we are deploying our scripts with toad.
Are there any other living solutions that provide less action? How do you deploy your sql scripts? Are there any tools which can do such things? Logging would be a nice feature.
thanks in advance for all your comments.
regards
eigeneachse
|
|
|
|
Re: Deployment - Best Practices [message #404575 is a reply to message #404573] |
Fri, 22 May 2009 05:54 |
eigeneachse
Messages: 37 Registered: July 2008
|
Member |
|
|
Mahesh Rajendran wrote on Fri, 22 May 2009 12:43 |
I don't get what you mean by "execute every script generated before last deployment."
|
Hi Mahesh,
ok i try to explain it more detailed.
We are developing an Application with an underlying db. The db provides some packages, procedures etc with the business logic. Now we deploy an existing state of these packages to our customer. The action is, that all sql files between the last deploy and the actual deploy needs to be executed in the target db. The data is only on the target machine an may be modified by the scripts. The main action is to update the packages, views, procedures.
I totally agree with you when you say sqlplus with spool could do this job, but i am searching for an more elegant solution.
I hope the problem ( it is really not a problem more than an search for an optimizatzion ) becomes more clear for you.
regards
eigeneachse
[Updated on: Fri, 22 May 2009 05:58] Report message to a moderator
|
|
|
|
Re: Deployment - Best Practices [message #404582 is a reply to message #404577] |
Fri, 22 May 2009 06:45 |
ThomasG
Messages: 3212 Registered: April 2005 Location: Heilbronn, Germany
|
Senior Member |
|
|
One thing that I have done on a few occasions is to put "version" variables in the package headers.
That way a SQL script can check those variables, and then decide which install scripts need to be run.
|
|
|
Re: Deployment - Best Practices [message #404595 is a reply to message #404582] |
Fri, 22 May 2009 07:25 |
eigeneachse
Messages: 37 Registered: July 2008
|
Member |
|
|
ThomasG wrote on Fri, 22 May 2009 13:45 |
That way a SQL script can check those variables, and then decide which install scripts need to be run.
|
Hi Thomas,
your are right. With this you would know which scripts have been installed. alternatively i can imagine to have an tool which will store the update history in the db itself.
Mahesh Rajendran |
You still need to define "elegant solution".
|
For me an elegant solution is a on click solution or in other words i want to drag my scripts into a special window an say "Start" and thats all.
Please dont understand me wrong. i am not critizising any way to deploy or someting like that. i am only searching for the best and easyest solution to do that. i'd just want to ask because maybe others do something i never had thougt about.
regards eigeneachse
|
|
|