Fala Pessoal!
Dando sequencia a série de Powershell para DBAs SQL Server neste vídeo em 20 minutos eu mostro um pouco de como fazer algumas coletas principalmente relacionadas a virtualização. Veja o vídeo no link: https://youtu.be/Uw4fDhYUPqI
Conforme eu relatei no vídeo acho essencial para qualquer DBA criar uma série de scripts para ajudar a coletar dados dos servidores. O Powershell é perfeito para isso, pois podemos utilizar um script para coletar diversos servidores ao mesmo tempo.
Veja os scripts abaixo:
Primeira parte
###PS para DBAs SQL Server - Vídeo 10
###VM, HD, Memória e etc
#virtualizador
Get-VMHost| Select-Object *
Get-Vmhost | Select-Object name, memorycapacity, status
#dados da VM
get-vm
get-vm -Name win* | Select-Object * | Format-Table
get-vm -Name win2016 | Select-Object -ExpandProperty harddrives | Select-Object *
get-vm -Name win2016 | Select-Object -ExpandProperty harddrives | Select-Object vmname, path, computername
#Memória
Get-VMMemory -VMName win2016 | Select-Object *
C:\VMs\Win2016
#VHD
New-VHD -Path "C:\VMs\Win2016\dados.vhdx" -ComputerName surfacebook -Fixed 1Gb
#adicona o disco a vm
Add-VMHardDiskDrive -VMName win2016 -ComputerName surfacebook -Path "C:\vms\Win2016\dados.vhdx"
#consulta o vhd
Get-VMHardDiskDrive -VMName win2016 -ControllerType SCSI
#remove o disco da vm
Remove-VMHardDiskDrive -VMName win2016 -ComputerName surfacebook -ControllerType SCSI -ControllerNumber 0 -ControllerLocation 2
#o disco?
get-childitem C:\vms\Win2016
Get-VMHardDiskDrive -ComputerName surfacebook -VMName win2016 | Select-Object *
#resize do vhd
Resize-VHD -path "C:\vms\Win2016\dados.vhdx" -SizeBytes 1.1GB
#start, stop e etc
Get-VM
get-vm win*
Save-VM win10
get-vm win10
start-vm win10
get-vm win10
restart-vm win10
get-vm win10
suspend-vm win10
get-vm win10
Resume-VM win10
get-vm win* | Select-Object status, vmname
#valida se o disco esta em estado usável
Test-VHD -Path "C:\vms\Win2016\dados.vhdx"
#disco local
Get-WmiObject -Class Win32_DiskDrive -ComputerName surfacebook |
Format-List DeviceID, Status,
Index, InterfaceType,
Partitions, BytesPerSector, SectorsPerTrack, TracksPerCylinder,
TotalHeads, TotalCylinders, TotalTracks, TotalSectors,
@{Name="Disk Size (GB)"; Expression={"{0:F3}" -f $($_.Size/1GB)}}
#arquivos do SQL
#abrir no win10
mstsc /v:win10
Segunda Parte:
<div>Enter-PSSession -ComputerName win2016 -Credential sqlcrespi\administrator</div> <div>###Disco Get-Disk | Select-Object * get-disk -Number 1</div> <div> #Remove todas as particoes clear-disk -Number 1</div> <div>#inicializa o disco Initialize-Disk -Number 1 -PartitionStyle gpt get-disk -Number 1 clear-disk -Number 1 -RemoveData</div> <div>#Partição Get-Disk | Where-Object PartitionStyle -eq "raw"</div> <div>Initialize-Disk -Number 1 -PassThru | New-Partition -AssignDriveLetter -UseMaximumSize | format-volume</div> <div> set-location e: Get-ChildItem</div> <div>Exit-PSSession</div>
Se curtiram o post deem um like no vídeo, assinem o canal, mandem críticas, sugestões e dúvidas.
Abraço, Rodrigo
