Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα .

 

Σε μια εταιρία τραβάμε αυτόματα backup μια sql βάση με κώδικα που έγραψε κάποιος. Θα ήθελα, αντί για το όνομα που βγάζει, δίπλα να προσθέτει και την ημερομηνία που το τράβηξε.  Είναι εφικτό αυτό?

 

Από backup να γίνει δηλαδή backup02_08_2016.

 

Ο κώδικας έχει αυτή τη μορφή....


rem OSQL -S 192.168.2.400 -U nb -P 203644 -Q"BACKUP DATABASE [backupSql]   TO  DISK = N'C:\data\backupxline\backupSql.BAK' WITH NOFORMAT, INIT,  NAME = N'backupSql-Full Database Backup', SKIP, NOREWIND, NOUNLOAD,  STATS = 10"


ECHO .
REM pause

Δημοσ.

Από Stackoverflow:

"DECLARE @MyFileName varchar(1000)

SELECT @MyFileName = (SELECT N'C:\data\backupxline\backupSql_' + convert(varchar(500),GetDate(),120) + '.bak')

BACKUP DATABASE [backupSql] TO DISK = @MyFileName WITH NOFORMAT, INIT, NAME = N'backupSql-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
  • Like 1
Δημοσ.

Εάν δεν παίξει αυτο που έβαλε ο φίλος από πάνω (αν και θα παίξει) κατέβασε ένα freeware που λέγεται SQLBackup. Φοβερό το χρησιμοποιώ πολύ καιρό, πανεύκολο και στέλνει και ΕΜΑΙΛ κάθε φορά που κάνει back up!

  • Like 1
Δημοσ.

Καταρχήν, ευχαριστώ πολύ για τις απαντήσεις. Το sqlbackup το έβαλα για λίγο στο σπίτι μου για να το τσεκάρω πρώτα, και όντως φαίνεται καταπληκτικό.

 

Αλλά, επειδή στο batch έχω και άλλες επιλογές για να κάνει copy το backup και σε άλλες διαδρομές, με την μορφή που το έχουμε δεν γίνεται να παίξει κάπως?

Δημοσ.

Καταρχήν, ευχαριστώ πολύ για τις απαντήσεις. Το sqlbackup το έβαλα για λίγο στο σπίτι μου για να το τσεκάρω πρώτα, και όντως φαίνεται καταπληκτικό.

 

Αλλά, επειδή στο batch έχω και άλλες επιλογές για να κάνει copy το backup και σε άλλες διαδρομές, με την μορφή που το έχουμε δεν γίνεται να παίξει κάπως?

 

Δοκίμασες το query που έγραψα?

  • Like 1
Δημοσ.

Κάτι αντίστοιχο που είχα κάνει για μία SQL Server εγκατάσταση:

 

 

@echo off

FOR %%A IN (%Date%) DO (
    FOR /F "tokens=1-3 delims=/-" %%B in ("%%~A") DO (
        SET Today=%%D%%B%%C
    )
)

FOR /F "tokens=1-3 delims=:.," %%A IN ("%Time%") DO (
    SET Time=%%A%%B%%C
)

echo %Today%_%Time%

sqlcmd -S SERVER\SQLINSTANCE -U username -P password -Q "BACKUP DATABASE MYDATABASE TO DISK='d:\backup_folder\DB_BACKUP_%Today%_%Time%.bak'"

pause
  • Like 1
Δημοσ.

Παιδιά, σας ευχαριστώ πάρα πολύ για τις απαντήσεις.

 

Τελικά το SQLBackup που είπε ο Λεωνίδας παραπάνω, με κάλυψε στο 100 %. Και πολύ εύκολα και με επιβεβαίωση mail ότι όλα πήγαν καλά ή όχι, οπότε μένει.

 

Να είστε όλοι καλά.

  • Like 1

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...