Welcome to Sign in | Help
in Search

Mutare fisiere ale bazei de date

Last post 11-09-2009, 9:19 PM by claudiu3001. 7 replies.
Sort Posts: Previous Next
  •  11-05-2009, 3:31 PM 7794

    Mutare fisiere ale bazei de date

    Salut.
           Mai am si eu o intrebare. As dori sa mut un fisier al tabelei (al unui filegroup) pe alt disk/partitie. Fisierul contine o partitie a unei tabele partitionate. Se presupune ca fisierul contine date vechi, filegroup-ul fiind read only. As vrea sa stiu daca pot muta fisierul fara a-i modifica numele path-ului (si sa dau pun bd pe offline pana mut fisierul) sau fara a face restore la respectivul filegroup cu optionea "move to". Pe mine m-ar interesa ca baza de date sa fie tot timpul online.
    Ms anticipat, Claudiu.
    P.S.: Am creat si un index nonclustered  partitionat dupa schema de partitionare a indexului clustered (filegroup-uri diferite). E vreo diferenta  de performanta intre un index nonclustered partitionat dupa coloana cluster sau un index nonclustered nepartitionat? Are sens sa fac asa ceva?:)

  •  11-05-2009, 7:18 PM 7796 in reply to 7794

    Re: Mutare fisiere ale bazei de date

  •  11-05-2009, 7:41 PM 7797 in reply to 7796

    Re: Mutare fisiere ale bazei de date

    pe mine ma intereseaza cum sa mut un fisier al filegroup-ului pe alt disk. parititia in cazul asta se refera la partitia tabelei(1,2,3,...). Nu cred ca ma ajuta ce ai zis tu, eu caut altceva: o modalitate diferita de cele 2 prezentate de mine de a muta un fisier(D:\path1 to G:\Path2) fara a afecta activitatea asupra bazei de date.
  •  11-05-2009, 11:47 PM 7799 in reply to 7794

    Re: Mutare fisiere ale bazei de date

    După câte ştiu, nu se poate muta un fişier al unei baze de date în altă locaţie, fără a face baza de date offline în acest timp. Vezi:
    Moving User Databases

    Răzvan
  •  11-06-2009, 5:22 PM 7801 in reply to 7797

    Re: Mutare fisiere ale bazei de date

    Incerca cu detach.
  •  11-06-2009, 6:38 PM 7802 in reply to 7801

    Re: Mutare fisiere ale bazei de date

    werty80:
    Incerca cu detach.

    Şi baza de date să fie online ?

    În momentul acesta singurele soluţii (teoretice) cred că ar fi un cluster activ/pasiv  sau database mirroring configurat pentru high availability. Totuşi, bănuiesc că nu e cazul.
  •  11-06-2009, 11:51 PM 7803 in reply to 7794

    Re: Mutare fisiere ale bazei de date

    claudiu3001:
    Fisierul contine o partitie a unei tabele partitionate. Se presupune ca fisierul contine date vechi, filegroup-ul fiind read only.


    Daca e un filegroup separat si read-only poti face la modul urmator:
    1) copieaza fiesierul in noua locatie
    2) ruleaza ALTER DATABASE dbname MODIFY FILE (name=numelogic, filename='nouacale'). Asta va schimba informatia unde este NDF-ul pe disc, dar doar in catalog, baza de date va ramine online si neschimbata.
    3) ALTER DATABASE dbname MODIFY FILE (name=numelogic, OFFLINE);. Asta va pune filegroup-ul offline, dar restul bazei de date va ramine online.
    4) RESTORE DATABASE dbname FILEGROUP='numefilegroup' WITH RECOVERY; Asta i-tzi va pune filegroup-ul innapoi online.
    5) sterge vechiul fisier.

    Baza de date nu va fi offline, dar la pasul 4 va avea nevoie de access exclusiv pentru un foarte scurt moemnt, in care toti ceilalti user trebuie deconectati de la baza de date. Intre pasul 3 si 4 partitia care e pe acel filegroup offline nu va putea fi accesata. Asta e o metoda relativ simpla cu timp mic de downtime.

    Daca vrei absolut 0 downtime e mai complicat:

    1) creaza un nou filegroup pe noul disc.
    2) creaza in noul filegroup o tabela absolut identica ca structura cu tabela veche (inclusiv indecsi, si check constraints)
    3) copiaza datele din partitia veche a tabelei in tabela de pe noul filegroup
    4) Fa ALTER TABLE ... SWITCH PARTITION ca sa faci 'switch' intre partitia veche si tabela din noul filegroup, care devine astfel parte a tabelei original.
    5) Fa drop la filegroup-ul vechi.

    Methoda asta e mai complicata si depinde de cum ai facut alinierea indecsilor. Daca ai incurcat indecsii, nu o sa poti face pasul 4) de switch, contacteza un specialist ca sa te ajute.
    http://rusanu.com
  •  11-09-2009, 9:19 PM 7812 in reply to 7803

    Re: Mutare fisiere ale bazei de date

    Multumesc de raspunsuri, dar am gasit o metoda. Online restore pentru filegroup-uri read only. Trebuie backup la filegroup si am facut restore cu optiunea move to. Acum o ora am testat si mi-a mers. Ms mult inca odata:)
View as RSS news feed in XML
Powered by Community Server (Commercial Edition), by Telligent Systems