2

La situation est simple.
J'ai une application en C# qui utilise MS SQL Database. Pour une raison quelconque, j'ai besoin d'ajouter une fonction de sauvegarde/restauration. I ne pas avoir accès directement à l'instance MS SQL.Sauvegarde et restauration de la base de données MS SQL

Existe-t-il un autre moyen simple de sauvegarder la base de données à partir de C#? Peut-être que certains scripts peuvent créer des tables, des structures et des données, qui peuvent être utilisés sur d'autres machines?

Je dois le faire uniquement via C# (références .NET standard). Aucune application tierce.

Répondre

1

Vous pouvez utiliser SMO pour cela (à condition que vous disposez des droits d'accès appropriés):

Pour exécuter la méthode SQLBackup, les utilisateurs doivent avoir BACKUP DATABASE ou BACKUP autorisations LOG sur la base de données, ou être membre du rôle de base de données fixe db_backer et db_backupoperator et le rôle de serveur fixe sysadmin .

aussi:

C# SMO backup of remote database to local machine.

Getting Started with SMO in SQL 2005 - Backups

+0

L'utilisateur n'a-t-il pas besoin d'autorisations pour exécuter ces commandes? –

+0

les utilisateurs ont besoin d'autorisations appropriées pour faire n'importe quoi! :) –

+0

exactement :) ressemble à l'OP est pas de chance avec aucune autorisation alors. –

3

Non, il n'y a pas.

Si vous n'avez pas d'autorisations ou même de connexion à l'instance SQL Server, vous ne pourrez exécuter aucune commande BACKUP sur la base de données.

La sauvegarde du système de fichiers (mdf, ldf et ndf) n'est pas une stratégie de sauvegarde suffisante pour SQL Server.

Questions connexes