Переместите Базу данных SQL Server с нулевым временем простоя

Только войдите в систему по соединению SSL.

При входе в кафе и вход в систему по http://www.yourblog.com/wp-admin/ пароль отправляется в открытом тексте и легко видим любому осуществляющему сниффинг сети в кафе и всех маршрутизаторах между Вами и сервере.

Если Вы переместите свою страницу входа в систему блога в защищенный сервер и вынудите пользователей войти в использование, то SSL в https://www.yourblog.com/wp-admin/пароль будет зашифрован, когда это отправляется на сервер.

Можно или добавить некоторый код PHP к Wordpress что-то вроде этого

if(strpos(strtolower($_SERVER['REQUEST_URL']),'wp-admin')===true 
      && $_SERVER['HTTPS']!='ON')
{
    Header("Location: https://www.yourblog.com/wp-admin/")
}

или используйте .htaccess файл для осуществления входа в систему SSL, который выглядел бы примерно так:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

6
задан 25 March 2010 в 13:51
12 ответов

нулевое время простоя нет. но с тщательным планированием Вас может сойти с рук близко к нулевому времени простоя.

Опция 1:

  • установите передачу журналов btwn существующий 2005 и новый сервер 2008.
  • Запланируйте сокращение - тщательно переключающийся IP и/или имена хостов.
  • Удостоверьтесь, что Вы делаете заключительное резервное копирование журнала хвоста перед окончательным вариантом-.

Опция 2 (больше работы, меньше времени простоя):

  • Если Ваше поле 2008 года является новым, то установите 2005 сначала на том же SP как Ваше поле напоминания.
  • Зеркальное отражение базы данных установки, асинхронное в первой стадии для предотвращения производительности наверху.
  • Установите свои клиенты, чтобы включать партнера по обработке отказа в строку подключения
  • Изменитесь на синхронизирующее зеркальное отражение дб и обработку отказа к новому полю
  • выполните 'прокручивающиеся шаги обновления' для оперативного обновления 2005-2008 для установки зеркального отражения базы данных

Конечно, для разбираний в этом испытание необходимость, чтобы протестировать и удостовериться Вы ничего не пропустили, когда Вы делаете это для реального :)

4
ответ дан 3 December 2019 в 00:20
  • 1
    Относительно опции 2 можно на самом деле зеркально отразить от SQL 2005 к SQL 2008. I' ve, сделанный это успешно для клиентов несколько раз. Обработка отказа с 2005 до 2008 поддерживается, но не обработка отказа с 2008 до 2005. –  jlupolt 25 March 2010 в 15:41
  • 2
    таким образом, Вы можете обработка отказа, но не возвращаться к состоянию до сбоя?черт! –  Nick Kavadias 28 March 2010 в 17:58
  • 3
    Никакой jikes - это предназначено просто как механизм обновления. Перестали работать к 2008, переустанавливают другой сервер, 2x2008 выполнение ;) –  TomTom 8 May 2010 в 17:31

Нет.Прошу прощения. Я не вижу способ переместить базу данных без любого времени простоя. Что находится на базе данных, что у Вас нет способа даже вставить час во время подобных пасхальных каникул?

3
ответ дан 3 December 2019 в 00:20
  • 1
    24/7 требуется для всех клиентов, работающих на той базе данных (во всем мире, таким образом, никакие праздники не применяются вообще). Все опции я знаю (как logfileshipping) результат в uncalculatable время простоя. –  kcode 24 March 2010 в 15:07
  • 2
    Вы can' t гарантируют 24/7 без времени простоя даже во время нормального функционирования если you' ре, работающее на единственном сервере, и это кажется, что Вы. Как Вы исправляете ОС? Необходимо согласовать некоторое время простоя с клиентами - дают достаточно времени выполнения заказа для них для обеспечения его. Кроме того, при миграции его необходимо переместить его на кластеризованный SQL-сервер так, чтобы можно было, по крайней мере, иметь дело с неизбежными отказами оборудования, которых весь металл является наследником. –  mfinni 24 March 2010 в 15:36
  • 3
    мы выполняем отказоустойчивый кластер, но дб должен быть перемещен в другой failovercluster на другом сетевом устройстве хранения данных. –  kcode 24 March 2010 в 15:57
  • 4
    Хорошо, that' s, вероятно, полезная информация. Если Вы didn' t имеют " другой storage" требование, Вы могли, вероятно, добавить два новых сервера к кластеру и затем переместить активный экземпляр в один из новых серверов и затем удалить старые серверы из кластера. Я don' t знают, можно ли смешать версии SQL в кластере все же. –  mfinni 24 March 2010 в 17:07
  • 5
    Все еще время простоя. Отказоустойчивый кластер заканчивается в (минимальное) время простоя на перемещении, но он все еще заканчивается во время простоя. Плюс все сбрасываемые соединения. –  TomTom 8 May 2010 в 17:31

Очень замысловатый способ сделать это... (почти)

  1. P2V сервер на кластер VMware. Никакое время простоя.
  2. Создайте второй сервер и создайте активный/пассивный кластер.
  3. Обновите пассивный узел до 2008 и замените.
  4. Прибыль?

Очевидно, всему здесь нужно тестирование, существует много подробных не учтенных шагов.

ИЛИ - Заставьте управление соглашаться на время простоя и предавать гласности его усовершенствование Вашим клиентам. Затем практика и тест обновление до смерти!

