oracle專家理想中的DBA應該有的能力!(HR,DBA推薦閱讀)

oneweaklight發表於2011-04-11

Selecting a Proper DBA

Over the last few years I have been interviewed for, and have interviewed several dozen candidates for, Oracle-related positions. The positions ranged from entry-level developer to senior-level DBA. Many of the interviews were for DBA-level positions. In this period I learned that it is very difficult to hire, or be hired, as a DBA unless you know exactly who or what you are looking for when you use the title "DBA." This section will attempt to clear up the misconceptions about the Oracle DBA position, specify the levels within the DBA position, and givesome idea of how to interview and be interviewedfor Oracle DBA positions. To be a full-charge DBA, a candidate must be knowledgeable in all of these areas: .Design .Installation .Configuration management .Security .Monitoring and tuning .Backup and recovery .Troubleshooting .Vendor interface Desirable Personality Traits of a DBA Many times, managers concentrate on technical qualities and overlook personality. Virtually every category shown in the preceding list means a DBA will have to interface with other personnel, be they vendors, users, developers, or managers. This means the DBA should possess the following personal traits: .Self-confidence .Curiosity .Tenacity .Tact .Self-motivation .Detail-orientation Of all of these, a recent survey showed tenacity to be the most important. Why are these traits important? I have had several subordinates who lacked self-confidence; they constantly asked my opinion on every decision, major or minor, and showed no initiative.As a novice DBA under a full-charge DBA, this may be all right, but if the person is the full-charge DBA, then who is he or she going to depend on to helpmake decisions if he or she has no self-confidence? Interview questions, therefore, should include problems confronted and how they were solved. The answers should demonstrate self-confidence. One thing to remember is that not knowing an answer is not bad, but not to know where to find an answer is. The Oracle database system is constantly changing. Not all of these changes are documented. Therefore, curiosity is a requirement to be a good DBA. If DBAs aren't curious, they are passive, and wait for things to be told them. A curious DBA will install the latest version and immediately begin searching out the differences and improvements and how they can be applied to make his or her job better (read easier). Curious DBAs will have multiple reference publications they purchased with their own money and will have read them. One of my interview questions involveswhat references the candidate has and uses. Needless to say, if he or she responds by citing only the documentation set, and he or she hasn't even read that, then that candidate's stock loses value rapidly. Curiositywill also drive qualified DBAs to understand the Oracle data dictionary and any utilities or packages provided by Oracle. Many of my interview questions deal with these Oracle internals. Lack of knowledge about the data dictionary tables and views and the Oracleprovided utilities and packages is unforgivable in a full-charge DBA. Troubleshooting requires a bulldog-like tenacity, getting a hold and not letting go until the problem is solved. Many DBAs will give up on a problem that would have been solved with the next solution they tried. As a sysop for the CompuServe ORAUSER forum, I see questions daily that could have been solved by the people asking them, if they were tenacious and curious. I use troubleshooting questions from my own experience and from those of others from the DBAPipeline on the and the metalink.oracle.comsupport forums. A self-starting employee is important for any position, doubly so for a DBA. A DBA must be able to wade in and make things happen, not just wait for things to happen. Self-starting DBAs obtain or develop their own scripts to monitor such items as table sizes, tablespace usage, SGA usage?in short, all of the items that can get them in trouble if ignored. Interview questions dealing with level of experience in PL/SQL, SQL, and SQL*Plus will show how many scripts the DBA candidate has developed. Some operations in PL/SQL and SQL*Plus are generally only used by DBAs, so questions concerning specific techniques will expose those who have written their own scripts and those who haven't. Dealing with developers and managers, not to mention users, requires tact. A tactless DBA will make nothing but enemies for your department. Tact has been called the ability to tell someone to go toHades and have them anxious to make the trip. Many times, developers, managers, and users will make TEAMFLY Team-Fly? unreasonable requests; the DBA must have tact to field and deflect these requests without burning bridges. How a person acts during the interview process will show his or her level of tact. The final trait, being detail-oriented, is very important. DBAs who are detail-oriented don't have to be told to cross-check details. It also means they actively document quirks in the installation "just in case." The indications of a detail-oriented person are such things as bringing a Daytimer or scheduler to the interview, showing up ahead of time, and asking questions that indicate the candidate has researched the company he or she is interviewing with. This detail orientation will show up in the candidate's knowledge of the Oracle internals and an understanding of the relationships between the views, tables, and dynamic performance tables. Usually, a detail-oriented person will take the time to research the database on his or her own. Knowledge Required of a DBA A good DBA candidate will know all of the areas discussed in the preceding subsection, "Selecting a Proper DBA." DBAs must be familiar with design so that when new tables or indexes are proposed by designers they will know how they should fit into the general schema. Knowledge of a modeling tool such as Designer2000 or ERWin (Platinum Technologies) is a requirement. DBAs should be able to read an ERD diagram with one eye closed, and be able to fight their way through a UML diagram. The DBA must be familiar with installation and update on the platform that your system is running against. Each platform has its own quirks and idiosyncrasies. A DBA experienced on Windows NT will have difficulty performing an installation on UNIX or DECVMS. Updates can wreak havoc with production machines if they are done incorrectly. DBA candidates should be able to answer specific questions concerning installation and upgrade of Oracle systems on your platform. During the interview process, they should exhibit the curiosity to ask about your platform and any modifications to the standard installation that exist upon it. Configuration management involves database sizing, file placement, and specification of storage media. A full-charge DBA will be familiar with system topics such as RAID levels, disk sharing, disk shadowing, solid state disks, optical storage, and their application to the Oracle database environment. On UNIX, they should also be familiar with the cost and benefits associated with use of raw devices and when raw device usage is mandatory. Understanding Oracle security options is vital to the DBA job. A demonstrated knowledge of systemand object-level privileges, roles, and profiles is required for any DBA. Understanding how the operating system security options interface with the Oracle options is also important. Additional requirements such as use of Secure Oracle and implementation of SQLNET are also considerations. One of the critical aspects of the DBA's job is the monitoring and tuning of the database and any applications. Monitoring and tuning requires a detailed understanding of the Oracle data dictionary, the tkprof, and plan utilities, as well as an undestanding of how both the cost-based and rule-based optimizers function. Detailed understanding of what can and can't be done via indexing, use of hints, and SQL statement tuning is vital to a DBA. A DBA candidateshould demonstrate knowledge of the following: ?DBA_ views, ALL_ views, and USER_ views ?SYS-owned "$" tables ?dynamic performance tables (V$) All of these are a part of the Oracle data dictionary.In addition, the DBA candidate should have knowledge of the DBMS_* series of packages and how they can be used to facilitate tuning and script development, and the UTL*.SQL series of utility scripts and their usage in tuning and monitoring. A DBA candidate must understand all of the backup and recovery options. Use of the import and export utilities and of cold and hot backups are all vital topics that a DBA must understand. Answers to interview questions concerning types of database backups used and how the utilities can be implemented must show level of knowledge in this area. Additional topics tocover in this phase of the interview are recovery scenarios involving partial recovery at the table, tablespace, and database levels. Troubleshooting is a binary ability. Usually people will either have the knack or they won't. Troubleshooting requires an analytical approach, where the problem is laid out in discrete parts and each is attacked in a methodological fashion until the problem is solved.Troubleshooting also involves being unafraid to admit when you don't know something but having the tenacity to say, "I can look it up." Interview questions on troubleshooting must come from real life and should involve multiple steps and critical thinking to solve. To test their troubleshooting ability, candidates should be asked the most difficult problem they have encountered and how they solved it. A final bit of knowledge required of a DBA is the ability to communicate clearly, either orally or via written materials. Since a major portion of a DBA job will involve interaction with others on multiple levels within a company environment, DBAs must be able to speak, think, and write clearly and concisely. A review of their resumes with particular attention to any publishing credits will help to determine their abilities in this regard. Presentations at user groups, local or national, magazine articles or articles in local user group publications all show the ability to communicate. At a professional level, look for experience writing documentation or procedures. Most candidates with advanced degrees such as a master's or Ph.D. will have to have written and communicated to gain that level of education. Ask them to bring their dissertations or examples of their writing to the interview. Candidates should be expected to bring examples of this type of experience to the interview. The ability to speak clearly, to take and give instructions, and to understand complaints is vital. As technically qualified as a candidate may be, if he or she cannot communicate, he or she will not succeed. What Level of DBA Do You Need? DBAs range from DBBS level (database baby sitters) to full-charge DBAs. What level do you need? If you place a full-charge, fire-breathing DBA in a job where all heor she has to do is monitor an older version of Oracle andensure backups are taken, the DBA will soon tire ofthe job and leave?not to mention that his or her salary requirements will be significantly higher than for more junior people. On the other hand, if you hire a dyed-in-the-wool, don't-want-to-grow DBBS for a position where initiative, drive, tenacity, and troubleshooting skills are critical, you are asking for trouble. Be sure that you get the right candidate for the job. I would rather hire a technically inexperienced DBA who showed all of the personality traits discussed earlier than a DBBS who could rewrite Oracle?if someone told him or her to, that is. A database baby -sitter usually has a good-lookingresume that is full of projects and jobs involving Oracle. However, most of these jobs will have involved third-party applications that were preinstalled andonly required monitoring. If they can't answer in-depthquestions concerning the DBA_ views or the V$ tables, chances are they are DBBS- rather than DBA-level candidates. Another key indicator is a lack of knowledge about the Oracle utilities, such as import, export, and the tuning tools tkprof and explain plan. A final indicator is lack of knowledge concerning the DBA task-related DBMS_* packages. If all you need is someone to monitor a third-partydatabase application via a preconfigured monitoring tool, and to take action when the tool tells him or her after a problem has happened, then hire a DBBS. Otherwise, you will waste a DBA and no one will be happy if you get an overqualified person into a lowlevel job. If you do need a full-charge DBA, don't hire a DBBSunless he or she shows the curiosity and tenacity to use deep-end learning to pull him- or herself up tothe level of a full DBA. Deep-end learning is the analogy for throwing someone into the deep end of the pool to teach him or her to swim. Usually, there won't be time to send such a person to the multitude of classes required to give him or her full knowledge, so he or she will have to learn on the fly. Get the person involved with the Oracle forums and user groups, and John Wiley & Sons-Oracle Administration and Management purchase whatever references he or she requires. Isuggest a full paper copy of the Oracle manuals that is the DBA's alone. An online reference such as the Oracle Administrator product from RevealNet is also a good idea, as it will provide battle-tested solutionsto many problems. The Oracle documentation on CDROM makes a very convenient and portable way to carry the entire document set, as long as the DBA has a laptop. But, at least to me, nothing replaces a paper manual for ease of use (besides, you can use it even during a power outage?by candlelight!). Developing Questions for Interviews Interview questions should be diligently researched, and the expected answers listed. Where open-ended questions are used, the interviewer should have the level of knowledge required to judge the answers' correctness. The questions should be broken into categories, and each should be assigned a point value based on either a scale from, say, 0?, or according to difficulty. At the conclusion of the interview, technical ability evaluation should be based on the results from these points. Your interview questions should be reviewed by technically competent personnel for accuracy and applicability. Some sample interview questions are included in the downloads for this book at , in the books section, under this title, in Acrobat Reader format. Prequalification of Candidates In the past, candidates had two sources for Oracle knowledge: experience and/or Oracle Corporation training classes. Experience speaks for itself and can be judged as to depth and level. Training was only as good as what the candidate put into it. What I mean by this is that the candidates could either gain much from Oracle training, if they took with them to class the will to learn and curiosity, or they could take nothing away from the class, if they practiced passive learning. Since Oracle training is not graded, everyone receives masters certification regardless of participation. Now, many vendors offer Oracle classes. Indeed, with the plethora of classes available, it is difficult, if not impossible, to judge the quality of training a candidate may have received. One item that will assist hiring managers is the Oracle Certification Exams offered by Sylvan Prometric Learning Systems (the Oracle Certified Professional, OCP, program). These exams test candidates' knowledge in all areas of the DBA skill set. The tests were created by battle-tested DBAs and Oracle Corporation. To pass, a candidate will, in almost all cases, have to have had actual experience as an Oracle DBA and knowledge from multiple Oracle references. While obtaining an Oracle certification from these exams is no guarantee thata candidate is fully qualified, it can be used as an acid test to separate the wheat from the chaff. Always check a candidate's references. Speak to previous employers if possible, and find out about a candidate's past work history. Many people will interview wonderfully but can't function in the job. Appearance A candidate who doesn't take the timeput the right foot forward by presenting a proper appearance probably doesn't have the wherewithal to perform adequately in the job. Clean, appropriate clothing and proper grooming show that the candidate is willing to make the effort to please the employer. Candidates who are sloppy in appearance and manner will bring this to the job and to their interactions with other parts of the company. There is no magic formula for determining whethera candidate can perform adequately; nor is there any way to ensure an employer will always properly evaluate a candidate's abilities. However, if proper preparation is done by both the employer and candidate, then successful hiring or acquisition of a proper position can be less a matter of chance.

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25067344/viewspace-1048516/,如需轉載,請註明出處,否則將追究法律責任。

相關文章