SThere are, even on superficial glance, many questions and flaws
- Why you don't use the EM provided backup
- Why you use cron? Cron is obsolete
- The script isn't written in Perl, so doesn't work on Windows
- The script doesn't even work on Solaris, as it hardcodes ORATAB to /etc/oratab. In Solaris, the location is not /etc/oratab
- The script connect and disconnects / as SYSDBA in the dosql routine, even when SYSDBA privilege is not required. Login is expensive and connecting as SYSDBA is audited
- I don't see any option to set a proper TAG or format. IMO the date should be in the TAG
And probably etc, etc, etc, This code just before oraenv is called, seems to me like a copy of dbhome.
The script uses obsolete technology, I didn't see any error trapping, it doesn't work on all OS-es, it doesn't even work on all flavors of Unix (Linux is just a flavor of Unix).\
It seems to rely on at least one non-Oracle library, probably a MML
So it would need to be reworked to be used outside your organisation.
Senior Oracle DBA
I would agree if the script is created by Oracle itself, but if written on 1 site, it has to be as portable as all other (developer) code that is written on 1 site, and that is : not portable. It's code of that site, and it's written because the vendor failed to do exactly that.
Windows is obsolete (as server software), and crontab still has no replacement on OS level. But, if it has, please tell us what it is.
Point #1 indeed is a valid point against scripting, but the others are fixable and/or not really an issue.
I can go into Oracle code, and find similar issues, so would that mean we stop using Oracle scripts ?
Ruslan D. wrote:
Published script that we use in our company to run our RMAN backups.
Many people cannot or will not expose their corporate networks (or even their personal computers) to sites like that. If you want us to look at code, post the code in your message. It's code. It's text. You don't have to use a screen shot of a GUI app to see it.
Feedback is highly appreciated! Any functionality/code improvements would be highly appreciated.
If you spot a bug - please submit it here https://github.com/Tagar/rman/issues so others can be benfit that too.
Basic rule of internet etiquette: Post to the forum, read from the forum
Anything else - let's discuss it here.
No, we don't divide it up. We discuss it all here, or we don't discuss it.
Or are you simply trying to drive traffic to github?
Script is not a bad start. But if you run the depersonalize.sh using perl why not write the code in perl and make it platform independent ? I have a perl script that is capable of running backups on any platform for any database version. Need this since I have 2200 databases to backup on 4 platforms. And no, I cannot upload it to this forum - sorry.