Actualizare pe loc de la SQL Server 2005 la 2008 (Administrarea sistemului, Sql Server 2008 R2)

Ken Ray a intrebat.

Situație – Serverul care rulează Windows Server 2003 și SQL Server 2005. Aproximativ 18 baze de date diferite pe server. Trebuie să facem upgrade la Windows Server 2008R2 și SQL Server 2008. Nu ne putem permite să pierdem niciuna dintre bazele de date (dacă ar fi așa, viața mea, așa cum o știu eu, s-ar termina…).

Care este cea mai sigură / mai simplă cale – și cum fac și cu toți utilizatorii și rolurile?

1 răspunsuri
Darin Strait

Puteți folosi caracteristica „upgrade in place” de la SQL Server 2005 la SQL Server 2008. IIRC, puteți folosi și programul de instalare Windows Server 2008R2 pentru a face upgrade de la Windows Server 2003, deoarece Windows Server 2003 este doar două versiuni în urmă.

Acest răspuns se concentrează pe SQL Server. Vă recomand să faceți câteva lucruri:

  • Citiți pagina de internet a Microsoft SQL Server 2008 Upgrade Technical ReferenceGuide. Este lung, aproape 500 de pagini, dar puteți tăia/sări peste unele secțiuni, cum ar fi cele referitoare la actualizările side-by-side. Există o secțiune care descrie costurile și beneficiile „upgrade in place” și „side by side upgrade”.
  • Asigurați-vă că toate bazele de date sunt acceptate pe versiunile de Windows și SQLServer pe care intenționați să le utilizați. În cazul software-ului de la terți, asta înseamnă că trebuie să vă întrebați furnizorii. S-ar putea să constatați că trebuie să treceți la versiuni mai recente ale software-ului terț pentru ca acesta să funcționeze corect cu SQL Server 2008. În cazul codului propriu, cel mai bine este să testați temeinic software-ul pe un server cu noile versiuni de WindowsServer și SQL Server înainte de a face actualizarea „pe bune”. Cel puțin, rulați SQL Server 2008Upgrade Wizard, care vă va indica problemele comune.
  • După actualizare, efectuați un fel de „test de fum” rapid care să convingă utilizatorii că software-ul lor funcționează bine. Odată ce utilizatorii încep să modifice datele, va fi din ce în ce mai dificil să vă întoarceți la vechile versiuni ale lucrurilor, deoarece nu veți putea muta cu ușurință modificările lor înapoi.
  • Dacă se descoperă o problemă după câteva zile de funcționare a noilor sisteme, s-ar putea să rămâneți blocat cu ea, deoarece dacă ați merge înapoi ar arunca prea multe informații sau ar trebui să petreceți zile sau săptămâni pentru a găsi o modalitate de a migra datele înapoi, iar situația este și mai gravă dacă unele lucruri funcționează și altele nu. Unele probleme ar putea avea soluții de rezolvare și pur și simplu nu merită deranjul. Îmi place să am o listă de „motive pentru care vom da înapoi cu upgrade-ul” asupra cărora toate părțile interesate au căzut de acord înainte de a începe. De asemenea, îmi place să am un termen limită pentru orice discuție privind retragerea actualizării. Acest lucru ar putea suna ca „După ora prânzului din prima zi, rămânem blocați cu ceea ce avem”.
  • După ce faceți upgrade la SQL Server 2008, orice altSQL Server 2005 pe care le aveți nu vor mai putea citi fișierele de backup. Acest lucru este important dacă restaurați copiile de rezervă de producție pe mașini de dezvoltare sau de testare sau dacă faceți schimb de copii de rezervă cu o terță parte. Nu există nicio modalitate de a crea o copie de rezervă „compatibilă cu 2005” de pe un server 2008. SQL Server 2008 poate citi copii de rezervă mai vechi, astfel încât orice copii de rezervă pe care le-ați făcut deja pot fi citite de noul SQL Server.Mulți dezvoltatori sunt surprinși de acest lucru.
  • În cazul actualizărilor in-place, nu puteți merge înapoi,de două ori mai mult dacă înlocuiți sistemul de operare. Dacă puteți, izolați mașina de modificările aduse de utilizatori și creați o imagine a unității cu Ghost sau ceva similar înainte de a face upgrade-ul. Dacă se întâmplă ceva catastrofal, ar trebui să puteți reveni la situația în care erați înainte de actualizare. Jumătate din calitatea de bun administrator constă în a ști ce să faci dacă se întâmplă ceva catastrofal, pentru că acest lucru se întâmplă cu o frecvență surprinzătoare.
  • Ar trebui să vă asigurați că faceți upgrade la cele mai recente service pack-uri pentru Windows Server și SQL Server în timp ce aveți serverul offline.
  • Asigurați-vă că hardware-ul dvs. este compatibil cu Windows Server 2008 R2. Asta înseamnă că trebuie să aveți driverele descărcate și pregătite pentru orice hardware neobișnuit: plăci RAID, NIC-uri sofisticate, HBA-uri FibreChannel etc.

Comentarii

  • Ken, dacă serverul rulează Windows Server 2003 x86, atunci nu va putea fi actualizat la Windows Server 2008R2. Va trebui să faceți upgrade la Windows Server 2008 x86 sau să instalați un nou server W2K8R2. –  > Por joeqwerty.
  • Poate face upgrade de la 32 de biți la 64 de biți sau asta necesită neapărat o reinstalare? Nu cred că am mai văzut un administrator de sistem Windows care să facă o actualizare „in situ” a unui sistem de operare pentru servere de cel puțin zece ani. –  > Por Darin Strait.
  • Nu, nu se poate face o actualizare „in-place” de la o ediție pe 32 de biți a Windows la o ediție pe 64 de biți a Windows. –  > Por joeqwerty.