Comment puis-je apprendre à devenir DBA?

16

Question pour vous les administrateurs de base de données et autres: comment procédez-vous pour acquérir les compétences nécessaires pour devenir administrateur de base de données sans avoir la formation pratique ou en cours d'emploi?

Mon expérience dans le travail de base de données a été de jouer avec MySQL via MyPHPAdmin ou quelque chose de similaire. Ne pas faire une tonne de travail en profondeur.

Des classes? Livres SQL?

Valien
la source

Réponses:

27

Ayant été DBA dans une vie passée (et maintenant en charge de les embaucher), j'ai quelques réflexions:

Comment savez-vous que vous voulez être un administrateur de base de données sans aucune expérience de l'administration d'un système de gestion de base de données? C'est comme dire "Comment puis-je être mécanicien automobile, mais le plus proche où je travaille est de conduire vers et depuis le travail chaque jour" ... Je regarderais longuement pourquoi vous aimez les systèmes de base de données et voir si c'est du côté production (SQL) ou support (DBA) ...

Vous ne devriez pas être en mesure d'obtenir un emploi en tant que DBA de production sans production, une expérience sur le tas en tant que DBA, alors ne commencez pas à postuler pour des postes de DBA.

Vous pouvez être un DBA junior dans une équipe si et seulement si vous démontrez une certaine expérience dans l'administration de SGBD combinée à de nombreuses connaissances et / ou certifications.

Votre meilleur pari est de commencer dans une entreprise en tant que développeur SQL - les chances sont qu'il n'y a pas de DBA dédié et que vous travaillez plus avec lui, vous pouvez devenir un DBA dédié.

Ou, exécutez une application multi-utilisateurs de production qui utilise un SGBD comme serveur principal. Exécutez votre propre site Web qui utilise MySQL et maintenez le SGBD opérationnel 24/7 et vous obtiendrez suffisamment d'histoires de guerre pour prouver que vous savez de quoi vous parlez. Passez du temps sur des formulaires utilisateur (tels que DBForums) et fournissez une assistance à d'autres utilisateurs pour les problèmes de SGBD de production.

Concentrez-vous sur la sauvegarde / récupération, le réglage des performances, etc. et cela suffira au moins à vous mettre dans la porte pour un poste DBA junior.

Bonne chance!

Matt Rogish
la source
6

Si vous n'avez pas d'expérience pratique, vous n'êtes pas digne d'être embauché pour un tel travail. Rien ne vous empêche de télécharger MS SQL Express, MySQL et / ou la version gratuite d'Oracle et de les utiliser. Ils sont tous gratuits et vous devriez acquérir de l'expérience avec plusieurs types de serveurs de base de données.

MyPHPAdmin convient très bien pour une utilisation de base, mais ce n'est pas un excellent outil, vous devez utiliser des outils plus sérieux (administrateur MySQL) et apprendre à optimiser les tables existantes, les index et réécrire les requêtes existantes (en particulier les jointures mal écrites) avant de pouvoir envisager c'est une carrière possible.

TravisO
la source
6

Beaucoup de DBA ont commencé en tant que développeurs qui se sont avérés être un peu meilleurs en SQL que leurs pairs dans une entreprise donnée. Comme cela est reconnu, ils commencent à dessiner de plus en plus d'affectations de base de données. Ces affectations supplémentaires, ainsi que peut-être une formation spécifique à la base de données, aident à développer leurs compétences dans ce domaine encore plus, jusqu'à ce qu'ils aient eux-mêmes travaillé dans le rôle DBA.

Ce processus est idéal pour apprendre des choses comme le réglage des requêtes et la conception de tables. Cependant, il n'est pas aussi bon pour d'autres tâches DBA, comme la définition de schémas de réplication ou de sauvegarde, la sécurité, la gestion des rôles, la maintenance du serveur, la connectivité du serveur, les systèmes de rapport, l'olap / analyse, le traitement des travaux par lots, etc.

Certaines de ces autres responsabilités peuvent être partagées avec le personnel informatique, mais les autres éléments de cette liste ne sont pas triviaux et cumulent plus que ce que vous êtes susceptible d'apprendre au niveau expert grâce au type de cours de formation d'une semaine que la plupart des entreprises sont disposées à payer pour. Si vous vous trouvez dans cette position, veillez à ne pas obtenir plus que ce que vous avez négocié. C'est une bonne idée de commencer à chercher des ressources d'étude que vous pouvez utiliser pour en savoir plus sur ces choses par vous-même, et peut-être demander à votre entreprise de vous fournir un environnement de test / formation décent, qui peut être aussi simple qu'un bon bureau supplémentaire où vous peut installer l'édition développeur de Sql Server dans une machine virtuelle ou deux.

Joel Coehoorn
la source
4

Si vous suivez la voie de l'autoformation, je recommanderais d'avoir une base solide dans les concepts couplée à autant de pratique que possible. Les deux sont nécessaires. MySQL et / ou PostgreSQL vous serviront bien, mais vous apprendrez le plus en travaillant directement dans la console plutôt qu'en utilisant un outil d'administration ou une interface graphique.

En ce qui concerne les livres sur la théorie des bases de données relationnelles, je recommanderais n'importe quoi de CJ Date, en particulier ce qui suit:

Comme d'autres l'ont mentionné, il existe également une multitude de problèmes réels que vous ne rencontrerez probablement pas avant d'avoir affaire à une base de données en production avec de vraies données et de vrais utilisateurs.

Abie
la source
3

Si vous souhaitez passer à un emploi spécial X, qui est en quelque sorte lié au développement de logiciels, envisagez de rechercher un emploi de développement dans une petite entreprise. Les petites entreprises n'ont généralement pas beaucoup de spécialistes, vous pouvez donc finir par effectuer différents types de travaux. (Certaines personnes - comme moi - aiment ça, d'autres détestent ça.) Une fois que vous avez un peu d'expérience en faisant X au cours de votre travail, vous pouvez essayer de l'étendre.

La première expérience est toujours la plus difficile à obtenir et, comme d'autres l'ont souligné, vous donnera une idée de ce que vous voulez faire ou non. Après avoir mis votre orteil dans la porte, vous pouvez continuer sur cette lancée.


la source
2

L'apprentissage de la théorie ne suffit pas, pour réussir dans quelque chose d'aussi complexe que la gestion de bases de données, vous devez avoir une expérience pratique. Vous devez éprouver la douleur des problèmes de base de données difficiles et les résoudre avec succès et effort.

phpMyAdmin est une interface limitée pour effectuer une maintenance de base. Vous devez avoir le contrôle total de toutes les options et utilitaires de ligne de commande pour envisager d'appliquer en tant qu'administrateur de base de données. Modélisation de base de données, optimisation des requêtes, haute disponibilité, évolutivité - il y a tellement de choses à savoir pour pouvoir gérer correctement une base de données de production.

Je vous suggère d'obtenir une copie de High Performance MySQL (2nd ed.) Et de commencer à gratter le bord de ce qui est possible. Vous pouvez lire un peu de sagesse des DBA de classe mondiale sur plusieurs blogs . Et surtout, impliquez-vous dans des projets difficiles et commencez à acquérir de l'expérience.

Eran Galperin
la source