Monday, August 4, 2008

Oracle on Linux/Unix questionsDatabase Interview FAQs

  1. How many memory layers are in the shared pool?
  2. How do you find out from the RMAN catalog if a particular archive log has been backed-up?
  3. How can you tell how much space is left on a given file system and how much space each of the file system's subdirectories take-up?
  4. Define the SGA and how you would configure SGA for a mid-sized OLTP environment? What is involved in tuning the SGA?
  5. What is the cache hit ratio, what impact does it have on performance of an Oracle database and what is involved in tuning it?
  6. Other than making use of the statspack utility, what would you check when you are monitoring or running a health check on an Oracle 8i or 9i database?
  7. How do you tell what your machine name is and what is its IP address?
  8. How would you go about verifying the network name that the local_listener is currently using?
  9. You have 4 instances running on the same UNIX box. How can you determine which shared memory and semaphores are associated with which instance?
  10. What view(s) do you use to associate a user's SQLPLUS session with his o/s process?
  11. What is the recommended interval at which to run statspack snapshots, and why?
  12. What spfile/init.ora file parameter exists to force the CBO to make the execution path of a given statement use an index, even if the index scan may appear to be calculated as more costly?
  13. Assuming today is Monday, how would you use the DBMS_JOB package to schedule the execution of a given procedure owned by SCOTT to start Wednesday at 9AM and to run subsequently every other day at 2AM.
  14. How would you edit your CRONTAB to schedule the running of /test/test.sh to run every other day at 2PM?
  15. What do the 9i dbms_standard.sql_txt() and dbms_standard.sql_text() procedures do?
  16. In which dictionary table or view would you look to determine at which time a snapshot or MVIEW last successfully refreshed?
  17. How would you best determine why your MVIEW couldn't FAST REFRESH?
  18. How does propagation differ between Advanced Replication and Snapshot Replication (read-only)?
  19. Which dictionary view(s) would you first look at to understand or get a high-level idea of a given Advanced Replication environment?
  20. How would you begin to troubleshoot an ORA-3113 error?
  21. Which dictionary tables and/or views would you look at to diagnose a locking issue?
  22. An automatic job running via DBMS_JOB has failed. Knowing only that "it's failed", how do you approach troubleshooting this issue?
  23. How would you extract DDL of a table without using a GUI tool?
  24. You're getting high "busy buffer waits" - how can you find what's causing it?
  25. What query tells you how much space a tablespace named "test" is taking up, and how much space is remaining?
  26. Database is hung. Old and new user connections alike hang on impact. What do you do? Your SYS SQLPLUS session IS able to connect.
  27. Database crashes. Corruption is found scattered among the file system neither of your doing nor of Oracle's. What database recovery options are available? Database is in archive log mode.
  28. Illustrate how to determine the amount of physical CPUs a Unix Box possesses (LINUX and/or Solaris).
  29. How do you increase the OS limitation for open files (LINUX and/or Solaris)?
  30. Provide an example of a shell script which logs into SQLPLUS as SYS, determines the current date, changes the date format to include minutes & seconds, issues a drop table command, displays the date again, and finally exits.
  31. Explain how you would restore a database using RMAN to Point in Time?
  32. How does Oracle guarantee data integrity of data changes?
  33. Which environment variables are absolutely critical in order to run the OUI?
  34. What SQL query from v$session can you run to show how many sessions are logged in as a particular user account?
  35. Why does Oracle not permit the use of PCTUSED with indexes?
  36. What would you use to improve performance on an insert statement that places millions of rows into that table?
  37. What would you do with an "in-doubt" distributed transaction?
  38. What are the commands you'd issue to show the explain plan for "select * from dual"?
  39. In what script is "snap$" created? In what script is the "scott/tiger" schema created?
  40. If you're unsure in which script a sys or system-owned object is created, but you know it's in a script from a specific directory, what UNIX command from that directory structure can you run to find your answer?
  41. How would you configure your networking files to connect to a database by the name of DSS which resides in domain icallinc.com?
  42. You create a private database link and upon connection, fails with: ORA-2085: connects to . What is the problem? How would you go about resolving this error?
  43. I have my backup RMAN script called "backup_rman.sh". I am on the target database. My catalog username/password is rman/rman. My catalog db is called rman. How would you run this shell script from the O/S such that it would run as a background process?
  44. Explain the concept of the DUAL table.
  45. What are the ways tablespaces can be managed and how do they differ?
  46. From the database level, how can you tell under which time zone a database is operating?
  47. What's the benefit of "dbms_stats" over "analyze"?
  48. Typically, where is the conventional directory structure chosen for Oracle binaries to reside?
  49. You have found corruption in a tablespace that contains static tables that are part of a database that is in NOARCHIVE log mode. How would you restore the tablespace without losing new data in the other tablespaces?
  50. How do you recover a datafile that has not been physically been backed up since its creation and has been deleted. Provide syntax example.