Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Системные базы данных должны быть перестроены, чтобы устранить проблемы с повреждением в основных, модельных, msdb или системных базах данных ресурсов или изменить параметры сортировки на уровне сервера по умолчанию. В этом разделе приведены пошаговые инструкции по перестроению системных баз данных в SQL Server 2014.
В этом разделе
Перед началом:
Процедуры:
Перестроение системных баз данных
Дальнейшие действия.
Перед началом работы
Ограничения и условия
При перестроении системных баз данных master, model, msdb и tempdb они удаляются и создаются заново в исходном расположении. Если в инструкции перестроения заданы новые параметры сортировки, системные базы данных создаются с этими параметрами. Все пользовательские изменения этих баз данных будут потеряны. Например, у вас могут быть пользовательские объекты в базе данных master, запланированные задания в msdb или изменения параметров базы данных по умолчанию в базе данных модели.
Предпосылки
Перед перестроением системных баз данных выполните следующие задачи, чтобы иметь возможность восстановить текущие параметры системных баз данных.
Зарегистрируйте все значения конфигурации на уровне сервера.
SELECT * FROM sys.configurations;Запишите все пакеты обновления и исправления, примененные к экземпляру SQL Server, а также текущую сортировку. Эти обновления необходимо повторно применить после перестроения системных баз данных.
SELECT SERVERPROPERTY('ProductVersion ') AS ProductVersion, SERVERPROPERTY('ProductLevel') AS ProductLevel, SERVERPROPERTY('ResourceVersion') AS ResourceVersion, SERVERPROPERTY('ResourceLastUpdateDateTime') AS ResourceLastUpdateDateTime, SERVERPROPERTY('Collation') AS Collation;Зарегистрируйте текущее расположение всех файлов данных и журналов для системных баз данных. При перестроении системных баз данных они устанавливаются в исходное расположение. Если системные файлы данных и журналов были перемещены в другие расположения, необходимо вернуть их в исходное место.
SELECT name, physical_name AS current_file_location FROM sys.master_files WHERE database_id IN (DB_ID('master'), DB_ID('model'), DB_ID('msdb'), DB_ID('tempdb'));Найдите текущую резервную копию баз данных master, model и msdb.
Если экземпляр SQL Server настроен в качестве распространителя репликации, найдите текущую резервную копию базы данных распространителя.
Убедитесь, что имеются соответствующие разрешения для перестроения системных баз данных. Для выполнения этой операции необходимо быть членом
sysadminфиксированных ролей сервера. Дополнительные сведения см. в статье Роли уровня сервера.Убедитесь, что на локальном сервере существуют копии файлов данных и шаблонов журналов master, model, msdb. Расположение по умолчанию для файлов шаблона — C:\Program Files\Microsoft SQL Server\MSSQL12. MSSQLSERVER\MSSQL\Binn\Templates. Эти файлы используются во время процесса перестроения и должны присутствовать, чтобы установка прошла успешно. Если они отсутствуют, используйте функцию исправления программы установки или вручную скопируйте их с установочного носителя. Чтобы найти файлы на установочном носителе, перейдите к соответствующему каталогу платформы (x86 или x64), а затем перейдите к разделу установки\sql_engine_core_inst_msi\Pfiles\SqlServr\MSSQL. X\MSSQL\Binn\Templates.
Перестроение системных баз данных
Следующая процедура перестроит системные базы данных master, model, msdb и tempdb. Вы не можете указать системные базы данных, которые необходимо перестроить. Для кластеризованных экземпляров эта процедура должна выполняться на активном узле, а ресурс SQL Server в соответствующей группе приложений кластера должен быть отключен перед выполнением процедуры.
Эта процедура не перестраивает базу данных ресурсов. См. раздел "Перестроение процедуры базы данных ресурсов" далее в этом разделе.
Чтобы перестроить системные базы данных для экземпляра SQL Server:
Вставьте носитель установки SQL Server 2014 на диск или в командной строке измените каталоги на расположение файла setup.exe на локальном сервере. Расположение по умолчанию на сервере — C:\Program Files\Microsoft SQL Server\120\Setup Bootstrap\Release.
В командной строке введите следующую команду. Квадратные скобки указывают, что параметр необязателен. Не введите скобки. В операционной системе Windows с включенным контролем учетных записей (UAC) запуск программы установки требует повышенных прав доступа. Команда в командной строке должна выполняться от имени администратора.
Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=InstanceName /SQLSYSADMINACCOUNTS=accounts [ /SAPWD= StrongPassword ] [ /SQLCOLLATION=CollationName]Имя параметра Описание /QUIET или /Q Указывает, что программа установки выполняется без пользовательского интерфейса. /ACTION=REBUILDDATABASE Указывается, что установка повторно создает системные базы данных. /INSTANCENAME=имя_экземпляра Имя экземпляра SQL Server. Для экземпляра по умолчанию введите MSSQLSERVER. /SQLSYSADMINACCOUNTS=учетные_записи Указывает группы Windows или отдельные учетные записи для добавления в sysadminфиксированную роль сервера. При указании нескольких учетных записей их нужно разделять пробелами. Например, введите BUILTIN\Administrators MyDomain\MyUser. Если учетная запись содержит в своем имени пробелы, заключайте ее имя в двойные кавычки. Например, введитеNT AUTHORITY\SYSTEM.[ /SAPWD=надежный_пароль ] Указывает пароль для учетной записи SQL Server sa. Этот параметр требуется, если экземпляр использует смешанный режим проверки подлинности (SQL Server и проверка подлинности Windows).
** Примечание по безопасности ** Учетнаяsaзапись является хорошо известной учетной записью SQL Server, и она часто нацелена на вредоносных пользователей. Очень важно использовать надежный пароль дляsaвхода.
Не указывайте этот параметр для режима проверки подлинности Windows.[/SQLCOLLATION=CollationName] Указывает новые параметры сортировки на уровне сервера. Это необязательный параметр. Если порядок сортировки не указан, используется текущий порядок сортировки сервера.
**Важный** Изменение параметров сортировки на уровне сервера не изменяет параметры сортировки существующих пользовательских баз данных. Все вновь созданные пользовательские базы данных будут использовать новую сортировку по умолчанию.
Дополнительные сведения см. в разделе Задание или изменение параметров сортировки сервера.Когда программа установки завершает перестроение системных баз данных, она возвращается в командную строку без сообщений. Просмотрите файл журнала Summary.txt, чтобы убедиться, что процесс завершился успешно. Этот файл находится в папке C:\Program Files\Microsoft SQL Server\120\Setup Bootstrap\Logs.
Задачи после восстановления
После перестроения базы данных может потребоваться выполнить следующие дополнительные задачи:
Восстановите последние полные резервные копии главных баз данных, моделей и msdb. Дополнительные сведения см. в статье Резервное копирование и восстановление системных баз данных (SQL Server).
Это важно
Если изменены параметры сортировки сервера, не следует восстанавливать системные базы данных. Это приведет к замене нового порядка сортировки на предыдущий.
Если резервная копия недоступна или если восстановленная резервная копия не является текущей, повторно создайте отсутствующие записи. Например, повторно создайте все отсутствующие записи для пользовательских баз данных, устройств резервного копирования, имен входа SQL Server, конечных точек и т. д. Лучшим способом повторного создания записей является запуск создавшего их исходного скрипта.
Это важно
Рекомендуется защитить применяемые скрипты, чтобы предотвратить их изменение неавторизированными пользователями.
Если экземпляр SQL Server настроен в качестве распространителя репликации, необходимо восстановить базу данных распространителя. Дополнительные сведения см. в разделе Резервное копирование и восстановление реплицируемых баз данных.
Переместите системные базы данных в ранее записанные местоположения. Дополнительные сведения см. в статье Перемещение системных баз данных.
Проверить, соответствуют ли значения конфигурации на уровне сервера зарегистрированным ранее значениям.
Перестроение базы данных ресурсов
Следующая процедура перестраивает базу данных системы ресурсов. При перестроении базы данных ресурсов все пакеты обновления и горячие исправления теряются, поэтому их необходимо повторно применить.
Чтобы перестроить базу данных системы ресурсов, выполните следующие действия.
Запустите программу установки SQL Server 2014 (setup.exe) с носителя распространения.
В области навигации слева щелкните "Обслуживание" и нажмите кнопку "Восстановить".
Будут запущены правило поддержки установки и файлы подпрограмм для того, чтобы удостовериться, что в системе установлены необходимые компоненты и компьютер отвечает правилам проверки. Для продолжения нажмите кнопку ОК или Установить .
На странице "Выбор экземпляра" выберите экземпляр для восстановления и нажмите кнопку "Далее".
Правила исправления будут запущены для проверки выполнения операции. Чтобы продолжить, нажмите кнопку Далее.
На странице "Готово к восстановлению" нажмите кнопку "Восстановить". Страница "Готово" показывает, что операция завершена.
Создать новую базу данных msdb
msdb Если база данных повреждена и у вас нет резервной msdb копии базы данных, можно создать новую msdb с помощью скрипта instmsdb.
Предупреждение
Перестроение базы данных msdb с помощью скрипта instmsdb устраняет все сведения, хранящиеся в msdb, такие как задания, оповещения, операторы, планы обслуживания, история резервного копирования, настройки управления на основе политик, почта базы данных, хранилище данных производительности и т. д.
Остановите все службы, подключающиеся к ядро СУБД, включая агент SQL Server, SSRS, SSIS и все приложения, использующие SQL Server в качестве хранилища данных.
Запустите SQL Server из командной строки с помощью команды:
NET START MSSQLSERVER /T3608Дополнительные сведения см. в статье Запуск, остановка, приостановка, возобновление и перезапуск ядра СУБД, агента SQL Server или службы "Обозреватель SQL Server".
В другом окне командной строки отсоедините
msdbбазу данных, выполнив следующую команду, заменив <имя> сервера экземпляром SQL Server:SQLCMD -E -S<servername> -dmaster -Q"EXEC sp_detach_db msdb"Используя проводник Windows, переименуйте
msdbфайлы базы данных. По умолчанию они находятся в под папке DATA для экземпляра SQL Server.С помощью диспетчера конфигурации SQL Server нормально остановите и перезапустите службу Движка базы данных.
В окне командной строки подключитесь к SQL Server и выполните команду:
SQLCMD -E -S<servername> -i"C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Install\instmsdb.sql" -o" C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Install\instmsdb.out"Замените <имя> сервера экземпляром ядра СУБД. Используйте путь к файловой системе экземпляра SQL Server.
С помощью Блокнота Windows откройте файл instmsdb.out и проверьте выходные данные для любых ошибок.
Повторно примените любые пакеты обновления или исправления, установленные в данном экземпляре.
Повторно создайте содержимое пользователя, хранящееся в
msdbбазе данных, например задания, оповещение и т. д.Создайте резервную копию базы данных
msdb.
Устранение ошибок сборки
Ошибки синтаксиса и ошибки времени выполнения отображаются в окне командной строки. Проверьте инструкцию установки на наличие следующих синтаксических ошибок:
Отсутствует знак косой черты (/) перед каждым именем параметра.
Отсутствует знак равенства (=) между именем параметра и значением параметра.
наличие пробелов между именем параметра и знаком равенства;
Наличие запятых (,) или других символов, которые не указаны в синтаксисе.
После завершения операции перестроения проверьте журналы SQL Server для любых ошибок. Расположение журнала по умолчанию — C:\Program Files\Microsoft SQL Server\120\Setup Bootstrap\Logs. Чтобы найти файл журнала, который содержит результаты перестроения, в командной строке перейдите в папку журналов и запустите команду findstr /s RebuildDatabase summary*.*. Данный поиск укажет вам на любые файлы журналов, которые содержат результаты перестроения системных баз данных. Откройте эти файлы журналов и внимательно просмотрите, имеются ли в них соответствующие сообщения об ошибках.