publishing database changes sql server using microsoft tfs
W tym samouczku wyjaśniono szczegółowo, jak utworzyć projekt bazy danych programu SQL Server w programie TFS i udostępnić projekt w repozytorium Microsoft TFS:
W samouczkach z serii DevOps opublikowanych @ Samouczek DevOps , studiowaliśmy na temat ciągłej integracji i automatyzacji ciągłego dostarczania dla Java i .Net dla wdrożeń lokalnych i chmurowych aplikacji.
Wśród narzędzi, które omówiliśmy, są Microsoft VSTS z Azure, Amazon Web Services i Ansible. Seria koncentrowała się na zmianach w kodzie źródłowym i na tym, jak skutecznie został on wdrożony w różnych środowiskach. Ale kiedy mówimy o tworzeniu aplikacji trójwarstwowych, baza danych również byłaby zaangażowana i będziemy musieli zastosować te same techniki do zmian związanych z bazą danych.
Czego się nauczysz:
Microsoft Team Foundation Server 2015 i SQL Server 2014
W tym artykule skupimy się na takich obszarach, jak wykorzystanie programu Visual Studio 2015 do programowania, tworzenie projektów bazy danych SQL Server zawierających definicję bazy danych, tworzenie definicji kompilacji w celu opublikowania zmian w programie SQL Server itp. Przy użyciu Microsoft Team Foundation Server 2015 i SQL Server 2014.
Ostatecznie więc musimy również efektywnie zarządzać skryptami bazy danych i ich zmianami.
Utwórz projekt bazy danych programu SQL Server w programie TFS
Zacznijmy od utworzenia projektu bazy danych w programie Visual Studio. Uruchom program Visual Studio 2015 i utwórz projekt bazy danych, jak pokazano na poniższym obrazku, używając Plik-> Nowy -> Projekt . Wpisz nazwę i kliknij OK.
Dodaj nowy folder i nazwij go Tabele. Ten folder będzie zawierał wszystkie nasze pliki SQL. Kliknij prawym przyciskiem myszy projekt i wybierz Dodaj-> Nowy folder.
Utworzony folder jest wyświetlany w Eksploratorze rozwiązań. Dodaj tutaj nową tabelę i odpowiednio zdefiniuj kolumny.
Kliknij prawym przyciskiem myszy folder tabeli i wybierz Dodaj-> Tabela jak pokazano na poniższym obrazku.
Wchodzić Nazwa tak jak Pracownik z wybraną opcją Tabela. Kliknij Dodaj.
Dodaj kilka kolumn, jak pokazano w widoku Projekt.
Jeśli masz istniejące pliki SQL, możesz je również zaimportować, klikając prawym przyciskiem myszy projekt bazy danych i wybierając Importuj skrypt (* .SQL)
Podobnie, Dodaj -> Procedura składowana do folderu, jak pokazano poniżej.
Ostateczna struktura, jak pokazano w projekcie bazy danych, będzie wyglądać jak na poniższym obrazku.
Tak więc, zwykle dla każdej wersji i jako programista, będziemy wprowadzać zmiany w tabelach lub procedurach składowanych, a program Visual Studio zapewni, że skrypty są odpowiednio modyfikowane, aby zapewnić synchronizację zmian bazy danych ze skryptami. Musimy publikować te zmiany lub stale wdrażać zmiany w sposób zautomatyzowany w bazie danych SQL Server.
Aby to zrobić, opublikuj plik profilu, który jest plikiem XML i zawiera wszystkie informacje, takie jak nazwa bazy danych, parametry połączenia itp., Które są potrzebne do wdrożenia na serwerze SQL.
Gdy plik XML będzie dostępny, użyjemy definicji kompilacji Microsoft TFS, aby automatycznie opublikować zmiany w bazie danych programu SQL Server na podstawie każdego wpisu lub zgodnie z harmonogramem.
W instalacji SQL Server utworzyliśmy pusty plik Baza danych, na przykład, Pracownik, którego będziemy używać do publikowania.
Teraz utwórz plik profilu publikowania przy użyciu programu Visual Studio. Kliknij prawym przyciskiem myszy projekt bazy danych i wybierz Publikować.
Edytuj i wybierz połączenie z bazą danych pracowników na serwerze SQL.
Kliknij przycisk Zapisz profil jako aby zapisać profil w projekcie. Możesz zobaczyć plik o nazwie Employee.publish.xml jest tworzone. Możesz także ręcznie wdrożyć zmiany, klikając przycisk Publikuj, ale tutaj zautomatyzujemy zmiany, które mają zostać opublikowane.
Wybierz Anuluj opcja na razie po zapisaniu profilu.
Otwórz plik w edytorze XML i możesz zobaczyć bazę danych i parametry połączenia. Dodaj klucz ręcznie jako hasło i podaj hasło dla podanego identyfikatora użytkownika. Jest to potrzebne do połączenia z bazą danych SQL Server.
Ponieważ dostęp do hasła jest łatwy, zobaczymy, jak zamaskować to samo w definicji kompilacji za pomocą wtyczki Replace Token.
True Employee Employee.sql Data Source=l-0310;Persist Security Info=False;User ID=sa; Password=;Pooling=False;MultipleActiveResultSets=False;Connect Timeout=60;Encrypt=False;TrustServerCertificate=True 1
Upewnij się również, że wybrano odpowiednią wersję programu SQL Server do użycia w tym projekcie bazy danych, w przeciwnym razie opublikowane dane będą zawierały błędy. Kliknij prawym przyciskiem myszy projekt bazy danych (Pracownik) i wybierz Nieruchomości . Wybierz odpowiednią wersję iw tym przypadku jest to wersja 2014. Zapisać (Ctrl + S) zmiany po wykonaniu.
Wybierz SQL Server 2014 jako platformę docelową i zapisz rozwiązanie.
Aby użyć projektu w definicji kompilacji TFS, musimy udostępnić projekt w repozytorium TFS. Kliknij rozwiązanie prawym przyciskiem myszy i wybierz Dodaj rozwiązanie do kontroli źródła. Przejdź do Team Explorer -> Oczekujące zmiany i Zameldować się rozwiązanie.
Projekt powinien być teraz dostępny w TFS.
Utwórz definicję kompilacji, aby zautomatyzować publikowanie
Mamy teraz projekt bazy danych zarejestrowany w TFS, a każda zmiana wprowadzona przez programistę w tabeli lub procedurach składowanych zostanie automatycznie opublikowana w programie SQL Server bez jakiejkolwiek ręcznej interwencji przy użyciu definicji kompilacji przy każdym zameldowaniu lub na podstawie harmonogramu .
Najpierw zmodyfikuj publikowany plik XML, aby dodać token dla klucza hasła, jak pokazano poniżej. Wpisz wszelkie wprowadzone zmiany.
True Employee Employee.sql Data Source=l-0310;Persist Security Info=False;User ID=sa;Password=#{DBPWD}#;Pooling=False;MultipleActiveResultSets=False;Connect Timeout=60;Encrypt=False;TrustServerCertificate=True 1
W programie TFS przejdź do HUB kompilacji i utwórz pustą definicję kompilacji.
W definicji kompilacji najpierw dodaj rozszerzenie Krok Zastąp tokeny i skonfiguruj, jak pokazano na poniższym obrazku, ponieważ zmienna hasła musi być zamaskowana. Jeśli chcesz pobrać wtyczkę do wymiany tokenów, możesz pobrać i zainstalować to samo dla Microsoft TFS 2015 z GitHub - zamień tokeny
jak stworzyć tablicę obiektów
Przejdź do zakładki Variables i dodaj zmienną jak w pliku XML do publikacji tj. DBPWD z wartością hasła dla do identyfikator użytkownika. Kliknij na zamek i zaznacz pole wyboru Zezwalaj w czasie kolejki. Zapisz definicję kompilacji.
Następnie Dodaj krok kompilacji programu Visual Studio. Wybierz Rozwiązanie Visual Studio i wejdź do Argumenty kompilacji MS jak pokazano na poniższym obrazku, aby zbudować i opublikować zmiany.
/ t: build / t: opublikuj /p:SqlPublishProfilePath=Employee.publish.xml
Ustaw w kolejce lub wyzwalaj kompilację i sprawdź zmiany opublikowane w programie SQL Server. W przypadku procesu kompilacji agent byłby potrzebny do uruchomienia na komputerze, na którym jest zainstalowany program SQL Server.
rekomendowane lektury w sprawie instalowania i konfigurowania agentów dla Microsoft TFS 2015 @ Microsoft-TFS-2015
Otwórz SQL Server 2014 Management Studio, kliknij prawym przyciskiem myszy bazę danych, uruchom zapytanie w bazie danych i poszukaj zmian, które zostaną opublikowane po uruchomieniu kompilacji.
Jak widać, po raz pierwszy tabele i procedury składowane są publikowane za pośrednictwem zautomatyzowanego procesu kompilacji w programie TFS. Aby zaprezentować w bazie danych ciągłą integrację i zautomatyzowany proces publikowania, dokonaj zmian w tabeli i ponownie uruchom kompilację.
W tabeli dodaliśmy jeszcze jedną kolumnę.
Ustaw ponownie kompilację w kolejce i sprawdź, czy zmiany zostały pomyślnie opublikowane, czy nie. Do tabeli dodano kolumnę Kraj. Zobacz obrazek poniżej.
Jeśli chcesz przejrzeć bazę danych, tabele itp. Z samego programu Visual Studio, przejdź do Widok-> Eksplorator obiektów SQL Server do przeglądania bazy danych, która ma hierarchię podobną do SQL Server.
Wniosek
Widzieliśmy proste, ale wydajne rozwiązanie do ciągłego publikowania zmian bazy danych w programie SQL Server przy użyciu programu Microsoft TFS 2015 przy każdym wpisie lub na podstawie harmonogramu kompilacji. Wszystkie tabele lub procedury składowane lub widoki są dodawane lub aktualizowane na podstawie tych zmian, a program Visual Studio odpowiednio tworzy lub zmienia skrypty SQL.
W skrócie, zarządzanie dużymi bazami danych i publikowanie zmian stało się łatwe dzięki pomocy projektów baz danych programu Visual Studio i Microsoft Team Foundation Server.
rekomendowane lektury
- Samouczek TFS: TFS do automatyzacji kompilacji, testowania i wdrażania projektów .NET
- Jak używać Microsoft TFS dla projektów JAVA z Eclipse w DevOps
- Planowanie zwinne z Microsoft Team Foundation Server (TFS)
- Tworzenie aplikacji bazodanowych Oracle: Oracle SQL i PL / SQL
- Samouczek dotyczący bazy danych Oracle - co to jest baza danych Oracle?
- MySQL Create Database - Jak utworzyć bazę danych w MySQL
- Samouczek dotyczący tworzenia bazy danych MongoDB
- Różnica między SQL a MySQL i SQL Server (z przykładami)