Whats is the main characteristics/skills of a DBA? [part Osborne]

Another video post!
Almost 2 years ago I spent some time thinking about “Whats is the main characteristics/skills to be a DBA?”..
I wrote 2 posts about:
Whats is the main characteristics/skills of a DBA? [part 1]
Whats is the main characteristics/skills of a DBA? [part 2]

I found a great video with Kerry Osborne talking about what he searches in a guy (or girl) to be a great professional with Oracle… Very interesting:

I’d like to paraphrase Kerry to make my own ‘best moments summary’:
“A little bit of lazyness, a good cue and a lot of calm underpresure and keeping optmimistic.”

Have a nice week!

Whats is the main characteristics/skills of a DBA? [part 2]

This is a second round about this post.

In the first part, I listed the top 8 “Personal Characteristics” of a DBA, to me and 7 other authors. Now, let’s do the same about the “Technical Characteristics”, or just “Skills”…

DBA

As I said in the first part of, it’s not an usual subject, so, identify and select these skills was not an easy task. Also as in the first part, I made my own list before the search. And I believe in something like that…

# Top 8 DBA Skills:
(By Matheus)

1) Database Architecture

Components, pools, events, basic flow and structure, reports, logs, traces, views, SQL concepts… In a nutshell, how to use a Database. 

2) Logic and some Programming Skills

Basic programming skills/logic is needed. Programming best practices, techniques and logics base in, at least, 2 different paradigms.

3) Infrastructure Knowledge

Components that surround or are basic services to DB : Networks, Computer Architecture / processors , Storage , Application Server operation , etc.

4) Data Structs and Database Design/Modeling

After all, it’s what database means: understand about structure of objects, partitioning, indexes, statistics, transactions, data modeling, manipulation tools and data migration.

5) Solid SQL and PL/SQL

As a base of data, you must know where data is, how to get it, how to manipulate it efficiently and aligned with good development practices. Isn’t it?

6) Database and SQL Performance Tuning

Wide and the hardest to archive in my opinion. For archive excellence on it, you’ll need all items above. Database operating knowledge, their pools, optimizers, available resources, development/programming and SQL to find gaps in the code, and infrastructure knowledge to understand possible external interference in the functioning of the DB.

7) Security and Oracle Support Interacting

Knowing good patching management practices, how to apply them, techniques and strategies for patch, upgrade and migration, openness and interaction on SRs, navigation Metalink, seraching and understanding of bugs, backup/recovery (DRs) management, access and possible security gaps in infrastructure, systems, or credentials.

8) Knows the Environment / Applications

To know the main applications of the company where you are, it implementation language, some business rules, the environmental behavior, most normal events, peak hours, the operation of legacy applications, people, company practices and their major gaps is essential.

What do you think about my list?
Here is the lists of 5 important references I found, just to have in mind:

