How difficult is it to manage an Oracle database?

I have been offered a switch in positions at work. Basically to go from everything-Windows to Unix, specifically AIX 5.3. The databases are all Oracle, and i am used to managing MSSQL with point and click. What can you tell me about the differences? Would this be something that can be learned on the fly or would a classroom training be helpful?

Oh - definitely the classroom training. Most of oracle is command-line driven, only the installer, AFAIK, is graphical (and it drives us sysadmins crazy).

Oracle is a Peterbilt compared to MSSQL.

On the other hand, a six-figure salary can be yours if you get good. Senior people are hard to find - the complexity of the product is high but the rewards can be, too. Many companies are locked into the product by either third-party software requirements or by the difficulty of conversion.

Can you do a 20Terabyte database on MSSQL? My last position had one. Even backing the thing up was an advanced process at that size.

Disclaimer: I am a unix system administrator - not a DBA. I, however, have worked with Oracle DBA’s for the past 15 years.

Oracle can be used to handle the order database for a 50 person company. It can also handle the biggest of the big databases in the world spanning terabytes and whole continents. I am an Oracle developer/analyst and I do some DBA type stuff for a very large company. You definitely want the classroom training. Learning the commands to do things isn’t that difficult. You can even look them up in a book or on the web. That isn’t really all that relevant. Big databases need someone that understands database theory at an academic level. I have no way to judge where you stand on that but if you are largely self-taught through prior database work, it will probably be lacking. The is both a very serious science and an art to large databases. Designing or administering one poorly can suck the lifeblood out of a company as systems become slow, reports become difficult to develop, fail-safe transactions aren’t, and expensive consultants get pulled in to put patch after patch on something that was never handled well. You need to know things like the rules and guidelines for table normalization, indexes, transaction rollbacks, networking, and disaster recovery strategies in the event the company gets hit by a missile one day.

I is hard to know what you mean by learning to be a DBA. The job encompasses people who run a computer in a mom and pop shop to superstars making $500,000 a year running a huge configuration or fixing problems for companies that screwed it up.

I’m not a DBA (I’m a developer), but I’ve worked with various databases and I think you’ll really like Oracle. Definitely take a class, we get stories from some shops of home-schooled DBAs who do really ridiculous things. But Oracle is not difficult to learn or use. Good luck!

My background with DBs is almost exclusively MSSQL. I’ve mostly used it as a programmer, but in a small shop, DB programmer = DBA.

I had to use Oracle for a while last summer. Ugh. The tools were horrible compared to MSSQL, the commands arcane, everything took about twice as long to do in Oracle over SQL Server. Sure, maybe it’s better at 20 Terabyte DBs (although I question that - I’ve seen SQL used for very large DBs before and it did fine), but as far as I’m concerned it is a wreck of a product.

On the other hand, people do seem to pay a lot for Oracle DBAs. I put that in the category of “hazard pay.” :smiley:

No.

Is there just the one database? How big/complicated is it? How many tables with how many rows? Any triggers? If the application warrants using an Oracle database then managing it (all the stuff Shag described plus security and user maintenance) will be a full time job. To put it not entirely seriously, if it’s not a full time job then you don’t need an Oracle database.

Would you be expected to design the tables and decide the indexing or is that done by the application developers? As DBA you will be resposible for optimising the database (memory allocation, tablespace/disk usage, a load of usage analysis, setting optimiser rules, blah) which is an ongoing process. And this requires a pretty good understanding of how the database works. I don’t know if MySQL even has any of these issues/options.

Also if you’re used to a point and click front end the switch to a Unix command line will be a bit of a shock. There are GUI DBA Oracle tools and our DBAs swear at them all the time.

IANADBA but I have worked with Oracle databases for ten years.

It is possible to learn to Oracle DBA on the fly, but far from recommended (and you will be reading Oracle DBA books in all your spare time if you try).
What are the requirements for the database / databases you will be responsible for?

If 24 hour 365 day/year up time is required, that will make your life difficult iof inexperienced with Oracle. If you are just controling a development database selft learning on the job may well be possible.
Also are you going to develop the database from scratch, or are you taking over some existing database installation? Will you be using Oracle 10 or an earlier version of Oracle?
Oracle 10 added many interface changes that make the job of DBA’ing seem easier, and certainly make setting up a database easier, but when it comes down to the sort of work that a DBA is really being payed for the interface doesn’t help much and you will need to know all the command line tricks an Oracle 8 database would have required.

