Introducere în replicare tranzacțională în SQL Server - sql server, cumpărare sql server - software

implementare de bază

Deși procesul studierii replicării poate părea complicat, pentru utilizarea cu succes a replicare suficientă pentru a înțelege componentele sale constitutive. Și vă permite să faceți configurații de bază de implementare practică și studiu ulterior de modificări legate de scheme personalizate de metadate obiecte, locuri de muncă SQL Server Agent și un agent asociat cu această configurație agent. Pentru a vă ajuta, mai întâi voi merge pe scurt peste terminologia de replicare, și pentru a arăta modul în care funcționează diferitele componente. Apoi, vom efectua desfășurarea de rutină de replicare tranzacțională, una dintre cele mai comune tipuri de replicare.

Concepte de bază de replicare

Replicarea necesită o bază de date separată pentru stocarea metadatelor și datelor transmise. Această bază de date se numește baza de date de distribuție (Distribution baze de date), precum și o instanță de SQL Server. pe care este stocat, - distribuitor (distribuitor). Distribuitorul poate fi aceeași instanță de SQL Server, editorul, sau o instanță separată a instanței cu privire la care datele transmise. Decizia privind plasarea bazei de date de distribuție se bazează de obicei pe luarea în considerare a lucrurilor, cum ar fi congestia sau disponibilitatea (de exemplu, în cazul în care o tranzacție de replicare este combinată cu oglindire bază de date).

Serverul primește datele de la editor numit abonat (Subscriber). Abonatul poate fi aceeași instanță de SQL Server, ca editor, copia, care este un distribuitor sau o instanță separată de SQL Server. Abonatul este determinată prin adăugarea unui abonament la o anumită publicație. Baza de date de abonat poate conține replicată și obiecte nereplicat și stoca mai mult de un abonament de la diferite publicații.

executabilele externe denumite agenți de replicare transmite date de la editor la distribuitor și apoi la abonat. agent de tip replicare depinde de tipul de replicare.

Alegerea tipului de replicare

Există trei tipuri de bază de replicare: replicare instantaneu, replicare tranzacțională, și îmbinare replicare. Există, de asemenea, pe baza acestor tipuri de variante, cum ar fi replicarea la egal la egal (replicare peer-to-peer), dar nu le vom discuta în acest articol.

replicare Instantaneu vă permite să distribuiți datele la un anumit moment. Imaginea este trimis și nu mai a procesului de replicare actualizat până când se va lua o imagine nouă, care va fi trimis la abonat. replicare Instantaneu este de obicei folosit pentru a forma modelul articolelor și datele aferente la abonat la o replicare tranzacțional și îmbinare replicare.

Merge replicare permite unui abonat pentru a modifica direct datele abonamentului (articol) și apoi sincronizați liniile modificate cu editorul. Așa cum am menționat anterior, unii abonați pot fi permanent deconectat de comunicații, conectați periodic și sincroniza datele la cerere. În acest moment, modificările lor sunt sincronizate cu editorul și vice-versa. Acest lucru poate duce la date contradictorii, editorul, și unul sau mai mulți abonați încearcă să modifice aceleași date.

Replicarea tranzactionala Implementarea

În plus, descrierea reprezentării va fi replicat [HumanResources]. [VEmployee]. Și, deși ideea nu conține date, puteți reproduce descrierea acestui obiect, cu condiția ca toate obiectele dependente sunt incluse în publicația.

