MSSQL教程之GROW THAT DBA CAREER
有了数据以后,我们就要想一个比较统一的方法来闪回。上面我们说了对于DML操作,可以通过反向执行所有逆操作来实现,对于语句里面的DDL,只能直接跳过。原因是一个DDL不一定有直接的逆操作。GrowThatDBACareer
Introduction
Overtheyears,I’vespentlotsoftimeonvariousnewsgroupsandtalkingwithInformationTechnologyprofessionalswhowanttoknowhowtogetajobasaDatabaseAdministrator(DBA),orhowtogrowasaDBA,nowthattheyhavethejob.Manyindividualshaveofferedmanydifferentpiecesofadviceovertheyearsonhowtoaccomplishthesegoals.ThispaperisaculminationofthoseideasandcangivesomesuggestionsonhowtolandarewardingandexcitingjobasaDBA.ThispaperwillalsogiveideasonhowtogrowasaDBAtobecomeevenmorevaluabletoyouremployer.IfyoualreadyhaveajobasaDBA,youmightwishtoskipthefirstfewsectionsofthispaper.
ShouldIBecomeaDBA?
OneofthequestionsI’vebeenaskedtoanswerisshouldapersonpursueajobasaDBA.Thisisnotaneasyquestionsinceitdependsontheindividual.SomeindividualshavethetalentthatisrequiredtobecomeagoodDBA.OtherindividualsdonotfindthedutiesrequiredofaDBAtobeparticularlyeasytograsp.TheDBApositiondoesrequirethattheindividualholdacertainskillset.AndtherearedemandsonthisindividualthatotherITpositionsdonotnecessarilyrequire.Sotoanswerthisquestion,IoftengivetheprospectiveDBAcandidateapictureofwhatisrequiredoftheDBAposition.Intheparagraphsthatfollow,Iendeachparagraphwithaquestion.Pleasetaketimetothinkaboutandanswerthequestionbeforeproceedingtothenextparagraph.
ManypeopleaspiretobecomeaDBAformanyreasons.Oneoftheprimereasonsispay.DBA’saresomeofthehighestpaidprofessionalsintheITindustry.OthersaspiretobecomeaDBAduetotheglorythatisoftenlaudedontheDBA,orbecauseitlookscool!IpersonallyfindbeingaDBAtobeveryrewarding.Itisafun,excitingcareer.WhatareyourreasonsforlookingattheDBApositionasapossiblecareerchoice?
Unlessyouarepreparedforwhatliesahead,youmayfindthatajobasaDBAcanbefulloffrustrationandheadaches.Adatabasesitsbetweentheoperatingsystemandtheenduserapplication.Assuch,theDBAmustbewellversedintheOSplatformtheirdatabaserunson.TheDBAdoesn’tnecessarilyneedtoknoweverythingabouttheOS,butthemoreheorsheknows,thebetter.ThedatabaseinteractsverycloselywiththeOS.Understandingthisinteractionisessential.TheDBAalsoneedstoknowaboutserverhardwareandhowitimpactsorhelpsthedatabase.TheDBAmustalsounderstandsoftwareapplications.TheDBAmaybeaskedtohelpdeveloperscreatesound,robustdatabaseapplications.Andaboveallus,andmostobviously,theDBAmustthoroughlyunderstandthedatabaseengine,howitworks,howallpiecesoftheenginefittogether,andhowtoleveragethepowerofthedatabaseenginetodeliverdatatotheenduserandtheapplication.ThebestDBAsI’veseenintheindustryhaveaverysolidunderstandingofmorethanjustthedatabaseitself.TheyknowathingortwoaboutSystemAdministrationandApplicationDevelopment.Manytimes,theycomefromoneorbothbackgroundsbeforebecomingaDBA.Nomatterwhat,thereisalotofgroundtocovertobecomeaneffective,ifnotexcellentDBA.Areyoureadytostartlearninguntilyoufeelthatyoucan’tlearnanymore?
MostofthepeoplethatItalktowhohavedifficultiesstartingoutintheirDBAcareer,reallyhaveanissuetryingtoabsorbthemountainousvolumesofinformationthataDBAneedstoknow.Afterall,SystemAdministratorsmakeawholecareeroutoflearningtheinsandoutsoftheOS.ApplicationDevelopersmakeawholecareeroutoflearninghowtobuildandcodeexcellentapplications.NotonlydoesaDBAhavetoknowagreatdealaboutthesetwodifferentjobs,butthentheDBAneedstospendevenmoretimeworkingonunderstandingthearchitectureofthedatabase,andunderstandinghoweverypieceofeverythingfitstogether!Doesitsoundtoodauntingofatask?Therehavebeenmanywhothinksoandafterbecomingfrustrated,havelefttheirDBAjobforacompletelydifferentjob.Thentherearethoseindividualswhothriveondisseminatingandunderstandingallofthisinformation,andusingthatinformationtomakegood,soundtechnicaldecisions.AsIwasfondofsayinginmyearlydaysasaDBA,itallseemstometobeonegreatpuzzle.Thechallengeisingettingallofthepiecestofit.Whichtypeofpersonareyou?
ManyDBAsare“on-call”.Theygetcalledatallhoursofthedayandnighttoresolvecriticalproblemswiththeirdatabase.Thedatabaseisthelife-bloodofthebusiness’sITinfrastructure.Withoutdata,therewouldbenoneedtohaveacomputersystem.Itisthedatathatdrivesthebusiness.Wherewouldamazon.combeiftheirwebsitecouldn’tsearchthedatabaseforproductsandifnoonecouldplaceanorderfortheirproducts?Theywouldn’tbeinbusinessforverylong.Therearemanycompaniesthatlosesignificantrevenueswhentheirdatabaseisdown,evenfortheshortestperiodoftime.Forthisreason,theDBAneedstobeavailabletoresolveissuesasfastaspossible,shouldtheyoccur.ManyshopshaveateamofDBAswhorotatebeingon-call.TheseDBAssupportdatabasesfor24x7applications.Areyoureadytobeplacedon-callifthejobrequiresit?
SomeoftheDBAsdutiesincludeapplyingpatchestosoftwareormakingdatabasechanges.Oftentimes,thesechangescannotbedonewhilethecompany’semployeesareatwork,expectingthatthedatabasebeupandrunningsothattheycangettheirjobsdone.ThismeansthattheDBAfrequentlyhastocomeinrealearlyinthemorning,orreallateatnight,orevenontheweekendstoperformworkthatcanonlybedoneoutsideofnormalbusinesshours.Areyoureadytoworksomestrangehoursattimes,orareyoulookingfora9to5job?
OnekeyassetforaDBAtoholdiswhatiscommonlyreferredtoas“softskills”.TheDBAneedstobeabletoworkwellinateamenvironment,commonlyindiverseteamswithSystemAdministrators,NetworkAdministrators,ApplicationDevelopers,ProjectManagersandothers.DBAsneedtobeabletoexplaindifficult,technicalconceptsinplainEnglishthatothersintheteamenvironmentcanunderstand.DBAsneedtobeabletodirectteammembersondatabase-relatedissues.Howareyoursoftskills?
Whilenotanall-inclusivelist,typicalDBAsperformthefollowingduties:
·Monitordatabaseinstancesonadailybasistoensureavailability.Resolveunavailabilityissues.
·Collectsystemstatisticsandperformancedatafortrendingandconfigurationanalysis.
·ConfigureandtunedBinstancesforoptimalperformanceunderapplicationspecificguidelines.
·AnalyzeandadministerdBsecurity.ControlandmonitoruseraccesstodB.Auditdatabaseusagewhennecessary.
·Monitorbackupprocedures.Providerecoverywhenneeded.Developandtestbackupandrecoveryprocedures.
·UpgradeRDBMSsoftwareandapplypatcheswhenneeded.Upgradeormigratedatabaseinstancesasnecessary.
·SupportapplicationdeveloperswithanyandalldBrelatedactivities.
·KeepupwithdBtrends&technologies.Usenewtechnologieswhenapplicable.Install,test,andevaluatenewOraclerelatedproducts.
·Performstorageandphysicaldesign.Balancedesignissuestoachieveoptimalperformance.
·Create,configureanddesignnewdBinstances.
·Diagnose,troubleshootandresolveanydBrelatedproblems.WorkwithOracleSupportifnecessarytobringproblemstoasuccessfulresolution.
·EnsureOraclenetworkingsoftware(SQL*Net,Net8,Names,OiD)isconfiguredandrunningproperly.
·WorkwithSystemAdministrators(Unix&NT)toensureOraclerelatedmattersarehandledproperly.
·CreateanynecessaryscriptsforeffectiveandoccasionallyperiodicdBmaintenanceactivities.
EachofthequestionsintheaboveparagraphsaredesignedtogetyouthinkingaboutsomeofwhataDBAhastodealwith,tohelpyoudecideifthisisthecareerforyou.IdonotmeananyofthistostopyoufrombecomingaDBAifthatisyourgoal.Iamjusttryingtoinjectsomerealityintothepicture.I’veseenafewDBAsbecomefrustratedoncetherealityofthejobhitsthem.Andthey’vespenttime,effort,andsometimesmoney,toobtaintheirfirstjobasaDBA.Personally,Ifindthiscareertobeveryrewarding.AndIcan’timaginedoinganythingelserightnow.Sohopefully,thissectionhashelpedyoudecideifthisissomethingthatyouwishtopursue.Ifitis,thengoforitwithallyouhave!
HowDoIGetThatFirstDBAJob?
Soyou’vereadthesectionaboveanddecidedthatbecomingaDBAisagoodcareermoveforyou.Congratulations!Ihopethatyourcareerturnsouttobeasexcitingandrewardingasyouwantittobe.SohowdoyougoaboutgettingthatfirstDBAjob?Ihearpeopleaskthisquestion,timeandtimeagain.
Duringtheearly1990’s,theInternetwasbooming.Internetstartupcompaniessproutedlikeweeds.Existingcompaniesjumpedonthebandwagonaswellandstartedcreatingtheirownwebpresence.Andalmosteverysingleoneofthesecompanieshadawebsitethatrequiredadatabaseasabackendtotheirwebapplication.Unfortunately,thereweren’tthatmanyDBAsinthefieldatthattime.TherebecameagreatshortageofDBAsintheITindustry.Duringthattime,itseemedthatallyouneededtolandaDBAjobwastheabilitytospell“Oracle”ormaybejustonesemester’sexposuretoadatabasesystemincollege.Andtomakelifeevenbetter,theshortageofDBAsinthefieldpromptedcompaniestothrowverynicesalaryoffersatpotentialcandidates.IfyouwantedtobecomeaDBA,itwaseasy;tooeasy.Allyouhadtodowasdemonstratethatyouknewwhatadatabasewasandjobofferscameinfasterthanyoucouldhandle.
ThentheInternetbubbleburst.TonsofInternetstartupcompanieswentoutofbusiness.AlotofDBAswhoworkedfortheInternetstartupsfoundthemselveslookingforjobs.AcompanywithaDBAopeningcouldfindacandidatewithDBAexperiencemuchmoreeasilythanbefore.Lifehasn’tbeenanyeasierintheearlypartofthe21stcentury(atleastinthe
UnitedStates
)nowthattheeconomyisn’tverystrong.Companiesaretighteningtheirbudgets.AllofthistranslatesintolessopportunitiesandjobopeningsfortheDBAcandidate.
OneofthehardestpartstolandingthatfirstDBAjobisthateverypositionopeningrequiressomeexperience.Ifyoulookatitfromthecompany’sperspective,youcanunderstandwhyexperienceisamustfortheDBAposition.Wouldyoupaysomeoneahighsalary,tooperate,maintain,andrunoneofthebiggest,mostimportantpiecesofyourITinfrastructureiftheydidn’thaveanyexperience?CouldyourcompanyaffordtostrugglewithaninexperiencedDBAandpotentiallylosemillionsofdollarsinrevenuewhileyouwaitforthisDBAtogetpasttheirlearningcurve?Formostcompanies,theanswertothesequestionsisaresounding‘NO’.Sowithoutexperience,itbecomesratherdifficulttoobtainyourfirstDBAjob.
ThefirstDBAjobnowbecomesa“Catch22”situation.HowdoIgetajobasaDBAifIdon’thaveanyexperience?HowcanIgetexperienceasaDBAifIdon’thaveajob?Thisisthehardestobstacletoovercome.ThehardestpartwillbelandingthatfirstDBAjob.Hopefully,therestofthissectionwillgiveyousomeideastowardsrealizingthegoalofyourfirstDBAposition.
Tip#1:Becomeeducated.–Learnasmuchasyoucanyoucanaboutadatabase.Thiswillmostlikelyinvolvesometimeandeffortonyourpart,outsideofnormalworkinghours.Takeadatabaseclassatalocalcollegeoruniversity.ManytrainingcompaniesofferclassesonDatabaseAdministration.Youmayfindthatyouhavetopayfortheseyourselfifyouremployerwillnotfundyoureducationopportunities.ManyDBApositionsrequireatleastaBachelor’sdegreeinComputerScienceorarelatedfield,soyoushouldhaveatleastthatcredential.
Tip#2:PracticebeingaDBA.–Manydatabasevendorsletyoudownloadtrial,test,orevaluationcopiesoftheirdatabasesystem.Downloadacopyandinstallthesoftwareonyourownpersonalcomputer.Playwiththedatabase.Intentionallybreakthedatabaseandtrytofixit.TrytoperformasmanyoftheDBAfunctionsasyoucanthinkof.Testoutandhoneyourskillsonyourowntestplatformsothatyoucanbeabletodemonstratesomelevelofdatabaseadministrationability.
Tip#3:Getcertified–Manydatabasevendorsnowofferacertificationfortheirdatabaseproduct.Manycompaniesnowlookatcertificationasameasuringstick.Onethingtokeepinmindisthatjustbeingcertifiedisnotenough.PassingDBAcertificationtestsdonotautomaticallymeanthatyouknowhowtoadministeradatabase.Theyjustsaytothepotentialemployerthatyounowpossessacertainsetofskills.BeingcertifiedalsotellsapotentialemployerthatyouareseriousaboutyourpursuitofaDBAjob.I’veseenmanypeoplecomplainthattheyarecertifiedwithnoexperience,butstillcan’tgetthatfirstDBAjob.Certificationalonewon’tlandyouthejob,butitdoesn’thurteither.Ifnothingelse,you’velearnedagreatdealwhiletryingtogetcertified.Justdon’trelyonthecertificationtogetyouthatjobyouarelookingfor.Youwillneedmorethanthat.Butitwillhelpintheend.
Tip#4:Leverageyourexistingskillset–ManyDBAscomefromaSystemAdministratorbackground.OtherscomefromanApplicationDevelopmentbackground.Ifpossible,seeifyoucanuseyourexistingskillsettogetajob.Thegoalhereistomakeitawin-winsituationforyouandyouremployer.Forinstance,let’sassumethatyouarealreadyaSysAdminlookingtobreakintotheDBAfield.MaybeyoucanfindajobatacompanythatwillbeabletouseyourSysAdminskillspartofthetime,whilebeingabletogetyourfeetwetinDatabaseAdministrationtherestofthetime.IfyouarealreadyaDBAononevendor’splatformbutwishtomovetoanothervendor’splatform,seeifyoucanlandajobwhichhasbothplatforms.Forinstance,useyourSQLServerDBAskillsinashopthatalsoletsyoubackuptheOracleDBA.Inthisway,boththecompanyandyougetwhatyouwant.Afteryou’vehadexposuretoDBAwork,youcantrytogetapositionthatwillletyoudoitfulltime,maybeevenwiththesamecompany.
Tip#5:Takeadvantageofcurrentopportunities–Sometimes,onegetsintotheDBAfieldjustbybeingintherightplaceattherighttime.Ifyourcurrentemployerhasanopportunityforyoutoworkonanydatabaseproject,jumpatthechance!Anydatabaseexperienceisworthmorethannodatabaseexperience.Letyourmanagementknowthatyouareactivelyseekinganydatabaseopportunitiesthatcomeby.Hopefully,theywillthinkofyouwhenthenextonecomesalong.AfterworkingonthesedatabaseprojectsandseeingthedesireinyoureyestobecomeaDBA,theymaydecidetotrainyou,andpromoteyou.Many,manypeoplegettheirfirstDBAjobinexactlythismanner,slidingintoaJuniorDBApositiononcetheyhaveworkedonafewdatabase-relatedprojects.Oftentimes,whenaDBAleavesthecompany,thatcompanywilllookathiringaninternalcandidateiftheyfeelthatcandidateistrainable.
Tip#6:LookforthatJuniorDBAposition–IfyoulookatDBApositionopeningdescriptions,somewillsaythattheyarelookingforaSeniorDBAandothers,justforaJuniorDBA.Solet’sbeserioushere.Youdon’thavetheexperienceforasenior-levelposition.Andwe’vealreadydiscussedwhycompanieswon’tconsideryouforsuchaposition.Buttheymayconsideryouforajunior-levelposition.JuniorDBAsworkundertheguidanceofaSeniorDBA.Theyarelearningtheropes.Typically,theSeniorDBAassumestheresponsibilityforthedatabases,whilegettingalltheglorytoo!Butdon’tworry.Asyourcareergrows,youwillgetmoreandmoreresponsibilitiesandmoreandmorecreditwhenappropriate.Sinceyoudon’thaveanyexperience,startyourclimbuptheladderhere.
Thatbeingsaid,IhaveheardofsomecompanieslookingforaSeniorDBA,butintheend,theyreallywanttohireaJuniorDBA.Youmaywishtoapplyforthesepositionseventhoughyoumaynotbequalified.Theyjustmightdecidetohireyouanyway.ButbeupfrontandexpressthatyouarestilllearningtheropesandarereallyonlyJuniorDBAmaterial.Don’ttrytosnowthemintothinkingthatyouareSeniorDBAmaterial.Thatwillonlyhurtyourchancesoflandingthejob.
Whilenoguarantee,thesetipscanhelpyoulandthatfirstDBAjob.Goodluckandhappyjob-hunting!Afteryou’vereceivedthatfirstjobasaDBA,proceedtothenextsectiontolearnwheretogonext.
IJustGotMyFirstJob!NowWhat?
Congratulations!YouarenowanofficialmemberoftheDBAclub!Areyoureadyforthatexcitingcareerthatyou’vealwaysdreamedabout?Yourjobhasjustbegunandalreadyyouarewaybehindthatlearningcurve.YouwillfindthatthereisanenormousamountofmaterialthatyoumustlearntobecomeaneffectDatabaseAdministrator.Yourfirstyearortwowillbespentlearningmorethanyoumayhaveeverlearnedinyourcareer.Ifyoufindthattheamountofinformationisleadingtobrainoverload,justsitback,takeabreather,andcomebacktoit.Tohelpyoualongtheway,youcanfollowtheroadmapbelow:
Route#1:Relationaldatabasetheory–Forthispaper,I’mgoingtoassumethatthetypeofdatabaseyouwillbeadministeringisa“relational”database.Otherdatabasemodelsdoexist,buttherelationalmodelisthedominantoneintheindustryforthelasttwentyyears.Ifyourdatabasesystemfollowsadifferentmodel,thenlearnthattheory.Relationaldatabasetheoryisveryimportant.Itisthebackgrounduponwhicheverythinghasbeenbuilt.I’veseenmanypeoplewhomakethejumptodatabaseadministrationandneverbothertolearnsolidrelationaldatabasetheory.Inevitably,theirlackofasolidbasisinthistheoryshowsupasashortcomingmanytimesduringtheircareer.Ifyouunderstandrelationaldatabasetheorywell,thenyouwillbeabletomakesmoothertransitionstoanyvendor’sRelationalDatabaseManagementSystem(RDBMS).Itdoesn’tmatterifIamusingOracle’sdatabase,orIBM’sDB2,orMicrosoft’sSQLServer.Allofthemarerelationaldatabasesystems.Theyalldobasicallythesamethings.Thedifferenceliesinhowtheydothesamethings.AsolidrelationaldatabasetheoryisnotessentialforaJuniorDBAposition.ButitisvitalifyoueverwanttogrowyourcareerpasttheJuniorDBAlevel.Manycollege-leveltextbookscoverrelationaldatabasetheoryverywell.OneofthemostwidelyusedtextbooksisFundamentalsofDatabaseSystemsbyElmasriandNavatheonBejamin/CummingsPress.
Route#2:Learnthequerylanguageinsideandout–Databasesallhavealanguagethatletsyougetdatafromthedatabase,putdataintothedatabase,andmodifythedatathatisinthedatabase.Forrelationaldatabases,thatlanguageisStructuredQueryLanguage(SQL).Thisonelanguageisyourtooltointerfacewiththedatabase.Itisvitalthatthistoolnotbeabarriertofurtherlearning.Inyourtestdatabase,practicevariousSQLstatementsuntiltheybecomesecondnaturetoyou.AgreatbookonthissubjectisOracle9iTheCompleteReferencebyLoneyandKochonOraclePress.EveryOracleDBAshouldreadthisbookearlyintheircareer.TheOracle9iSQLReferencemanualisanothergreatsourceofinformation.YoucanaccessalloftheOracledocumentationonlineattheirTechNet(http://technet.oracle.com)website.Youwillhavetoregisterforanaccount,butitisfree.EveryOracleDBAshouldhaveanaccountonTechNet.
Route#3:Beginlearningbasicdatabaseadministrationfunctions–Isn’tthiswhyyouarehereinthefirstplace?Sowhyisitthirdonthelist?WearetryingtobuildapyramidofknowledgeandIfeelstronglythatoneneedstoknowrelationaldatabasetheoryandSQLrealwellastheywillbecometoolsthatyouwilluseasyoulearnhowtoperformbasicdatabaseadministrationfunctions.Thesefunctionscanincludestartingandstoppingadatabase,backingupandrecoveringadatabase,andcreating/dropping/alteringdatabaseobjects.ForOracledatabaseadministration,thereisagreatbookonthemarketthatgivesyouagoodtasteofwhattoexpect.ThisbookisOracle9iDBAHandbookbyLoneyonOraclePress.MostDBAsthatIknowhavereadthisbookmorethanonce,earlyintheircareers.Atthistime,youshouldalsobereadingandunderstandingtheOracle9iConceptsGuide,theOracle9iAdministrator’sGuide,andtheOracle9iBackupandRecoveryGuide,allfromtheOracledocumentation.
Route#4:Read,read,andread–SinceyoujuststartedyourcareerasaDBA,youarejustbeginningtobuildaskillset.Ittakesalongtimetobuild,absorb,andcomprehendalloftheinformationyouwillbelearning.Undoubtedly,yourSeniorDBAwillhaveworktodo,soheorshewillnotalwaysbeabletodevoteatonoftimetoyourstudies.Youwillhavetolearnmanythingsonyourown.Thisiswherereadingcomesin.Therearemanybooksonthemarket,whichansweralotofdatabaserelatedtopics.OraclePressisOracleCorp’sofficialpublishingcompanywithalargenumberofOracle-relatedbooks.Thereareotherpublishingcompaniesaswell,likeWroxPressandO’ReillyPress.YoualsohavetheOracledocumentationtoread.Andtherearenumerouswebsitesandnewsgroupsavailableaswell.Readasmuchasyoucangetyourhandson.Andit’snotabadideatoreadtheseitemsmorethanoncetoabsorbthingsyoumayhavemissedthefirsttime.
Route#5:Createtestcases–Ioftenseebeginnerquestionsthataskthemostbasicquestionsthatcaneasilybeansweredifthepersonjusttookthetimetofigureitoutthemselves.Undoubtedly,youwillhavemanyquestionsasyoubeginyourOraclestudies.Decideifthesearequestionsthatyoucanansweryourself.Forinstance,IoncehadsomeoneaskmeifitwaspossibletoinsertNULLvaluesintoacolumnwithaUNIQUEconstraint.Atfirst,thismaynotseemtobeaneasyquestiontoanswer.Butitisreallyeasytotest!Justcreateasimpletable.Ononeofyourcolumns,enableaUNIQUEconstraint.TrytoinsertNULLvaluesintothatcolumn.Doesitwork?Youshouldbeabletoanswerthisquestionquiteeasily.Sowhycreatethesetestcases?Onereasonisthatbydoingso,youwillbeenhancingyourproblemsolvingskills.Thesameskillsrequiredtocreatethesetestcasesaresomeofthesameskillsusedinproblemsolving.ProblemsolvingskillswillgreatlyhelpyourDBAcareer.Anotherreasonisthatyouwilloftenneedtocreatemorecomplextestcasesasyourcareerprogressesinordertoguaranteedatabaseandapplicationsuccess.Evensimpletestcasesarebuildingblocksformorecomplexdatabaseandapplicationanalysisinthefuture.
Route#6:Findamentor–Amentorcanbeusedtoguide,orsteeryourDBAcareer(oranycareerforthatmatter).Theycangivepointers,answerquestions,andhelpsavesometimeasyougrowyourDBAcareer.Hopefully,thispaperwillserveasamentortowardspartofgrowingyourcareer.IfyouareworkinginanenvironmentwithaSeniorDBA,thenthatpersonshouldberesponsibleformentoringagoodportionofyourcareer.Youmaychoosetolookatothermentorsaswell.
Route#7:Participateinlocalusergroups–Manycitiesacrossthenationhavelocalusergroupswhichmeetperiodicallytotalkaboutdatabase-relatedtopics.Joinoneoftheselocalusergroupsifpossible.Thisgivesyouagreatwaytointeractandnetworkwithothersinyourfield.
HowDoIGoFromaBeginnerDBAtoanIntermediateDBA?
Soyou’vebeenaDBAforawhileandyounowwishtotakeyourskillsupanotch?Wheredoyouturntonext?First,gobacktotheprevioussectionandmakesurethatyouhavecompletedalloftheroutes.ItisvitalthatyouknowtheSQLlanguageinsideandout.Itisvitalthatyouknowrelationaldatabasetheoryandthatyouunderstandthebasicdatabaseadministrationtasks.Andbynow,youshouldhavebeenreadingthedocumentationandothertextsuntilyouareblueintheface.Ifnot,thenyouarenotreadytoproceeddownthenextroad,toincreasingyourskillsasaDBA.Ifyouarereadytoproceed,thenI’vegotafewroutesforyoutotaketoincreaseyourskillset.
Route#1:LearntheOSandyourserverhardware–AsIsaidbefore,thedatabasesitsontopoftheoperatingsystemandtheserverhardware.Itisessentialthatyouunderstandhowthesepieceswork.YoushouldunderstandhowtointeractwiththeparticularOS.Howdoyouremoveoreditfiles?IfyourOSisUnix,youshouldhaveagraspofthecommandlineandhowUnixcommandshelpyoudoyourjob.ThesameistobesaidifyouarerunningWindowsoranyotherOS.Youneedtohaveanunderstandingofserverhardwareaswell.Whatisthedifferencebetweenphysicalandvirtualmemory?WhatisRAIDandhowdothedifferentlevelsaffectthings?Whydodatabaseslikemorephysicaldisks,ratherthanonelargediskvolume?YouneedtoknowthesethingssothatyoucanintelligentlytalktoyourSystemAdministratorsonhowtobestconfigureyourservertosufficientlysupportyourdatabase.
Route#2:Learnapplicationdesignasitrelatestodatabases–AsIsaidbefore,thedatabasesitsbetweentheOSandthedatabaseapplication.Youreallyneedtoknowbothends.HowdoestheSQLlanguagehelpcreategoodapplications?Whatarebindvariablesandwhyaretheyimportant?TomKytehaswrittenanexcellentbookthatgivesgreatadviceonOracleapplicationdesign.HisExpertOne-on-oneOraclebookcanbefoundonWroxPress.Ihighlysuggestreadinghisbook.HetalksatlengthaboutthethingsthatcanmakeorbreakanOracleapplication.Youneedtoknowthesethingsbecauseyourapplicationdevelopersarelookingtoyouforguidanceanddatabaseknowledge.Learnanythingyoucanaboutapplicationdesign.Itmaybebeneficialtotakeacollegeclassinsoftwareengineering,operatingsystems,ordatastructures.
Route#3:LearntheOraclearchitecture–ItisimportantthatyoufullyunderstandhowOracleworks.WithoutanintimateknowledgeoftheOraclearchitecture,youwillnotbeabletodomuchworkasaSeniorDBA.Itisthisknowledgethatisthebasisforfixingabrokendatabase.Youneedtounderstandhowallofthepiecesworktogether.
Route#4:Becomecertified–Itmaynotberequiredofyourjob,butbecomingcertifiedwilldefinitelyhelpyou.EverydayasaDBA,youhavebeenlearningnewandexcitingthings.Maybeatthispointinyourcareer,you’veevenhadacoupleofdayswhereyouhaven’tlearnedanythingnew.Butyoustillhavealottolearn.BecominganOracleCertifiedProfessionalDBArequiresyoutoensurethatyouhavelearnedthebasicsaboutallareasofdatabaseadministration.IfoundthatinthecourseofstudyingfortheOCPexams,Ilearnedareasthatmyjobneverwouldhaveexposedmeto.AndonceIlearnedaboutaparticulartopicthatIhadneverseenbefore,Iwasabletousethatknowledgeatalaterdatetosolveaproblem.IfIdidn’tstudyfortheOCPexams,Ineverwouldhaveknownaboutthatparticularsolutiontotheproblem.Thishashappenedtometimeandtimeagain.Somepeoplemaysaythatcertificationreallyisn’tworthit.Isaythatitdoesn’thurtyouanditonlyhelpsyou.Sogetcertified!
Route#5:Developalibraryofresources–Intheprevioussection,IindicatedthateveryDBAshouldhaveanaccountonTechnet.Thisisoneofyourmainresources.Buttherearemanymoresourcesaswell.ManypeoplesharetheirOracleknowledge.Ifyouhaven’tstarteditalready,youshouldbedevelopingquiteabookmarkcollectioninyourwebbrowserofOracleresources.Youcanstartbyvisitingmysite(http://www.peasland.net)ifyouwant.ThefollowingisalistofmusthavewebsitesforeveryOracleDBA:
所以你总能得到相应的升级版本,来满足你的需求。 sqlserver的痛苦之处在于有用文档的匮乏,很多只是表明的东西 对一张百万级别的表建游标,同时又没有什么过滤条件,取得游标效率是如果直接SQL查询百万条数据;如果再对每条记录做处理,耗时将更长。 一个是把SQL语句写到客户端,可以使用DataSet进行加工; Mirror可以算是SQLServer的Dataguard了。但是能不能被大伙用起来就不知道了。 你可以简单地认为适合的就是好,不适合就是不好。 可以动态传入参数,省却了动态SQL的拼写。 总感觉自己还是不会SQL
页:
[1]