1
SQL Server bygger på ett antal Windows tjänster (services), vilket är prioriterade program som körs i bakgrunden under OS kontroll. Bland tjänsterna är själva databasmotorn SQL Server den mest använda. Flera av tjänsterna är från början avstängda pga säkerhets- och prestandaskäl. De kan startas och stoppas med verktyget SQL Server Configuration Manager. Det rekommenderas att man använder denna istället för Windows Computer Management Studio. 2
Här på skolan använder vi vanligen Developer-versionen som har alla finesser, men som är avsedd att användas av utvecklare och inte som produktionsserver. En fördel med Developer-versionen är att den inte kräver ett Serveroperativsystem t ex Windows Server 2008. Express-versionen är helt gratis och fungerar som de stora versionerna vad det gäller vanlig databashantering så när som på begränsad databasstorlek på 10GB och kan bara utnyttja 1GB RAM och 1 CPU. Den saknar däremot en hel del administrativa finesser såsom programmering av jobb. En tveksam finess med expressdatabasen är att den har något som kallas XCOPY som innebär att databasfiler kan kopieras till annan server och automatiskt anslutas till denna. Detta är säkert gjort för att förenkla uppladdning av databaser till webbhotell. En begränsning med detta förfarande är att datafiler och loggfilen måste ligga i samma mapp. Detta är en allvarlig säkerhetsrisk då både data och transaktionslogg kommer att förloras vid en diskkrasch. Då kan bara data fram till den senaste backupen återställas, vilket inte är tillräckligt bra i databasvärlden. Det är bara Express-versionen som har denna finessen. Express Local DB är en gratis lättviktsversion av Express med alla dess programmeringsmöjligheter. Mycket enkel installation och minimala krav på understödjande program. Lämplig som inbäddad databas för stand-alone och tillfälligt anslutna applikationer för mobila enheter, persondatorer och webb-klienter på alla plattformar. Körs "in process" tillsammans med applikation. Körs alltså inte som en tjänst (service). 3
4
5
6
7
8
9
10
Det kan ibland bli problem att adressera en instans via nätverk, beroende på att \ ingår i namnet. Man kan då registrera ett aliasnamn till servern som inte innehåller detta tecken. Detta göra man med SQL Server Configuration Manager. 11
Eftersom tjänsterna loggar in till värddatorn måste de ha ett konto, precis som vilken användare som helst. I enklare fall, t ex på utvecklarens dator, kan man använda samma konto till alla tjänsterna och detta kan vara det lokala systemkontot. När man vill ha ett säkrare system ska man lägga tjänsterna på egna konton så att man kan begränsa rättigheterna så långt det är möjligt. När SQL Server behöver utföra avancerad kommunikation, t ex replikering med flera andra servrar kan det vara nödvändigt att låta vissa tjänster ligga under ett eget domänkonto. För detaljer om detta hänvisas till BOL (Books On Line). 12
En viktig uppgift för en databashanterare är att sortera data. Sorteringen används dels till att snabbt kunna hitta data (index) och dels för att kunna presentera data sorterat efter gängse regler. Den måste då också kunna hantera de olika teckenuppsättningar som gäller för respektive land De regler som används för att bestämma ordningen mellan de olika tecknen i en viss teckenuppsättning kallas collation order. Vid installationen gäller det att kontrollera att rätt collation order är inställd. Standardvärdet hämtas från datorns landinställningar och behöver normalt sett inte ändras, men om Windows inte är inställt för t ex Sverige så kan det bli fel. Kontrollera att Collation Order är satt till Finnish_Swedish och att Accent Sensitive (AS) är satt. Accent Sensitive innebär att man t ex skiljer på t ex AÅÄ och inte betraktar dessa som samma bokstav. Normalt ska SQL vara Case-Insensitive (CI). De vid installationen inställda värdena kommer att betraktas som <server default> och väljs normalt när nya databaser skapas. Systemdatabaserna kommer att få den vid installationen valda sorteringsordningen (t ex Finnish_Swedish_CI_AS) och det kan vara mycket besvärligt att ändra detta i efterhand. 13
14
Snabba diskar till data och säkra till loggar Data ska ligga på så snabba diskar som möjligt. Använd t ex RAID 10 som använder en kombination av spegling (mirror) och stripes eller den billigare RAID 5 som sprider data och paritet över tre eller fler diskar Transaktionsloggen bör ligga på en annan disk. Här väljer man med fördel den feltoleranta RAID 1 som använder spegling, så att inte både logg och datafiler försvinner vid en disk-crash. 15
16
17
18
19
20
21
22