Ah, Heck. If there’s one thing that I’ve learned from our DBAs, there’s nothing that more hardware can’t fix.

:wink:

Arcane? You haven’t worked much with unix, then. We invented “arcane”.

We spell it “arcn”, though.

:smiley:

No kidding.

One of my proudest accomplishments is that although I have 15+ years in the business and have worked on many different OSs and on arcane bits of code, I have consistently and successfully avoided learning VI. You’ll pry my GUI based editor from my cold, dead hands before I will learn that obtuse piece o’ crap.

They don’t like OEM (Oracle Enterprise Manager) either, huh? :smiley:

We have swarms of people who do nothing but tune our thousands of databases - that’s definitely a career that needs intimate knowledge of every nuance of database management theory, as well as networking protocols and hardware design. But then, these are the gurus that you call when something’s not working, and they look at it and tell you that a network switch is misbehaving in Des Moines, there’s a poorly-written select statement in someone’s schema, or whatever. And you bounce the switch, or point the select statement at the right spot, and all’s suddenly perfect again.

Athena, I just want to point out that this is not the appropriate forum for religious debate. The last thing we need is a flamefest between the followers of the One True Editor and the heretical Gooeyites.

Are you going to be a junior DBA or The Man?

Re: the OP, I want to echo the many other comments requesting more information about what the job will entail. If you’re going to be a junior Oracle DBA assisting other more senior DBAs then you may very well be able to pick it up as you go. If you’re going to be primary support for an important production database, then you will definitely need training before you get thrown into the deep end.

I have been an Oracle DBA for about 18 years now, and I’ve seen a lot of people get overwhelmed by the complexity because they didn’t have adequate preparation. I’ve also seen others who were fine because they had a supportive environment and had time to grow into the position. YMMV.

The person offering me this position is my old manager (same company though). And he isn’t a DBA per se, but he is the man in charge of it. The only reason it was offered to me is because he remembers how well and quickly i picked up all the software and protocols and everything else. If he gets hit by a bus, that’s it. So he is making the offer to me to start under him. Here is what i remember from our quick chat the other day.

The databases total around 5TB currently. He monitors the growth of the tables each morning and increases them accordingly, looking for spikes in growth. He already has a backup procedure that goes to an IBM SAN, which, in turn is replicated across campus to another IBM SAN of the exact same config. The Oracle was all new to him when it was implemented by McKesson back in 2004. He learned Oracle from a book, some of it he learned from consultants, and some from DBAs at McKesson.

I don’t know how many tables, rows, triggers, etc exist. He didn’t mention to me anything about optimizing memory or speed. The database was basically “premade” by the folks at McKesson when these specific applications were implemented here. As far as i know, he doesn’t do any “programming” because i doubt he is smart enough for that.

When it comes to taking a class, many of yuns have said that it would definately be in my best interests. Here’s where another problem exists. I looked briefly online for Oracle classes and i only found Oracle 10 being offered. The version here is 8i. Knowing McKesson, they won’t do any update/conversion until they can verify that their stuff works with Oracle 10–which could take years. Literally, Oracle might develop version 15 by the time McKesson gives the ok for version 10. So would a class about 10 be beneficial for a company using 8?

:rolleyes: :smiley: :stuck_out_tongue: :wink:

I just googled for Oracle 8 training and it returned a lot of e-learning courses. Whether they’re better than a book, I can’t say, never having done one. If you scroll through the Google results long enough I bet you’ll find some in-person courses.

Since no-one else has answered this I’ll chip in before this slips off the last page.

I’ve had a quick chat with one of our DBAs and he says no, 10g is too different, it’s fully GUI for a start. A 9i course might be of some use if you can find one (Oracle no longer do them) although there are fundamental changes between 8 and 9 too (for example no more rollback segments in 9).

Also 8i is effectively obsolete, you can’t depend on Oracle for any support. And to get to 10 you have to upgrade though 9. This is something you really ought to be doing.

Have we scared you out of it yet?