备份服务器'xxxxx/SQLEXPRESS'失败

本文关键字:SQLEXPRESS 失败 xxxxx 备份 服务器 | 更新日期: 2023-09-27 18:14:18

我使用这个代码从。mdf文件备份数据库。

Backup databaseBackup = new Backup();
databaseBackup.Action = BackupActionType.Database;
databaseBackup.Database = CvVariables.Catalog;
databaseBackup.Devices.Add(new BackupDeviceItem(new NecessaryFunction().MsSqlBackupFileName(this.backupTextboxPath.Text), DeviceType.File));
Server databaseServer = new Server(@".'SQLEXPRESS");
MessageBox.Show(databaseServer.ToString());
databaseBackup.SqlBackup(databaseServer);

在我的开发者PC上,这个代码工作得很好。但是在我客户的PC上,它抛出了这个异常:

备份服务器"xxxxx/SQLEXPRESS"失败
Microsoft.SqlServer.Management.Common.ExecutionFailureException:执行Transact-SQL语句或批处理时发生异常。——> System.Data.SqlClient.SqlException:
数据库"食堂vernier_db"不存在。确保名字是输入正确的。
BACKUP DATABASE异常终止。Microsoft.SqlServer.Management.Common.ConnectionManager.ExecuteTSql (ExecuteTSqlAction操作,对象execObject,数据集fillDataSet,布尔值catchException)
在Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(字符串sqlCommand, ExecutionTypes executionType)
——内部异常堆栈跟踪结束——
在Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(字符串sqlCommand, ExecutionTypes executionType)
Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery (StringCollectionsqlCommands, ExecutionTypes executionType)
Microsoft.SqlServer.Management.Smo.ExecutionManager.ExecuteNonQuery (StringCollection查询)
在Microsoft.SqlServer.Management.Smo.BackupRestoreBase.ExecuteSql(服务器服务器,StringCollection查询)
在Microsoft.SqlServer.Management.Smo.Backup。SqlBackup(服务器srv)

我做错了什么?

备份服务器'xxxxx/SQLEXPRESS'失败

看起来您在客户端PC上执行的安全上下文与在开发人员PC上执行的安全上下文不同。验证您的客户端PC凭据是否有权访问自助餐厅数据库,否则它会给您同样的消息,即无法找到它(因为它没有访问它)。

我的猜测是客户端SQL Server登录在Cafeteria_Vernier_db数据库中没有映射的数据库用户