Объясните управлению технические трудности в попытке сделать это "дешевое". Это - что-то, что Вы ВСТРАИВАЕТЕ В систему при первом создании архитектуры полного 27x7.

Даже самые большие системы запланировали время простоя. Это - НЕЗАПЛАНИРОВАННОЕ время простоя, о котором необходимо волноваться больше.

1
ответ дан 3 December 2019 в 00:20

репликация транзакций является Вашим другом здесь...

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

1
ответ дан 3 December 2019 в 00:20

Вы не собираетесь достигать этого с одним только SQL Server, я боюсь. Я использовал продукт под названием Двойное Взятие в прошлом, которое позволило бы Вам клонировать DB прочь к другому серверу и затем обработке отказа, когда это - conveneient.

Процесс обработки отказа все еще подвергся бы некоторому времени простоя, поскольку сервисы запускают на новой машине.

0
ответ дан 3 December 2019 в 00:20

Если это будет просто единственная установка instance/non-clustered прямо сейчас, то Вы не будете способный достигать 0%-го времени простоя без потерянных из данных. Если DB, прежде всего, читается тяжелый, и лучше потерять несколько операций записи, то удалить DB, то у Вас могли бы быть некоторые опции.

Вы могли сделать полное резервное копирование COPY_ONLY DB, затем после этого завершается, переместите bak файл в новое серверное хранилище. Восстановите к DB к новому экземпляру SQL и перепишите свои строки подключения, где когда-либо применимый (надо надеяться, это - всего один inc файл где-нибудь), и перезапускают Ваши сайты. У Вас будет незначительный сбой на сайте, и активные сессии перезапустят.

Как бы то ни было. Вы потеряете все записи между временем резервного копирования и восстановлением.

0
ответ дан 3 December 2019 в 00:20
  • 1
    я боюсь, что это не возможно, поскольку дб является qutie, в большой степени записанным и несколько 100 ГБ в размере. так резервное копирование, переместитесь, и восстановление займет долгое время. –  kcode 24 March 2010 в 15:22
  • 2
    Ну, Вы can' t имеют Ваш пирог и едят его также. Резервное копирование и перемещение будут сделаны, в то время как старый DB все еще онлайн, you' ll просто теряют те записи. Вы оказываетесь перед необходимостью выбирать свой яд, на который это похоже. –  Malnizzle 24 March 2010 в 15:29

Можно попытаться достигнуть этого с минимальным временем простоя (несколько секунд к обработке отказа) использование решения для зеркала дб. Можно смотреть на эту статью MSDN для большего количества информации: http://msdn.microsoft.com/en-us/library/bb677181.aspx

Tom

0
ответ дан 3 December 2019 в 00:20

Если Вы используете решение.NET в качестве сервера приложений, который использует 2,0 платформы затем, предложение tvanzele должно работать просто великолепно. Шаги ниже:

  • Удостоверьтесь, что Ваша основная база данных находится В полном режиме восстановления, и Вы берете резервные копии журнала
  • Установите SQLEXPRESS или стандартный выпуск экземпляр SQL для действия как сервер свидетеля
  • Скопируйте и восстановите Полное резервное копирование и резервное копирование журналов на новый экземпляр (не свидетель)
  • Настройте зеркальное отражение базы данных к новому экземпляру SQL и используйте экземпляр SQLEXPRESS/Standard в качестве свидетеля
  • измените строку подключения в приложении, чтобы распознать отказоустойчивый сервер, видеть connectionstrings.com для ссылки
  • Замените базу данных к зеркалу путем перезапуска старого экземпляра
  • Строка подключения изменения для приложения, чтобы только использовать экземпляр обработки отказа
  • Зеркальное отражение повреждения
0
ответ дан 3 December 2019 в 00:20

Вы могли рассмотреть установку синхронного зеркального отражения для базы данных между этими двумя средами. При синхронизации база данных может быть заменена (или назад) только с прерыванием любому в транзакциях полета.

http://sqlserverpedia.com/blog/sql-server-2008/cutover-30-gb-databases-in-60-seconds-with-sql-server-20052008/

0
ответ дан 3 December 2019 в 00:20

Я предложил бы, чтобы Вы сделали это с помощью программного обеспечения Redgate. SQL Compare помог бы Вам воссоздать точно ту же структуру в недавно созданном дб в другом сервере. И затем u использование SQL Compare Data который создает сценарии "копии" для Вас и выполняет его (или сохраните его на потом). Работы как очарование. Я использую его для копирования материала между prod/dev дб.

Это хорошо, потому что Вы могли сделать Sql Data Compare однажды. И затем когда это переместило некоторые данные (и новые данные прибыли в старую базу данных), Вы могли повторно выполнить его снова, таким образом, это будет только синхронизировать различия через несколько секунд.

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

Redgate SQL Toolbelt Ваш друг навсегда (я никоим образом не связан с Redgate), :p

Как примечание стороны. Так как данные preety большой, я предложил бы использовать Данные SQL, Выдерживают сравнение с использованием в блоках (несколько таблиц на копию). Затем позже заключительная синхронизация для синхронизации любых различий, которые произошли в течение периода копии (даже если бы Вам потребовались 3 часа, это должно было бы только синхронизировать пару hundres строк или так).

0
ответ дан 3 December 2019 в 00:20

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

0
ответ дан 3 December 2019 в 00:20

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

0
ответ дан 3 December 2019 в 00:20

Теги

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