PowerShell-笔记

1. 导入、导出注册表项内容并存储为reg文件

    reg export 注册表键值对路径 导出文件路径, reg export HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\MSSQLServer\Client\ConnectTo C:\test_32bit.reg

    reg import reg文件路径, reg import C:\test_32bit.reg

2. 检查端口是否是通的

    Test-NetConnection 'IP address' -port 139

 3. Windows OS升级后,SQL Server配置管理工具在开始菜单找不到 且 在C盘安装目录找到SQLServerManagerxx.msc文件,提示错误,执行修复脚本

function createShortcut {

param ([string]$TargetFile, [string]$ShortcutFile)
$WScriptShell = New-Object -ComObject WScript.Shell
$Shortcut = $WScriptShell.CreateShortcut($ShortcutFile)
$Shortcut.TargetPath = $TargetFile
$Shortcut.Save()
echo 'Created SQL Server Configuration Manager shortcut'
}

#mannual input sql server version
#$SQLVersion= Read-Host -Prompt "Input SQL Server Version"
#Write-Host $SQLVersion
Write-Host $env:COMPUTERNAME

#Get the SQL Server version dynamically
$result=Invoke-Sqlcmd -ServerInstance $env:COMPUTERNAME -Database master -Query "Select @@version"

foreach($row in $result){
$SQLVersion=$row[0].Substring(21,4)
Write-Host $SQLVersion
}

switch($SQLVersion){
"2016" {
$SQLNumber='130';$SQLManagerNumber='13';break
}
"2014" {
$SQLNumber='120';$SQLManagerNumber='12';break
}
"2017" {
$SQLNumber='140';$SQLManagerNumber='14';break
}
default {
$SQLNumber='130';$SQLManagerNumber='13';break
}
}
Write-Host $SQLnumber
#fix the error when open the sql server configuration manager
mofcomp.exe "C:\Program Files (x86)\Microsoft SQL Server\$SQLNumber\Shared\sqlmgmproviderxpsp2up.mof"

#create sql server configuration manager shortcut
createShortcut "C:\Windows\SysWOW64\SQLServerManager$SQLManagerNumber.msc" "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft SQL Server $SQLVersion\Configuration Tools\SQL Server $SQLVersion Configuration Manager.lnk"

cmd /c pause
posted on 2023-02-18 10:58  追求高级技术  阅读(58)  评论(0编辑  收藏  举报