En veiledning for å designe, implementere og løse problemer i SQL Server-databasen

1

En database er en modell hvor dataene kan lagres logisk og kan hentes frem for fremtidig bruk. Hvis du er kjent med Microsoft Excel, lagrer du viktige data i tabellform allerede.

Database er ikke annet enn en lignende tabellform for lagring av data akkurat som regnearkene. Den inneholder kolonner og rader der kolonnene er sammensatt av attributter og radene er bygget av postene.

Hvis du for eksempel oppretter en database med navn og telefonnumre til kundene dine, trenger du kolonnenavnene som Fornavn, Etternavn og Telefonnummer. Deretter kan radene legges til under kolonnene etter behov i henhold til antall klienter. Databasen kan hente og oppdatere dataene dine etter behov. Den kan utføre forskjellige komplekse beregninger og krysssjekke postene i forskjellige tabeller.

Databasetyper

Database kan hovedsakelig deles inn i to forskjellige typer – flat fil og relasjonell.

Flat fil

Hvis du har å gjøre med små mengder data, kan det flate fildatabasesystemet være den ultimate løsningen for dine behov. Selv om komplekse data kan lagres med flat fil, kan prosessen være tidkrevende og kostbar sammenlignet med relasjonsstyringssystemet. Dermed er enkle data der datastrengene kan differensieres ganske enkelt med komma under det flate filsystemet.

Relasjonell

Databasen for eksempel MySQL, Oracle eller MS SQL-serveren kan tjene formålet med store og komplekse datastrukturer på en veldig logisk måte. Siden tabellene kan kobles sammen med hverandre, er de navngitt som ‘relasjonsdatabase'.

Trinn for å designe database med SQL Server

Trinn 1

Installer programvaren – Først må du installere programvaren fra Microsoft. Mac-brukere kan installere fra DbVisualizer eller Squirrel-programmer som er åpen kildekode.

Steg 2

Introduser SQL Server Studio – Du må starte programmet ved å kjøre SQL Server Management Studio. Hvis du allerede har en kjørende server, trenger du litt tillatelse for å koble til. Men hvis du oppretter en ny, må du velge "Windows-autentisering" og sette inn databasenavnet som (.) Du er nå klar til å koble til når du klikker på ‘Koble til'-knappen.

Trinn 3

Finn databasemappen – Du må finne mappen til databasen. Etter tilkobling åpnes Objektutforsker-vinduet. Du kan klikke på ‘+'-ikonet for å utvide alternativet og deretter enkelt finne databasemappen.

Trinn 4

Opprett ny – De eksterne DBA-ekspertene vil nå fortsette å opprette en ny database. Du må gi databasen et navn og la resten av funksjonene fungere automatisk. Når du skriver inn databasenavnene, to filer nemlig; dataene og loggfilen vil bli opprettet som standard. Datafilene lagrer alle dataene dine mens loggfilene kan spore oppdateringene i databasen din. Nå må du klikke ‘OK' og det nye sylindriske databaseikonet vises i mappen.

Trinn 5

Lag tabell – Velg mappen "Tabeller" ved å høyreklikke på den utvidede databasemappen. Derfra kan ‘Ny tabell' velges for å opprette og redigere din nye tabell.

Trinn 6

Opprett primærnøkkel – Den første kolonnen i databasetabellen må inkludere primærnøkkelen. Denne nøkkelen kan være et hvilket som helst element som ID eller serienummer. Du kan fjerne merket for 'tillat null'-knappen og skrive ‘int' i alternativet Datatype. Men hvis du vil tillate null, vil din første oppføring definitivt være null.

Trinn 7

Tabellstruktur – Strukturen til bordet må ordnes på riktig måte. Siden tabellene er opprettet av kolonnene og feltene, må du representere databaseoppføringen ved hver kolonne. For eksempel, hvis du oppretter kontaktdatabasen til kundene dine, må det være kolonner som ‘Fornavn', ‘Etternavn', ‘Adresse' og ‘Telefonnummer'.

Trinn 8