În continuare sunt descrise pași pentru configurarea exemplu SQL Server ca un editor.

  1. În SSMS Object Explorer, faceți clic pe lista drop-down Conectați panoul din fereastra din stânga a consolei și selectați instanța de SQL Server, care va fi configurat ca un editor sau distribuitor.
  2. În Explorer obiect, extindeți nodul SQL Server de instanță. Faceți clic dreapta pe folderul de replicare și selectați Configurare de distribuție.
  3. Pe ecranul Expertul Configurare de distribuție, faceți clic pe Următorul. Acest ecran nu va mai apărea atunci când îl opriți bifând în câmpul Nu afișa din nou această pagină de pornire.
  4. Distribuitor pe ecran, așa cum se arată în figura 1, specificați dacă o anumită funcție SQL Server ca un distribuitor sau un distribuitor pentru acest editor va fi un alt server. Pentru acest exemplu, atribuie dreptul de autor al editorului și distribuitor faceți clic pe Următorul.
  5. Afișează SQL Server Agent Start vă permite să configurați pornirea automată a serviciului SQL Server Agent. Selectați pornire automată Da, configurați serviciul SQL Server Agent pentru a porni în mod automat, și apoi faceți clic pe Următorul.
  6. Ecranul Instantaneu Folder specifică locația depozitului instantaneu. Suntem în acest exemplu, utilizați setările implicite. Selectarea stocare locală conduce la un avertisment că dosarul nu are suport pentru replicare la cerere (pentru această opțiune necesită o partajare de rețea). Notați calea către un folder selectat, deoarece veți avea nevoie în viitor. Faceți clic pe Next.
  7. Pe ecranul de distribuție Baza de date oferă opțiuni distribuitor de configurare a bazei de date numele (baza de date de distribuție) și plasarea fișierelor bazei de date. Într-o bază de date de producție, distribuitorul fișierele bazei de date trebuie să fie plasate astfel încât să asigure lățimea de bandă maximă și întârzieri minime necesare pentru topologia dumneavoastră replicare. Pentru a testa script-ul, selectați setările implicite și faceți clic pe butonul Next.
  8. Editorii de pe ecran definesc serverele care vor utiliza acest distribuitor pentru publicațiile sale. În exemplul nostru, este necesar SQL Server este deja selectată. Dacă faceți clic pe butonul marcat cu punct (.) La dreapta a coloanei de distribuție afișare baze de date setări suplimentare, cum ar fi modul de conectare a unui agent (Modul conexiune Agent), precizează metoda de a se conecta la editorul și directorul implicit pentru a stoca instantanee (Instantaneu folderul implicit). Apăsați Next.
  9. Pe ecranul Acțiuni Wizard, fie să dea o comandă maestru pentru a ajusta în mod automat răspândirea, sau de a genera un script cu care puteți regla răspândirea, sau ambele. În exemplul nostru, vom lăsa toate implicit și faceți clic pe Următorul.
  10. La ecranul finală Finalizarea expertului, faceți clic pe butonul Finish. În continuare, veți observa starea tuturor etapelor executate. Când expertul se finalizează cu succes, faceți clic pe butonul Închidere.

Introducere în replicare tranzacțională în SQL Server - sql server, cumpărare sql server - software

Ecranul 1. Scopul instanță a SQL Server ca propriul distribuitor

Introducere în replicare tranzacțională în SQL Server - sql server, cumpărare sql server - software

Ecranul 2. Selectarea bazei de date? Replicarea

Gestionați setările de securitate pentru agenții

Iată pașii de urmat pentru a pregăti permisiunile minime necesare pentru cei trei agenți de replicare serviciu conturi utilizate în topologia demo.

În timp ce vă aflați în mai multe locații atribuite permisiunea db_owner, a anunțat oficial permisiunile minime necesare. Comparativ cu permisiuni de sysadmin configurați o configurație mai sigură.

Introducere în replicare tranzacțională în SQL Server - sql server, cumpărare sql server - software

Ecranul 3. Selectați tabelele pentru replicare

Ecranul 5. Introduceți acreditările de agent instantaneu

Creați un abonament de împingere

Pentru a crea un nou abonament de împingere, urmați acești pași.

  1. Pe server, îndeplinește rolul de editor / distribuitor, directorul de replicare, extindeți publicații locale, faceți clic dreapta pe [AdventureWorks]: Pub_AdventureWorks și de a alege pentru a crea un abonament nou meniu de noi abonamente.
  2. Pe ecranul în expertul pentru a crea un nou abonament, faceți clic pe butonul Next (presupunând că nu ați oprit pe ecran).
  3. Publicarea pe ecran, asigurați-vă că este selectat noua publicație. Faceți clic pe Next.
  4. Ecranul de distribuție a agentului de amplasare specifică tipul de abonament (forțată sau la cerere). Lăsați toate setările neschimbate și faceți clic pe Următorul.
  5. Abonații pe ecran, faceți clic pe butonul Add Abonat, apoi Abonatul Add SQL Server. În caseta de dialog Conectare la Server pentru a se conecta la o instanță a serverului abonatului.
  6. Abonații vor fi afișate pe un alt server. Selectați pentru a-l din baza de date de abonament picătură. Faceți clic pe Next.
  7. Pe ecranul de distribuție agent de securitate (ecranul 6) Apăsați butonul marcat cu punct (.) Pentru a porni caseta de dialog pentru a configura setările de securitate a agentului de distribuție. Enter pe acest panou, numele contului și parola a Agentului de distribuție. Faceți clic pe OK.
  8. Pe ecranul de distribuție agent de securitate, faceți clic pe Următorul.
  9. În ecranul de program de sincronizare Sincronizare Program, lăsați valoarea implicită (de lucru continuu) și faceți clic pe Următorul.
  10. Pe ecranul Inițializare Abonamente, lăsați valoarea implicită pentru lansarea imediată a unui abonament. Faceți clic pe Next.
  11. Acțiuni pe ecranul următor al expertului, lăsați caseta de selectare implicită Crearea abonamentului (e) și faceți clic pe Următorul.
  12. Pe ultima pagină a expertului, faceți clic pe Finish. După finalizarea cu succes a tuturor etapelor de creare a unui nou abonament, faceți clic pe Închidere.