# Burleson
– System analisys and design skills
– Database design skills
– Physical disk storage skills
– Databa Secutiry Skills
– Backup and Recovery Skills
– Change Control Management Skills
(http://www.dba-oracle.com/oracle_tips_dba_job_skills.htm)

# Craig Mullins
– Data modeling and database design
– Metadata managements and respository usage
– Database schema creationg and management
– Backup and recovery
– Ensuring data integrity
– Performance management and tunning
– Ensuring availability
– SQL code reviews and walk-thru
– Procedural skills
– Data security
– Capacity planning
– General database management
– General system managements and networking skills
– ERP and business knowledge
– Extensible datatype administration
– Web-specific technology expertise
– Storage management technics
(http://www.craigsmullins.com/dbta_085.htm)

# Mark Spenik and Orryn Sledge
– Knowledge of Structured Query Language (SQL)
– Sound database design
– General understanding of network architectures (for example, Client/Server, Internet/Intranet, Enterprise)
– Knowledge about the database itself
(http://www.developer.com/db/article.php/718491/What-Is-a-Database-Administrator.htm)

# Oracle
– Installing and upgrading the Oracle server and application tools
– Allocating system storage and planning future storage requirements for the database system
– Creating primary database storage structures (tablespaces) after application developers have designed an application
– Creating primary objects (tables, views, indexes) once application developers have designed an application
– Modifying the database structure, as necessary, from information given by application developers
– Enrolling users and maintaining system security
– Ensuring compliance with your Oracle license agreement
– Controlling and monitoring user access to the database
– Monitoring and optimizing the performance of the database
– Planning for backup and recovery of database information
– Maintaining archived data on tape
– Backing up and restoring the database
– Contacting Oracle Corporation for technical support
(http://www.developer.com/db/article.php/718491/What-Is-a-Database-Administrator.htm)

# Wikipedia
– Communication
– Database theory
– Database design
– Technology knowledgements
– SQL & PL/SQL
– Computing architectures
– Operating Systems
(http://en.wikipedia.org/wiki/Database_administrator)

What do YOU think about it?

Liked this post?
Leave a comment and feel free to share it!

Unplug/Plug PDB between different Clusters

Everyone test, write and show how to move pluggable databases between containers (CBDs) in the same Cluster, but a little more than a few write/show about move pluggable databases between different clusters, with isolated storage. So, let’s do that:

OBS: Just to stay easy to understand, this post is about migration of a Pluggable Database (BACENDB) from a cluster named ORAGRID12C and a Container Database named INFRACDB to the Cluster CLBBGER12, into Container CDBBGER.
(Click on images to get it bigger)

1. Access the container INFRACDB (Cluster GRID12C) and List the PDBs: 1

2. Shutdown BACENDB:
2
(of course it does’n worked with a normal shutdown. I don’t know what I was thinking… haha) 3

3. Unplug BACENDB (PDB) to XML (must be done from Pluggable, as you see…) 4
4. Created an ACFS (180G) to use as “migration area” mounted on “/migration/” in ORAGRID12C cluster:
5

5. Copy Datafiles and Tempfiles for the “/migration” through ASMCMD cp 6

6. ACFS exported and mounted as NFS on destination (CLBBGER12): 7
8

7. Pluggable created (Plugged) on new Cluster (CDBBGER), using “MOVE” FILE_NAME_CONVERT, to send the files to diskgroup +DGCDBBGER:

9

7.1 How it looks like on alert.log?

10

7.2 How about the Datafiles?

11

7.3 Checking database by remote sqlplus:

13

8. Creating the services as needed:

12

9. Dropping Pluggable from INFRACDB:

14

That’s Okey? Of course there is a few other ways to copy the files from an infra to another, like scp rather than mount.nfs, RMAN Copy, or other possibilities…

By the way, one of the restrictions of pluggable migration is to use the same endian format. Buut it’s possible to use RMAN Convert Plataform and convert datafiles to a filesystem, isn’t?
So, I guess it’s not a necessary limitation. Must to test an write another post… haha

About the post, this link helped, but, again, don’t mention about “another” cluster/infra/storage.

Matheus.

Whats is the main characteristics/skills of a DBA? [part 1]

More than a half decade acting as DBA, I still frequently asking myself about what means being a DBA? What is needed for? Or, more precisely: How to achieve the excellence in my job?

Easy-Server-Manageability-In-Oracle-Data-Base-Administrator
Well, I spent the last nights thinking and searching for this subject in the web. You might suppose I found a few answers, right? Yes, of course I found. So, let’s understand and analyze it.

In the first place, let me share with you some pre-steps/conditions: Looking for don’t be 100% reactive and use, at least a little bit of, my gray matter, I decided the structure my own “list” before the search. Then, just in the moment to write, I realized that it’s not so easy to merge Personal Characteristics and Technical Skills. This way, I decided to slipt this analysis in these two topics. As a consequence, in two posts. 🙂

By the way, after this “research” and the results below, but before this post, I quickly read the ebook “How to Become an Exceptional DBA” (2nd edition), by Brad McGehee. I really recommend it. I liked and I suppose you will too.

Another thing to say is that the lists could be infinite. So, I decided to keep my lists just in the “Top 8”. Here it goes what a listed before the search:

DBA’s most important characteristics:
(by Matheus)

1) Passionate
The DBA must to love his job. Have “light in their eyes”, something like excitement about the future. This is the best way to keep motivated, enthusiastic himself.

2) Committed
To have confidence in DBA promises and deadlines is a key factor. The DBA must understand the importance of his job for the health of the IT systems and the business, assume his responsibilities be reliable about everything and everyone. Trustworthy question.

3) Willfull
Something like “be always available to get up at 3:00 AM to help someone with a problem that is not directly your business”. Also counts keep available to help anyone with “just a little SQL doubt”, “just a little query”, “just a little grant” or “just a little project”… You know, embrace any kind of problem and goes right to the solution without any credits/glory behind it. Anyway, it’s just your job. Attitude and proactivity are a keywords too.

4) Innovator
Embraces the change and the challenges. The main difference between the creativity and innovation is that the second really make it happen. The DBA has to read, study, create but, the most important, implement new ideas, processes, tools. If it doesn’t work, it just try again and again. This is the evolution path. And the DBA has to pavement it.

5) Bookish / Like to Study
The DBA will be always a reference in the team. So, is his job to keep “fresh”, reading and having assertiveness answers for the developers, the business stakeholders, the or just the curiousness of anyone. It’s part of the “get confidence” process.