Lag forskjellige kolonner – Når primærnøkkelen din er fylt, kan du fokusere oppmerksomheten på å lage forskjellige kolonner under primærnøkkelen. Du må velge den nøyaktige datatypen for å tilpasse all informasjonen din.

  • int – Denne datatypen brukes i utgangspunktet for hele tallene og kan observeres i ID-feltet.
  • nchar (#) – Det brukes hovedsakelig for tekster, for eksempel navn, etternavn og adresser. Parentesen skal inneholde maksimalt antall tegn som kan tillates i hvert felt. Telefonnumre kan også lagres i dette formatet da det ikke krever noen matematisk beregning.
  • desimal( x,y) – Desimalformen til tall kan lagres her. Parentesen angir totalt antall sifre i figuren og antall sifre like etter desimaltegn. For eksempel vil desimal (4, 2) lagre tall som 00.00.
Trinn 9

Lagre datatabellen – Etter å ha fullført tabellopprettingsoppgaven med forskjellige felt og kolonner, må du lagre tabellen ved å gi den et navn. Navnet på tabellen må hjelpe deg med å gjenkjenne innholdet i databasetabellen. Verktøylinjen inneholder Lagre-ikonet som du må klikke for å utføre handlingen.

Trinn 10

Legg til data i tabell – Når du er klar med tabellen, kan du nå legge til data i henhold til dine krav. Du kan utvide Tables-mappen fra vinduet i Object Explorer, og hvis den nye tabellen tar tid å laste, trenger du bare å oppdatere Table-mappen. Hvis du for eksempel har lagt til 400 rader, velger du "Rediger topp 400 rader" ved å høyreklikke på tabellmappen.

Trinn 11

Lagre data og utfør tabell – Hvis du er klar etter å ha lagret alle dataene dine, klikker du bare på Utfør SQL-knappen fra verktøylinjen. SQL-serveren vil utføre automatisk og gå gjennom alle dine lagrede data. Du kan også utføre SQL ved å trykke Ctrl + R fra tastaturet. Eventuelle feil vil bli uthevet før utførelsesprosessen finner sted.

Trinn 12

Dataspørring – Nå, etter at designprosessen er over, kan du enkelt søke etter dataene dine for alle analyser og rapporter. Dataspørringsrapportene kan dermed brukes til administrative formål for din bedrift.

Løse databaseproblemer i SQL Server

Tilkoblingsproblemer

Tilkobling kan være et veldig vanlig serverproblem i databasen. Når de nye brukerne begynner å samhandle med serveren, kan tilkoblingen bli distribuert noen ganger. Serveren kan kjøre en utmerket forbindelse i mange år, men kan plutselig miste synkroniseringen mellom applikasjonene og sluttbrukerne i systemet.

For å feilsøke dette problemet, må du fokusere på varigheten av feilgenereringen. Figuren nedenfor forklarer feilsøkingsprosessen på riktig måte.

Hvis feilen genereres innen 25-30 sekunder, kan du være sikker på at det oppstår noen tilkoblingsproblemer på serveren. På den annen side, hvis varigheten bare er noen få sekunder som 5-6 sekunder, kan du enkelt anta at problemet er relatert til konfigurasjonen og innstillingene eller eventuelle tillatelsesrelaterte problemer på serveren. I tilfelle av 30 sekunders tidsavbrudd, må du pinge verten riktig, og serveren kan da ikke gi tilgang til de nye klientene. Det er alltid tilrådelig at serveren kan brukes med de spesifikke navngitte forekomstene for å unngå dette spesielle problemet.

Hvis tilkoblingen fortsatt virker gjenstridig, kan du utføre profilering med revisjonspålogging og deretter sjekke knappen for mislykket revisjonspålogging for å identifisere alle mislykkede hendelser. Hvis ingenting skjer, kan du være trygg på at brannmurene, navngitte forekomster og portlyttere er tilgjengelige som standard. Hvis en hendelse inntreffer her, trenger du mer detaljert informasjon om tilkoblingsproblemet ditt.

Arkitektoniske spørsmål

De arkitektoniske problemene kan omfatte blokker, vranglåser og overlåsingsprosessen. Med økningen av belastningen og antall sluttbrukere, kan disse arkitektoniske problemene ta en stor form på serveren din. Her representerer koden ikke riktig den samtidige SQL-servermodellen på grunn av blokkeringene i konsistensen til forskjellige transaksjoner. Selv om problemet forblir skjult til økt bruk av applikasjoner, må det fortsatt løses for en skikkelig arkitektonisk bakgrunn. Dette problemet er noe likt når et bildekk fungerer bra på de glatte veiene i byen, men kan være utsatt for ulykker når du kjører i kuperte veier. DMV-spørringen kan være den beste løsningen for å kurere disse sovende problemene på serveren din. Du kan presentere spørringskommandoen som sys. dm_os_waiting_tasks for å få en ide om antall forespørsler som er under ventestatus. For eksempel sjekker denne spesifikke DMV forespørsler som er blokkert.

SELECT
w.session_id
w.wait_duration_ms
w.wait_time
w.blocking_session_id
r.total_elapsed_time
FROM
sys.dm_os_waiting_tasks
WHERE
w.session_id>100

DMV kan også sjekke den generelle statistikken til serveren hvis en oppgave er i ventetilstand. Derfor kan blokkeringsproblemene elimineres hvis spørsmålene kan reises på riktig måte. Kollisjonen av data kan unngås hvis indeksen kan fungere mye raskere gjennom hele operasjonen. Du kan lokalisere vranglåsen og håndtere den på en effektiv måte. Dødlåsen kan løses ved å re-orkestrere operasjonsordrene med alle problemene i en sekvens. NOLOCK hint-alternativet kan også brukes, men du må være klar over alle de motsatte effektene av det i miljøet med datakonsistens. Du kan kreve ekspertise ferdigheter for å feilsøke disse problemene med vranglås. Hvis du går galt i ett enkelt trinn, kan feilsøkingen virke svært kostbar for deg!

Katastrofegjenoppretting

Selv om datagjenoppretting er mulig i ulike trinn for feilsøking av SQL, anbefales det alltid at det tas en forsvarlig sikkerhetskopi av offsite for ulike katastrofer og uforutsette hendelser. Du må oppfylle Recovery Point Objective (RPO) og Recovery Time Objective (RTO) ved å oppdatere den eksisterende planen for gjenoppretting regelmessig. De jevnlige oppdateringene og testingen hjelper serveren din med å takle miljøendringene midt i krisesituasjonen.

Varsler og feil

Det vanlige varslingsoppsettet er en av de viktige oppgavene som utføres av databaseserveren. Feilene og problemene kan lett dukke opp hvis varslene brukes i en riktig konfigurasjon. Feilmeldingen kan vises med de tekniske detaljene og kan være svært fordelaktig for å løse problemene. I noen få unntakstilfeller der feilmeldingen ikke gir detaljene, skal de automatiserte operasjonene utføres av ulike loggingsalternativer fra SQL-serverne. Søkemotorene kan også være til stor hjelp hvis du setter inn riktig feilkode i søkeboksene deres. Du må bare identifisere årsaken før du løser eventuelle serverproblemer. Hvis du ønsker å bli hjulpet av sosiale medier, kan du se etter #sqlhelp på Twitter som også vil gi deg utmerkede muligheter for å løse feilene.

Ytelsesproblemer

Databaseytelsen forblir uten klager inntil størrelsen er liten. Men når størrelsen på databasen øker, kan det oppstå ulike ytelsesproblemer på serveren. Dermed kan serverne gradvis slutte å reagere med noen spesielle spørsmål som kjører i bakgrunnen og tiltrekker seg forskjellige problemer. Nå for å identifisere disse spørringene, kan du bruke sp_WhoIsActive-prosessen og finne dem ut. Denne DMV viser seg å være et veldig nyttig verktøy under feilsøkingsproblemer og justering av databaseytelse.

Som alle andre Windows-applikasjoner kan SQL-serverdatabasen også tiltrekke seg forskjellige problemer. Selv om feilsøking av problemene ikke er en umulig oppgave, krever det praktiske ferdigheter fra databaseekspertene. Spørringene og operasjonene må kjøres samtidig med all sikkerhetskopierings- og antivirusprogramvare for å sikre databaseytelsen. Riktig utførelse av verten til SQL-serveren avhenger av den generelle ytelsen og standard feilsøkingskapasitet. Du kan finne det rimeligere å sette ut feilsøkingsaktivitetene til det berørte teamet av eksperter og fokusere på riktig implementering av databasen i organisasjonen din.

Dette nettstedet bruker informasjonskapsler for å forbedre din opplevelse. Vi antar at du er ok med dette, men du kan velge bort det hvis du ønsker det. jeg aksepterer Mer informasjon