Introducere în replicare tranzacțională în SQL Server - sql server, cumpărare sql server - software

6. Parametrii Screen-siguranță de distribuție de configurare Agent

replicare testare

Acum doriți să testați o replicare personalizată și să se asigure că funcționează în mod corespunzător. Urmați pașii de mai jos.

INSERT [Persoana] [Adresa] (AddressLine1, City, StateProvinceID, PostalCode) VALORI ( '2222 Test Drive', 'Minneapolis', 36, 55410) .;

2. Așteptați 10 secunde, apoi executați operația SELECT pe server, Abonatul:

SELECT AddressID FROM [Person] [Address] WHERE AddressLine1 = '2222 Test Drive' .;

Dacă totul a fost făcut în mod corect, veți fi returnate la rândul nou introdus.

3. Testați serverul de prezentare de replicare abonat utilizând codul:

SELECT COUNT (*) DIN HumanResources.vEmployee;

Am după executarea acestui cod a fost eliberat 250 de linii și nu au existat mesaje de eroare, ceea ce indică faptul că toate obiectele dependente au fost reproduse.

Învățarea prin

Această introducere în replicarea tranzactionala este doar un strat superior de cunoștințe despre cum să implementați și să sprijine mediu de replicare tranzacțional. Deși volumul de material pentru studiu poate parea descurajatoare, cel mai bun mod de formare în domeniul de replicare este utilizarea sa practică în munca dumneavoastră legate de întreținerea aplicațiilor de întreprindere și obiectivele de afaceri.

UTILIZARE [maestru]; GO CREATE LOGIN [SQLskills \ SQLskillsSnapshotAGT] de la ferestre; UTILIZARE [distribuție]; GO CREATE USER [SQLskills \ SQLskillsSnapshotAGT] PENTRU CONECTARE [SQLskills \ SQLskillsSnapshotAGT]; EXEC sp_addrolemember N'db_owner 'N'SQLskills \ SQLskillsSnapshotAGT'; UTILIZARE [AdventureWorks]; GO CREATE USER [SQLskills \ SQLskillsSnapshotAGT] PENTRU CONECTARE [SQLskills \ SQLskillsSnapshotAGT]; EXEC sp_addrolemember N'db_owner 'N'SQLskills \ SQLskillsSnapshotAGT';

UTILIZARE [maestru]; GO CREATE LOGIN [SQLskills \ SQLskillsLogReaderAG] de la ferestre; UTILIZARE [AdventureWorks]; GO CREATE USER [SQLSKILLS \ SQLskillsLogReaderAG] PENTRU CONECTARE [SQLSKILLS \ SQLskillsLogReaderAG]; EXEC sp_addrolemember N'db_owner 'N'SQLskills \ SQLskillsLogReaderAG'; UTILIZARE [distribuție]; GO CREATE USER [SQLSKILLS \ SQLskillsLogReaderAG] PENTRU CONECTARE [SQLSKILLS \ SQLskillsLogReaderAG]; EXEC sp_addrolemember N'db_owner 'N'SQLskills \ SQLskillsLogReaderAG';

Listarea 3. Codul pentru a crea un cont de agent de distribuție în baza de date de distribuție

UTILIZARE [maestru]; GO CREATE LOGIN [SQLskills \ SQLskillsDistAGT] de la ferestre; UTILIZARE [distribuție]; GO CREATE USER [SQLskills \ SQLskillsDistAGT] PENTRU CONECTARE [SQLskills \ SQLskillsDistAGT] EXEC sp_addrolemember N'db_owner 'N'SQLskills \ SQLskillsDistAGT';

Listarea 4. Codul pentru a crea un cont de agent de distribuție în baza de date a abonatilor

UTILIZARE [maestru]; GO CREATE LOGIN [SQLskills \ SQLskillsDistAGT] de la ferestre; UTILIZARE [AWReporting]; GO CREATE USER [SQLSKILLS \ SQLskillsDistAGT] PENTRU CONECTARE [SQLSKILLS \ SQLskillsDistAGT] EXEC sp_addrolemember N'db_owner 'N'SQLskills \ SQLskillsDistAGT'

Wizard sau script-uri?

Administratorii bazei de date pot folosi o combinație de masterat SQL Server Management Studio (SSMS) și script-uri pentru a implementa și de a sprijini replicarea tranzacțională. Dacă sunt grave cu privire la sprijinirea replicare pentru aplicații critice, un aspect bun la ambele metode. Utilizați expertul pentru a crea rapid script-uri înainte, și apoi să le testeze și să facă modificările necesare. Utilizați script-uri pentru a automatiza de implementare, verificați setările dorite, și recuperarea rapidă. De exemplu, în cursul acestei replicare desfășurare de test, am recomandăm să utilizați un scenarii paralele pentru diferitele ecrane ale expertului, astfel încât să puteți vedea ce se întâmplă „în spatele scenei“ procesului.