6) Ethics
Is not needed to say that DBA is always working with high critical data and buniness sensitive information. So, is not needed to spend more words to explain how is important this “characteristic”.

7) Communicative
DBA usually spend more time explaining, planning and justifying his actions that more properly doing the actions. Is a huge difference between a DBA and a Developer, in my point of view: The DBA spends hours thinking about a problem and understanding what is really happen, for correct with one or two lines of commands, on the other hand the Developer usually spends seconds or minutes to understand the problems and hours coding and testing the solution. Is not rare that the “most senior” DBA keeps in touch with “high hierarchies” to pass status report of crisis and “upswinged” problems. Make reports is another usual task. So, express verbally and write well is a potential difference between excellent and just “OK” DBAs, in my point of view.

8) Talented
No way out, the DBA must be talented to play well. Be a natural problem solver, detail oriented, realistic, patient, organized, assertive or good decision maker, keep calm under pressure, business minded, etc. Usually DBA is a experienced professional, so to have good mentoring skills and usually be ‘natural leaders’ are some decisive factors to. In summary, the DBA was ‘born to be wild’. Don’t you think like that?

OOOOOOOOK,
Let’s finally see what a found. Below all the authors, you will have the link where I read the topics.
I choose 5 international recognized personas and 2 brazilian bloggers, because I believe the key of success is to join experienced and recognized but have to look intern and valorize our goods. Also because I believe that, being Brazilian, they probably talk something specific or cultureless useful to me and other Brazilian readers… 🙂

# Bourleson
– Excellent comunication skills
– Formal education
– Real-world experience
– Knowledge of database theory
(http://www.dba-oracle.com/oracle_tips_dba_job_skills.htm)

# Brad McGehee
– Enjoys Technology
– Enjoys Challenges
– Good with Details
– Embraces Change
– Enjoys Learning
– Accepts Responsibility
– Maintains Professionalism
– Trustworthy
– Dependable
– Can Work as Part of a Team
– Can Communicate Effectively
– Listens Well
– Realistic
– Patient
– Enthusiastic
(http://bradmcgehee.com/2009/06/23/how-to-identify-important-characteristics-for-a-dba-job-candidate/)

# Greg Larsen
– Problem Solving Skills
– Mentoring Skills
– Automating Everything
– Looking for Process Improvement Efforts
– Following a Standard Methodology
– Attitude
– Community Oriented
– Ethical
– Prioritizing Work Correctly
– Leadership skills
– Communication Skills
– Customer Service
(http://www.databasejournal.com/features/mssql/traits-of-a-dba-part-two-the-personal-side-of-a-dba.html)

# John Sansom
– Excellent Attention to Detail
– A Natural Problem Solver
– Assertive
– Tactful
– Manage Relationships
– A Good Decision Maker
– Humble
– Calm Under Pressure
– Business Minded
– Approachable
(http://www.johnsansom.com/10-character-traits-of-outstanding-dbas/)

# Alan Hughes
– Organization Skills
– Technical Skills
– Interpersonal Skills
– Reading/Writing Skills
(http://work.chron.com/skills-needed-database-administrator-10356.html)

# Fernando Gazioli (BR)
– Confiança (Confidence)
– Pró-atividade (Proactivity)
– Bom Relacionamento (Good Relationship)
– Organização (Organizing skills)
– Curiosidade (Curiousity)
(http://www.tiespecialistas.com.br/2013/04/as-5-caracteristicas-de-comportamento-de-um-bom-dba/)

# Tiago Gouvêa (BR)
– Raciocínio Lógico (Logic)
– Autodidata (self-taught)
– Solucionador de Problemas (Problem Solver)
– Inglês (English)
– Gosta de Aprender (Enjoys Learning)
(http://www.profissionaisti.com.br/2014/01/os-5-principais-requisitos-para-ser-um-bom-programador/)

The final rating (top 8), grouping by similarity is something like:

Confident/Ethics/Professional/Responsible: 5 votes
Communicative/Good Relationship: 5 votes
Logic/Natural Leader/Mentoring/Assertiveness/Decision Maker/ Calm (in summary: Talented): 5 votes
“Problem Solver”: 4 votes
Curious/ Enjoys Learning/Self-taught: 4 votes
Embraces changes/challenges/process improvements: 4 votes
Enthusiastic/Proactive/Attitude: 4 votes
Detail-oriented: 3 votes

Do you liked this post?
I suppose you can like the Eduardo Morelli speech (05/21/2015!) too: http://webinar.infnet.edu.br/8-competencias-dba-oracle/

Take a look.