Skip to content

Instantly share code, notes, and snippets.

View SQLDBAWithABeard's full-sized avatar
🦄
Generally bearding

Rob Sewell SQLDBAWithABeard

🦄
Generally bearding
View GitHub Profile
@SQLDBAWithABeard
SQLDBAWithABeard / chocolately.ps1
Last active April 13, 2022 14:39
Laptop install
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
choco install chocolatey -y
choco install 1password -y
choco install azure-data-studio -y
choco install azure-functions-core-tools-3 -y
choco install azure-cli -y
choco install bicep -y
choco install chocolatey-core.extension -y
@SQLDBAWithABeard
SQLDBAWithABeard / findsqlpackagepath.ps1
Created March 12, 2019 20:50
compare dacpac and generate report in azure devops
#
# from https://raw.githubusercontent.com/Microsoft/vsts-tasks/master/Tasks/SqlAzureDacpacDeploymentV1/FindSqlPackagePath.ps1
#
function Get-SqlPackageOnTargetMachine
{
try
{
$sqlDacPath, $sqlVersion = Locate-HighestVersionSqlPackageWithSql
$sqlVersionNumber = [decimal] $sqlVersion
@SQLDBAWithABeard
SQLDBAWithABeard / profile.ps1
Last active November 30, 2020 18:32
Prompt
[System.Console]::OutputEncoding = [System.Text.Encoding]::ASCII
# borrowing heavily from https://dbatools.io/prompt but formatting the execution time without using the DbaTimeSpanPretty C# type
function Prompt {
if($PSVersionTable.PSVersion.Major -eq 6){
Write-Host (Get-Date -Format "PS 6 ") -ForegroundColor Yellow -NoNewline
}
elseif($PSVersionTable.PSVersion.Major -eq 5){
Write-Host (Get-Date -Format "PS 5 ") -ForegroundColor Yellow -NoNewline
}
elseif($PSVersionTable.PSVersion.Major -eq 7){
@SQLDBAWithABeard
SQLDBAWithABeard / docker-compose.yml
Created January 19, 2019 16:36
docker-compose.yml
version: '3.7'
services:
sql2012:
image: dbafromthecold/sqlserver2012dev:sp4
ports:
- "15589:1433"
environment:
SA_PASSWORD: "Password0!"
ACCEPT_EULA: "Y"
@SQLDBAWithABeard
SQLDBAWithABeard / Invoke-SqlFailoverDetection
Last active October 15, 2021 14:47
Invoke-SqlFailoverDetection
<#
.SYNOPSIS
Downloads the Failover Detection Utility from the Tiger Team GitHub repo
https://github.com/Microsoft/tigertoolbox/tree/master/Always-On/FailoverDetection,
creates the configuration json and gathers all the required data
.DESCRIPTION
Downloads the Failover Detection Utility from the tiger teams GitHub Repo,
https://github.com/Microsoft/tigertoolbox/tree/master/Always-On/FailoverDetection
creates the configuration json dynamically depending on the SQL Instance
@SQLDBAWithABeard
SQLDBAWithABeard / testing examples code
Created September 30, 2018 07:13
testiong examples code
$Function = 'Get-DbcCheck'
Describe "$Function" {
Context "Checking $Function Examples" {
$Examples = Get-Help $Function -Examples
foreach ($examplecode in $Examples.examples.example.Code) {
It "Example Code $examplecode should not throw" {
{$examplecode} | Should -Not -Throw
}
@SQLDBAWithABeard
SQLDBAWithABeard / Setting services
Created September 30, 2018 06:29
Setting services
$vms.ForEach{
Write-Output "Looking at VM $psitem"
# Get the Engine Services
$EngineServices = Get-DbaService -ComputerName $psitem -Type Engine
# Loop through the engine services
$EngineServices.ForEach{
$ComputerName = $psitem.ComputerName
$Name = $Psitem.ServiceName
$InstanceName = $psitem.InstanceName
@SQLDBAWithABeard
SQLDBAWithABeard / restore database
Created June 21, 2018 11:54
Restore-DbaDatabase, timings and error handling
$file = ## whatever Get-ChildItem or path
$Instance
$JobName = 'Restore' + (Get-Random).ToString()
$Date = (Get-Date).DateTime.ToString()
$msg = "$Date - Starting Job $JobName to restore the database"
## LoggingFunction $msg
$pscmdlet.WriteVerbose($msg)
Describe " This is a test"{
Context "Scoping my tests" {
$Drives = (Get-PSDrive -PSProvider FileSystem | Where-Object {$_.Name.Length -eq 1}).Name
$TestCases = @()
$Drives.ForEach{
$Testcases += @{'DriveLetter' = "$($_):"}
}
It "Checking if bitlocker is fully encrypted on Drive <DriveLetter>" -TestCases $Testcases {
Param($DriveLetter)
@SQLDBAWithABeard
SQLDBAWithABeard / gist:1fb7419b010a48b322735dd806c3c3e4
Created November 28, 2017 13:46
All hail Lee Holmes - This is his Test-PSRemoting function
function Test-PsRemoting
{
# Written by Lee Holmes - http://www.leeholmes.com/blog/2009/11/20/testing-for-powershell-remoting-test-psremoting/
param(
[Parameter(Mandatory = $true)]
$computername
)
try
{