This blog post is a quick summary of How to become a DBA course – A 100% free course which speaks about everything you need to become an Oracle DBA.
Learning SQL is just not enough to become an Oracle DBA. You need much more skills and learn other things to crack your first job interview. In this blog post, I would like to talk about 15 things you must know as a Junior (Fresher) DBA even before you would like to start your career as database administrator.
1. Linux Administration
98% of the servers in all the MNCs out there use Unix or Linux operating system (or some flavor of Unix of Linux OS). It is obvious that the Oracle database you will be working on would also be hosted on some Linux server. And, not having good hands-on knowledge on Linux will be one of the biggest road blocks in your path to become a DBA.
We have Linux Administration course that covers all the aspects of Linux commands right from the Linux basics and gradually providing an overview of shell scripting in Linux. The course further advances by equipping you with Linux networking.
Now that you know the importance of Linux operating system, the next big question is how to practice it. In order to learn Linux, you need to install it on your laptop (or desktop) to master it. In order to do so, you must install virtualization software like VMWare or Oracle Virtual Box.
A virtualization software allows you to run another operating system on top of your Windows system. This will allow you to run both Windows and Linux operating system on one PC.
I have published Foundation for DBA course, a 100% free course (I mean it ;), which will help you setup your own Linux machine. Go do it now!
3. Oracle SQL
SQL is the standard language to read and write data from Oracle database. To be very frank, SQL is the standard language to read and write data from any database. The syntax might be different for different databases but overall SQL query structure will be same.
So why do you need to learn SQL in order to become a database administrator. Good question! The thing is when you work with application team, they might need your help in order to write more efficient queries and quick response time.
As a DBA, you must be very good at SQL language (not because application team will approach you 😉 because you will be the owner of the database server. You will be responsible for analyzing lot SQL queries which are run inside the database.
4. Database Normalization
Database normalization is a technique to organize data in the form of tables (rows and columns) or most appropriately relational tables (coz we work on RDBMS). This involves taking raw data and convert it into meaningful tables. The process involves you to push data from Three Normal Forms (there are more but three is mostly enough).
One of the beauty of database normalization is, you become familiar with unorganized data. You will be able to identify data dependency, column dependency, table dependency and also remove unnecessary columns or rows.
Pro Tip: You must an expert when it comes to database normalization because it helps you to work with database architect in order to design table structures which are easy to query with less response time.
5. PL/SQL Overview
So the application or development team ran a PL/SQL code which has some issues, they will straight away contact DBA team. And! you cannot put blank face saying “I just love SQL and have no idea about PL/SQL” 🙂
Its a good idea to have an overview of PL/SQL language. No really in depth because it is used by Oracle developers to write programs. As a DBA, just having an understanding of how PL/SQL works and basic PL/SQL programs should be good enough.
6. Install & configure Oracle database
As a DBA, you are responsible for setting up databases on different servers. This includes performing operating system level pre-requisites, downloading proper database software version, installing oracle software, create database, configure network and much more.
Installing and configuring Oracle database is one of the primary jobs of a DBA.
7. Database Architecture
When I take any DBA interview, I always look for strong foundation in database architecture. Having a perfect understanding of Oracle database architecture will give mileage to your DBA career. It allows you to understand Oracle performance tuning concepts easily.
Do you want to master Oracle database administration? Come, join me and master Oracle database architecture along with real-time database administration course. You get to learn database administration within a month!
8. Plan your database creation
I know when you practice database creation in your lab machine, you fire DBACA and boom – database created. But its not the case in real time. You need to check many things even before you can think of firing DBCA to create database.
Check out my blog post on how to plan your database creation here.
9. Database startup/shutdown modes
If you are not yet a DBA, there are different stages database passes through when you start and shutdown the database. Each stage or phase has a significant use. For example, you put database in Mount mode to perform major administrative tasks.
When you perform database recovery, you will realize the importance of each database file and different database startup modes. Like, in order to take your database to no-mount stage, you need to have SPFILE. To take your database to Mount stage, you need control files and it goes on.
Its very important to know every details in which database starts and how database shutdown happens.
10. Database health checkup
With so many production databases in any given environment, its very critical to check database health. Whenever there is some error inside database, you troubleshoot the issue and then perform a quick database health checkup. This allows you to confirm that database is running fine and its ready to accept user connections.
Some of the database health checkup includes:
- Checking database alert log for ORA errors
- Checking database open mode and listener status
- Checking tablespace utilization
- Checking latest database backup
and few more tasks.
11. Capacity planning
A DBA must maintain adequate space in database tablespaces in order to have smooth functioning. All the tablespaces must be below threshold value and they all must be online (In case if no tablespace is put offline).
Check out one of my blog posts on Query to Check Tablespace Utilization.
I have also published one YouTube video on Tablespace Administration – How to work with Tablespaces in Real-Time?
12. User, profile & role management
Whenever application team adds new members in their team, they might reach out DBA to add new uses inside the database. A database user has permission to access the database server over a network and run queries inside the database.
Different database users have different permissions. For example, a reporting user will only have SELECT permissions on tables. Same way different users will have different access permissions over tables and other objects inside the database.
A DBA is responsible for creating new users, adding or modifying profiles, granting permissions, creating roles and assigning it to users, dropping users and lot of other user management tasks.
13. Database networking
Database networking is key to access database server from client machine. An application connects to database server over a network to access the database. Oracle listener runs on database server where all the client’s connections land first and then handed over to the database.
Database networking involves configuring listener, configuring TNS entries, checking remote database connectivity, registering database with the listener and making sure application is able to connect to the database.
14. Data export and import
One of the constant activities that are performed by DBA is export and import of data. In many projects, DBA has to perform exports from production database and import into the test or development databases. The activity frequency is generally weekly but in some projects, it is done daily as well.
There are different database utilities which are used to perform table/schema/entire database export and import. You even use RMAN refresh to perform entire database cloning or duplication.
15. Database backup & recovery
I cannot stress on how important database backup and recovery is. Understand this, if you are not able to recover a database after crash, then there is no point in being a DBA 😛
Database backups include logical backups and physical backups. The logical backups are nothing but backups of database objects which you take via Export Import or Data Pump utility. The physical backups include cold backup, hot backup and RMAN backups.
Database recovery is where a DBA must be very good at. There are 1000 of database crash scenarios but you do not have to learn all the scenario as you will not encounter all those in your job (until you are most unlucky guy :). You must know the recover concepts well so that in any type of crash, you are still able to bring up the database using backups you have.
All in all, in order for you to become a DBA, you must have proper hands on experience on all the 15 things mentioned above. You can even checkout my Oracle DBA for Beginners course where you learn to become a database administrator within a month !!