Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » MSFT SQL Server - MSSQL2008 зеркальное отображение.

Ответить
Настройки темы
MSFT SQL Server - MSSQL2008 зеркальное отображение.

Новый участник


Сообщения: 40
Благодарности: 0

Профиль | Отправить PM | Цитировать


Подскажите подходитли зеркальное отображение для создания актуальной резервной базы при выходе из строя главного SQL сервера?

Отправлено: 09:53, 14-07-2011

 

Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


а связь между серверами стабильная, они находятся рядом?

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)


Отправлено: 05:45, 15-07-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 40
Благодарности: 0

Профиль | Отправить PM | Цитировать


Связь гигабитная на одном свиче, возможна установка сетевух и связь через них.

Отправлено: 16:56, 15-07-2011 | #3


Аватара для cameron

Ветеран


Сообщения: 4677
Благодарности: 1092

Профиль | Отправить PM | Цитировать


давайте начём издалека.
вам это нужно для доступности баз 1С?
или другого приложения?

в чём полная идея?

-------
в личке я не консультирую и не отвечаю на профессиональные вопросы. для этого есть форум.


Отправлено: 17:02, 15-07-2011 | #4


Новый участник


Сообщения: 40
Благодарности: 0

Профиль | Отправить PM | Цитировать


Да для баз 1с 7.7.
Идея состоит в том чтобы была точная копия базы данных при выходе из строя главного сервера.
Чтоб можно было прописать в 1С айпи нового сервера и работать на нем пока главный сервер недоступен. База обновляться постоянно и ночные бекапы для этого не подходят.

Отправлено: 15:04, 16-07-2011 | #5


Аватара для cameron

Ветеран


Сообщения: 4677
Благодарности: 1092

Профиль | Отправить PM | Цитировать


1C не работает с зеркальной базой.
Цитата Alexandrm:
Идея состоит в том чтобы была точная копия базы данных при выходе из строя главного сервера. »
этого можно добиться только сделав кластер, иначе 1С не разаботает.
Цитата Alexandrm:
База обновляться постоянно и ночные бекапы для этого не подходят. »
бэкапы можно делать не только ночью

-------
в личке я не консультирую и не отвечаю на профессиональные вопросы. для этого есть форум.


Отправлено: 15:15, 16-07-2011 | #6


Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Прошу прощения за некрофилию, но решился ли как-нибудь данный топик?
У меня решился почти полностью (без кластера), но вот у меня есть необходимость делать ежедневно бэкапы... Подскажите мне вот в таком вопросе?
Решил смотреть в сторону PowerShell для создания полных бэкапов в сетевое хранилище, зеркальную базу по неизвестным мне причинам (я новичок в mssql), нельзя отбэкапить и решил, что скриптом можно выяснить, зеркальное это отображение или основная база... Пока дошел до

HTML код: Выделить весь код
select * from sysdatabases

Можно ли как-то расшифровать выдаваемые статусы баз, например из этого:

Это на основном сервере
Код: Выделить весь код
name      : upp_demo
dbid      : 6
sid       : {1, 5, 0, 0...}
mode      : 0
status    : 65536
status2   : 1627389952
crdate    : 31.08.2016 10:31:44
reserved  : 01.01.1900 0:00:00
category  : 0
cmptlevel : 110
filename  : C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\upp_demo.mdf
version   : 706
Это на зеркальном
Код: Выделить весь код
name      : upp_demo
dbid      : 6
sid       : {1, 0, 0, 0...}
mode      : 0
status    : 65568
status2   : 1627389952
crdate    : 31.08.2016 9:09:15
reserved  : 01.01.1900 0:00:00
category  : 0
cmptlevel : 110
filename  : C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\upp_demo.mdf
version   : 706
Являются ли status и status2 той самой информацией, которая гласит что база основная или зеркальная?

Заранее, спасибо!

Отправлено: 06:23, 05-09-2016 | #7


Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Сам же спросил - сам и отвечу, вот такой скриптик после гугления получился:

Код: Выделить весь код
<#
  Вызов скрипта производится с параметрами:
  -serverName - Имя хоста, где куртится MSSQL
  -baseName - Имя самой базы данных
  -backupDirectory - Куда сохранять бэкап базы
  -incremental - Является ли копия разностной (по умолчанию - нет, произодится полный бэкап)
  -daysToStoreBackups - Сколько дней хранить бэкапы, старше - удаляются
 Пример вызова с созданием разностной копии:
  powershell.exe C:\Backup\backup-new.ps1 -servername "SQLVIRT" -baseName upp_demo -backupDirectory "c:\backup" -incremental 1 -daysToStoreBackups 1 >> C:\Backup\backup.log
 Пример вызова с созданием полной копии:
  powershell.exe C:\Backup\backup-new.ps1 -servername "SQLVIRT" -baseName upp_demo -backupDirectory "c:\backup" -daysToStoreBackups 1 >> C:\Backup\backup.log
  P.S.: Если база находится в режиме не равном ONLINE, тогда бэкап не производится, это сделано для того, чтобы скрипт не пытался создать копию базы - зеркального отображения.
#>

param(  
    $serverName,
    $baseName,
    $backupDirectory,
    $incremental = 0,
    $daysToStoreBackups
)

$dbstatus = Invoke-Sqlcmd -query "select db_name() as databasename, databasepropertyex('upp_demo','status') as dbstatus" -Verbose | Format-Wide -Property dbstatus | Out-String
$status = $dbstatus.Trim()

if($status -eq "ONLINE") {

[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SMO") | Out-Null
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SmoExtended") | Out-Null
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.ConnectionInfo") | Out-Null
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SmoEnum") | Out-Null
$server = New-Object ("Microsoft.SqlServer.Management.Smo.Server") $serverName
$database = $server.Databases["$baseName"]
$dbName = $database.Name
$timestamp = Get-Date -format yyyy-MM-dd-HHmmss
$targetPath = $backupDirectory + "\" + $dbName + "_" + $timestamp + ".bak"
$smoBackup = New-Object ("Microsoft.SqlServer.Management.Smo.Backup")
$smoBackup.Action = "Database"
$smoBackup.BackupSetDescription = "Full Backup of " + $dbName
$smoBackup.BackupSetName = $dbName + " Backup"
$smoBackup.Database = $dbName
$smoBackup.MediaDescription = "Disk"
$smoBackup.Devices.AddDevice($targetPath, "File")
$smoBackup.CompressionOption = “1”
$smoBackup.Incremental = $incremental
$smoBackup.SqlBackup($server)
"backed up $dbName ($serverName) to $targetPath"
Get-ChildItem "$backupDirectory\*.bak" |? { $_.lastwritetime -le (Get-Date).AddDays(-$daysToStoreBackups)} |% {Remove-Item $_ -force }  
"removed all previous backups older than $daysToStoreBackups days"
}
Else {
"DataBase $baseName is not ONLINE or not exists on this server"
}

Отправлено: 07:06, 06-09-2016 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » MSFT SQL Server - MSSQL2008 зеркальное отображение.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Ошибка - [решено] Зеркальное отображение диалогового окна AnIG Microsoft Windows 2000/XP 4 22-04-2011 10:40
Разное - Принтер печатает зеркальное перевернутое изображение grav Microsoft Windows 2000/XP 1 21-06-2010 14:44
HDD - Зеркальное копирование kaless Накопители (SSD, HDD, USB Flash) 2 30-06-2009 22:07
Отображение кириллицы Krezzy Общий по Linux 8 10-03-2005 13:07
Отображение значков paladin Microsoft Windows 95/98/Me (архив) 1 07-09-2004 14:59




 
Переход