我对 Powershell 比较陌生。
我正在使用底层脚本来恢复数据库。
Set-DbatoolsInsecureConnection -SessionOnly
Get-ChildItem "C:\NH\WH_BEE_$(Get-Date -Format "yyyyMMdd")_*.bak" | `
Restore-DbaDatabase `
-SqlInstance "Bee\BEESQL2022" `
-DatabaseName "WH_BEE" `
-FileMapping @{
"WH_Data1" = "C:\WH_BEE.MDF";
"WH_Data2" = "C:\WH_BEE.NDF";
"WH_Log" = "C:\WH_BEE.LDF"
};
这与我的上一篇文章有关,我没有解决它。
当我运行此命令时,我收到底部错误消息:
WARNING: [23:48:28][Restore-DbaDatabase] No backups passed through.
This could mean the SQL instance cannot see the referenced files, the file's headers
could not be read or some other issue
Module: sql
FullName Value Description
-------- ----- -----------
sql.connection.trustcert True Trust SQL Server certificate
sql.connection.encrypt False Encrypt connection to server
就权限而言,我添加了“SQL Server代理帐户”和“所有人”对此文件夹和驱动器的完全权限。
我遇到了这个问题,今天早些时候收到了同样的“没有备份通过”。我解决了我的问题。这与我经过的一条不存在的路径有关。
对于您的问题:
Restore-DbaDatabase 警告意味着您已正确安装 dbatools。
如果你只是运行,你会得到什么结果:
获取子项“C:\NH\WH_BEE_$(获取日期-格式“yyyyMMdd”)_*.bak”