سلام
کدهای نوشته شده توسط دوستان تنها در حالتیکه بر روی سرور دستور اجرا شود صحیح است
ولی اگر میخواهی از روی کلاینتها هم اجازه Backup و Restore بدی بهتره کد زیر رو استفاده کنی
همه Backup ها بر روی سرور و در پوشه ای به نام Backup در محل فیزیکی خود بانک اطلاعاتی ایجاد میشود

مثلا برای Northwind

تعیین محل فیزیکی بانک روی سرور راه دور
رشته پرس و جوی استفاده شده
SELECT filename FROM sysdatabases WHERE name = 'Northwind'

مسیر فیزیکی بر روی سرور برای بانک انتخاب شده
E:\Program Files\Microsoft SQL Server\MSSQL\data

ایجاد پوشه فیزیکی جدید برای پشتیبانها روی سرور با دستور
EXEC master..xp_cmdshell [md "E:\Program Files\Microsoft SQL Server\MSSQL\data\Backup"]

تهیه پشتیبان از بانک اطلاعاتی با استفاده از دستور
BACKUP DATABASE [Northwind] TO DISK = 'E:\Program Files\Microsoft SQL Server\MSSQL\data\Backup\BackupNorthwind_Bak.bak' WITH INIT, NAME = N'Northwind_Bak', STATS = 10

برای بازیابی بانک اطلاعاتی
رفتن به مود تک کاربره با استفاده از پرس و جوی زیر
EXEC sp_dboption 'Northwind', 'single user', 'true'

تعیین محل فیزیکی بانک روی سرور راه دور
رشته پرس و جوی استفاده شده
SELECT filename FROM sysdatabases WHERE name = 'Northwind'

مسیر فیزیکی بر روی سرور برای بانک انتخاب شده
E:\Program Files\Microsoft SQL Server\MSSQL\data

بازیابی اطلاعات با استفاده از پرس و جوی زیر
RESTORE DATABASE [Northwind] FROM DISK = 'E:\Program Files\Microsoft SQL Server\MSSQL\data\Backup\BackupNorthwind_Bak.bak' WITH REPLACE , NOUNLOAD , STATS = 10, RECOVERY

خروج از مود تک کاربره با استفاده از پرس و جوی زیر
EXEC sp_dboption 'Northwind', 'single user', 'false'