SQL Server автоматизированные [закрытые] резервные копии

Это решение использует хэш, который намного более эффективен O (1), чем проверка, находится ли он в массиве. Он также имеет дополнительные безопасные проверки. Надеюсь, что это поможет.

function uniqueArray(minRange, maxRange, arrayLength) {
  var arrayLength = (arrayLength) ? arrayLength : 10
  var minRange = (minRange !== undefined) ? minRange : 1
  var maxRange = (maxRange !== undefined) ? maxRange : 100
  var numberOfItemsInArray = 0
  var hash = {}
  var array = []

  if ( arrayLength > (maxRange - minRange) ) throw new Error('Cannot generate unique array: Array length too high')

  while(numberOfItemsInArray < arrayLength){
    // var randomNumber = Math.floor(Math.random() * (maxRange - minRange + 1) + minRange)
    // following line used for performance benefits
    var randomNumber = (Math.random() * (maxRange - minRange + 1) + minRange) << 0

    if (!hash[randomNumber]) {
      hash[randomNumber] = true
      array.push(randomNumber)
      numberOfItemsInArray++
    }
  }
  return array
}
document.write(uniqueArray(1, 100, 8))
27
задан blu 29 January 2009 в 23:03
поделиться

2 ответа

Я рекомендовал бы просто создать план технического обслуживания в SQL Server для обработки резервных копий, он может быть настроен для резервного копирования к указанному местоположению в требуемое время, не выводя базы данных из эксплуатации, и обработает очистку инкрементного резервного копирования.

http://msdn.microsoft.com/en-us/library/ms189715.aspx

17
ответ дан cmsjr 14 October 2019 в 12:29
поделиться

Если Вы будете использовать SQL Server Express , то Вы не найдете, что UI выполняет периодические резервные копии.
В этом случае необходимо выполнить пакет с помощью Windows Scheduled Tasks или чего-то подобного.

не забывают использовать пользователя с достаточными полномочиями получить доступ к SQL Server.

В пакетном файле

"C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE" -S 
(local)\SQLExpress -i D:\dbbackups\SQLExpressBackups.sql

В SQLExpressBackups.sql

BACKUP DATABASE MyDataBase1 TO  DISK = N'D:\DBbackups\MyDataBase1.bak' 
WITH NOFORMAT, INIT,  NAME = N'MyDataBase1 Backup', SKIP, NOREWIND, NOUNLOAD,  STATS = 10

BACKUP DATABASE MyDataBase2 TO  DISK = N'D:\DBbackups\MyDataBase2.bak' 
WITH NOFORMAT, INIT,  NAME = N'MyDataBase2 Backup', SKIP, NOREWIND, NOUNLOAD,  STATS = 10

GO
68
ответ дан Luke Girvin 14 October 2019 в 12:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: