Ich habe gewusst, dass DBAs mit wenig oder gar keinen Programmierkenntnissen davonkommen, aber jeder DBA, den ich jemals für gut gehalten habe, hatte zumindest vernünftige Programmierkenntnisse. Ein oder zwei, die ich mir vorstellen kann, hatten einen beachtlichen Entwicklungshintergrund und waren selbst ziemlich gute Entwickler. Es gibt einen fairen Betrag von Open-Source - Werkzeugen von Menschen , die als DBAs in ihrem Job arbeiten und IIRC der Typ, schrieb TOAD an die Arbeit als DBA verwendet.
Abhängig von der Rolle, in der Sie möglicherweise Abfragen schreiben oder optimieren, Skripts zur Automatisierung von Aufgaben schreiben oder sich über das Anwendungsdesign beraten lassen. In einigen Fällen kümmern Sie sich möglicherweise nur um eine Reihe von Servern über OEM oder ein anderes Überwachungstool.
Moderne "Unternehmens" -Entwicklungsumgebungen wie .Net oder Java sind so komplex, dass ein Entwickler Karriere machen kann, wenn er sich nur darauf spezialisiert hat. Als DBA, insbesondere im Entwicklungsbereich, schadet es möglicherweise nicht, Kenntnisse in C # oder Java zu haben, aber Sie werden wahrscheinlich nicht viel Zeit damit verbringen, sie tatsächlich zu programmieren.
Sie werden wahrscheinlich mehr Kilometer mit den auf Ihrer Plattform verwendeten Skript-Tools machen, obwohl viele Systeme .NET-, Java-, COM- oder Web-Service-APIs bereitstellen. Wenn Sie etwas gegen diese APIs codieren müssen, benötigen Sie mindestens grundlegende Kenntnisse über etwas, das diese API nutzen kann. Fortgeschrittene Kenntnisse in der Anwendungsarchitektur sind hierfür jedoch in der Regel nicht erforderlich.
Einige Entwickler verfügen über ausgeprägte Datenbankkenntnisse, aber in Entwicklungskreisen ist irrationale Angst vor Datenbanken weit verbreitet. Viele Entwickler haben auch nie wirklich eine Ahnung von dem Paradigma der 'Mengenoperationen', das SQL zugrunde liegt. Als Entwickler-DBA müssen Sie möglicherweise in den Code gespeicherter Prozeduren eingreifen, um Leistungsprobleme zu lösen.
ETL und Tools, die die Datenbank umgeben, können ebenfalls in die Zuständigkeit des DBA fallen. Ich habe etliche ausgeschriebene DBA-Rollen gesehen, die einen erheblichen Teil der Back-End-Entwicklungsarbeit in Anspruch zu nehmen schienen. Dies wird in kleineren Unternehmen am häufigsten vorkommen. Ein kürzlich veröffentlichtes Poster wollte benutzerdefinierte Metriken in Oracle Enterprise Manager integrieren, wozu eine Plug-in-API vorhanden ist. Es ist durchaus üblich, dass Anforderungen wie diese auftauchen, und der einzige Weg, dies zu erreichen, besteht darin, einen Klebercode zu schreiben.
In der IT gibt es viele "Tools Guys", die trotz des Parochalismus nützliche Arbeit leisten können. Wenn den Tools jedoch der Dampf ausgeht, besteht die einzige Möglichkeit, etwas zu erledigen, darin, tatsächlich ein bisschen Code zu schreiben, um dies zu tun. Hier trennen Programmierkenntnisse die Männer von den Jungen.