Non potrai mai copiarlo come immagino stai facendo se non esegui prima il detach, cosa che comunque non ha senso.
Un db devi poterlo backuppare senza disconnetterlo.
Detto questo ti fornisco la soluzione che uso io:
1. Dispongo un file backup.bat sul server con le istruzioni per fare il backup del database
2. Lo lancio quotidianamente tramite lo scheduler di windows o su richiesta da un'applicazione utilizzando le istruzioni necessarie a lanciare un eseguibile.
3. Lo scarico via ftp in automatico
Ti giro di seguito il codice per il backup di SQL server da riga di comando da mettere nel file .bat
Codice per il backup di SQL server da riga di comando:
SET SQLDBName=nome_database
SET SQLServerName=(local)
SET BackupDirectoryFile='c:\backup_directory\%SQLDBName%.dat'
sqlcmd -E -S %SQLServerName% -d %SQLDBName% -Q "BACKUP DATABASE %SQLDBName% TO DISK=%BackupDirectoryFile%" > nome_database_backup.log