SMO (SQL Management Object) to biblioteki .NET pozwalające na pracę z SQL server. Ponieważ PowerShell świetnie integruje się z .NET, to jednym ze sposobów pracy z SQL jest właśnie SMO. Mając do dyspozycji również SQL Provider administratorzy zapewne chętniej wybiorą pracę z modułem SQLPS, jednak dla programistów SMO może być dość ciekawe… Na stronie https://msdn.microsoft.com/en-us/library/ms162209.aspx znajduje […]
Archiwum dla kategorii ‘Powershell i SQL’
Powershell i SQL 15 – trochę teorii o SMO
Powershell i SQL 14 – Tworzenie bazy danych z wykorzystaniem SMO
Ponieważ SMO jest warstwą wykorzystywaną także przez SQL Server Management Studio, to praktycznie wszystkie rzeczy jakie można zrobić korzystając z SSMS można też wykonać korzystając z SMO. Poniższy przykład ilustruje jak utworzyć bazę danych zmieniając jej ustawienia domyślne. Zaczynamy od załadowania SMO i podłączenia się do określonej instancji SQL [Reflection.Assembly]::LoadWithPartialName(„Microsoft.SqlServer.SMO”) $SqlServer = New-Object Microsoft.SqlServer.Management.Smo.Server localhost […]
Powershell i SQL 13 – Invoke-SqlCmd
Polecenia dostępne w module pssql pozwalają na administracji High Avaialbility, Azure, zarzadzanie backupami oraz na wykonywanie ogólnych zadań związanych po prostu z SQL. Na początku właśnie te dwie ostatnie grupy są najbardziej interesujące. Chyba najbardziej uniwersalnym poleceniem jest Invoke-Sqlcmd. Polecenie pozwala uruchamiać zarówno polecenia przekazywane jako tekst ale również może uruchamiać skrypty znajdujące się w […]
Powershell i SQL 12 – korzystanie z napędu SQLSERVER:\
Po załadowaniu modułu w systemie pojawił się nowy provider pozwalający na uzyskiwanie dostępu do obiektów bazodanowych tak jakby były one folderami i plikami w specjalnym systemie plików. Obecność providera oraz wirtualnego dysku można sprawdzić poleceniami Get-PSProvider oraz Get-PSDrive: Po przejściu poleceniem cd na nowy dysk sqlserver:\ można wydawać normalne polecenia jak ls czy cd pozwalające […]
Powershell i SQL 11 – Moduł SQLPS
Moduł SQLPS to dedykowany moduł pozwalający na korzystanie z SQL z poziomu PowerShell. Składa się on z SQL Server Provider, który dalej udostępnia wirtualny napęd SQLPS: oraz z dedykowanych cmdletów. Aby rozpocząć korzystanie z SQLPS skorzystaj z polecenia: Import-Module SQLPS Podczas ładowaniu modułu możesz zauważyć ostrzeżenie. Nie musisz się nim przejmować, bo komunikat mówi, że […]
Powershell i SQL 10 – obsługa błędów w skrypcie
Jeśli znasz ogólne zasady obsługi błędów w powershell, to nie odkryję tutaj dla Ciebie żadnej nowej filozofii. Jeśli jednak szukasz ogólnej informacji „jak poradzić sobie z błędem w skrypcie” to czytaj dalej. Zaczynamy od Import-Module sqlps Wypróbuj działanie komend wybierających kontekst nieistniejącego serwera SQL lub nieistniejącej bazy danych: Set-Location SQLSERVER:\localhost\default\databases\foobardb -ErrorAction Stop; Write-Host -foregroundcolor Yellow […]
Powershell i SQL 09 – czytanie ERRORLOG
Ulubioną lekturą MSSQL DBA jest plik errorlog. Można go oczytywać w SQL Server Management Studio, z wykorzystaniem sp_readerrorlog, ale da się też z powershella. Jak zwykle zaczynamy od stworzenia obiektu SMO odpowiadającego za naszą instancję SQL: $server = New-Object -type Microsoft.SqlServer.Management.Smo.Server -ArgumentList localhost Do odczytania błędów skorzystaj z: $err = $server.ReadErrorLog() Najważniejsze właściwościi tak uzyskanego […]