Welcome to Sign in | Help
in Search

Restore automat la DB-uri multiple

Last post 10-14-2008, 12:12 PM by shiva. 10 replies.
Sort Posts: Previous Next
  •  10-07-2008, 10:26 AM 5763

    Restore automat la DB-uri multiple

    Trebuie sa fac un Restore Plan, pentru mai multe DB-uri, astfel incat, DB-urile sa fie up and running in cel mai scurt timp.
    DB-urile sunt pe un alt server, unde li se face backup automat in fiecare noapte prin urmare, nu am acces, pe serverul meu, la backupfile, backupmediafamily, backupmediaset, backupset, pentru a aplica exemplul de-aici.
    DB-urile sunt: una master, care contine o tabela cu restul db-urilor si DB-urile client. Dupa restore, ar trebui sa se verifice existenta unui login, sa se mapeze loginul la un user specific al fiecarei DB client si sa se dea drepturi de executie pe proceduri stocate pt. fiecare user, pe DB-ul sau.

    Mi-ar place sa realizez asta printr-un maintenance plan, dar nu prea am idei cum.
    Mersi.
    Filed under:
  •  10-07-2008, 10:31 AM 5764 in reply to 5763

    Re: Restore automat la DB-uri multiple

    shiva:
    Trebuie sa fac un Restore Plan, pentru mai multe DB-uri, astfel incat, DB-urile sa fie up and running in cel mai scurt timp.
    DB-urile sunt pe un alt server, unde li se face backup automat in fiecare noapte prin urmare, nu am acces, pe serverul meu, la backupfile, backupmediafamily, backupmediaset, backupset, pentru a aplica exemplul de-aici.
    DB-urile sunt: una master, care contine o tabela cu restul db-urilor si DB-urile client. Dupa restore, ar trebui sa se verifice existenta unui login, sa se mapeze loginul la un user specific al fiecarei DB client si sa se dea drepturi de executie pe proceduri stocate pt. fiecare user, pe DB-ul sau.

    Mi-ar place sa realizez asta printr-un maintenance plan, dar nu prea am idei cum.
    Mersi.

    Daca e pentru SQL 2005 , ti-as recomanda un SSIS - cu un scriptulete in VB.NET

    Ignat Andrei
    http://serviciipeweb.ro/iafblog
  •  10-07-2008, 10:59 AM 5765 in reply to 5764

    Re: Restore automat la DB-uri multiple

    Astea-s limbi straine pentru mine. Sunt a simple developer, care trebuie sa faca treaba unui DBA. Stick out tongue
    E, intradevar, vorba despre SQL Server 2005.

    So, SSIS e ceva mai mult decat DTS-urile cu care am lucrat acum 3 ani. Integration Services service nu e instalat pe serverul in cauza deci adio management din SQL Management Studio.
    Exista SQL Server Business Intelligence Development Studio pentru SQL Server 2005 Express? Din cate stiu, e necesar instalarea toolkitului, dar mie tot imi lipseste IDE-ul. Btw, am VS 2008 instalat, si nu VS 2005.

    Pfff, e mult de studiat aici... Sunt o gramada maaare de ControlFlowItems si alte chestii Surprise. Ai cumva linkuri spre ceva tutoriale mai compacte decat cele din SQL Books Online?
    MS.

  •  10-07-2008, 1:03 PM 5766 in reply to 5765

    Re: Restore automat la DB-uri multiple

    shiva:
    Integration Services service nu e instalat pe serverul in cauza deci adio management din SQL Management Studio.

    Whatever ... atunci nu merge solutia mea( care era tocmai de developer: adaugai un Script control si scriai codul in el, ca aici
    http://www.codebeach.com/tutorials/sql-server-integration-services-your-first-script-component.asp)


    Ignat Andrei
    http://serviciipeweb.ro/iafblog
  •  10-07-2008, 2:15 PM 5767 in reply to 5765

    Re: Restore automat la DB-uri multiple

  •  10-08-2008, 11:39 AM 5769 in reply to 5767

    Re: Restore automat la DB-uri multiple

    Cu SMO e mai simplu, dar am niste nelamuriri:
    - in documentatie e specificat ca Database.Users suporta proprietatea Item, adica ar trebui sa pot accesa db.Users("nume_user"). Dar nu merge. Trebuie sa parcurg toata colectia ca sa ajung la userul dorit.
    - acceasi problema si cu Database.Logins
    - problema 3: daca restaurez un db, userul db-ului nu mai e mapat la login si solutia aplicata pana acuma a fost stergerea db userului si remapare. Se poate face mai simplu in SMO? Daca da, cum?

    L.E:
    Primesc eroarea Failed to connect to server bla-bla, Source: Microsoft.SqlServer.ConnectionInfo, StackTrace:    at Microsoft.SqlServer.Management.Common.ConnectionManager.Connect()
       at Microsoft.SqlServer.Management.Common.ConnectionManager.PoolConnect()
       at Microsoft.SqlServer.Management.Common.ConnectionManager.get_ServerVersion()
       at Microsoft.SqlServer.Management.Smo.ExecutionManager.get_ServerVersion()
       at Microsoft.SqlServer.Management.Smo.SqlSmoObject.GetDbComparer(Boolean inServer)
       at Microsoft.SqlServer.Management.Smo.SqlSmoObject.InitializeStringComparer()
       at Microsoft.SqlServer.Management.Smo.AbstractCollectionBase.get_StringComparer()
       at Microsoft.SqlServer.Management.Smo.SimpleObjectCollectionBase.InitInnerCollection()
       at Microsoft.SqlServer.Management.Smo.SmoCollectionBase.get_InternalStorage()
       at Microsoft.SqlServer.Management.Smo.SmoCollectionBase.GetObjectByKey(ObjectKeyBase key)
       at Microsoft.SqlServer.Management.Smo.DatabaseCollection.get_Item(String name)

    Din ce am gasit pe net, trebuie schimbat windows account-ul sub care ruleaza SQLAgent. Nu se poate face si altfel?
  •  10-09-2008, 4:01 PM 5770 in reply to 5769

    Re: Restore automat la DB-uri multiple

    Din pacate nu am lucrat cu SMO in ultimul timp, iar exemplele din MSDN sunt sublime, dar cam lipsesc...

    Poti incerca sa setezi proprietatea "login" a userului fara sa stergi userul - http://technet.microsoft.com/en-us/library/microsoft.sqlserver.management.smo.user.login.aspx

    Pentru ce iti trebuie SQLAgent?

     

  •  10-10-2008, 1:09 PM 5771 in reply to 5770

    Re: Restore automat la DB-uri multiple

    Diana:

    Din pacate nu am lucrat cu SMO in ultimul timp, iar exemplele din MSDN sunt sublime, dar cam lipsesc...

    Poti incerca sa setezi proprietatea "login" a userului fara sa stergi userul - http://technet.microsoft.com/en-us/library/microsoft.sqlserver.management.smo.user.login.aspx

    Pentru ce iti trebuie SQLAgent?

     

    daca am inteles eu bine tu ai nevoie deun proces automat care sa faca toate chestiile alea.

    Cel mai simplu mi se pare sa faci un job sql server si folsind TSQL poti face toate taskurile alea.

    Resataurarea se face cu comanda tsql restore

    Ai grija sa dai acces userului sub care ruleaza sql agent la folderul sau shareul daca e in retea unde sunt fisierele backup


    Secolul XXI ori va fi religios ori nu va fi deloc
  •  10-11-2008, 10:17 AM 5777 in reply to 5771

    Re: Restore automat la DB-uri multiple

    Am facut cu SMO, si am stat 3 zile investigand eroarea "Could not connect to server"Angry. Pentru a elimina problema asta, trebuie folosita clasa ServerConnection.
    Asa da:
    1
    2
    ServerConnection sqlConnection = new ServerConnection(connection_string);
    Server sqlServer = new Server( sqlConnection);
    Asa nu:
    1
    Server sqlServer = new Server(connection_string);
    , desi, in subtirica documentatie a SMO din MSDN, se zice ca nu e obligatoriu folosirea clasei ServerConnection. N-o fi obligatoriu, insa e foarte necesar :)


  •  10-13-2008, 11:11 AM 5788 in reply to 5771

    Re: Restore automat la DB-uri multiple

    crestinul:
    Diana:

    Din pacate nu am lucrat cu SMO in ultimul timp, iar exemplele din MSDN sunt sublime, dar cam lipsesc...

    Poti incerca sa setezi proprietatea "login" a userului fara sa stergi userul - http://technet.microsoft.com/en-us/library/microsoft.sqlserver.management.smo.user.login.aspx

    Pentru ce iti trebuie SQLAgent?

     

    daca am inteles eu bine tu ai nevoie deun proces automat care sa faca toate chestiile alea.

    Cel mai simplu mi se pare sa faci un job sql server si folsind TSQL poti face toate taskurile alea.

    Resataurarea se face cu comanda tsql restore

    Ai grija sa dai acces userului sub care ruleaza sql agent la folderul sau shareul daca e in retea unde sunt fisierele backup

    Mai exista si alte metode de "scheduling", de exemplu "Scheduled Tasks" din Control Panel sau Service Broker.

     

  •  10-14-2008, 12:12 PM 5817 in reply to 5788

    Re: Restore automat la DB-uri multiple

    Da, de un proces automat, dar nu scheduled. Doar sa putem sa-l rulam de "manuta" si sa se ocupe el de toate detaliile de restore si user rights, care sunt consumatoare de timp.
View as RSS news feed in XML
Powered by Community Server (Commercial Edition), by Telligent Systems