ref-14882 (SQL Server 2000), страница 8
Описание файла
Документ из архива "SQL Server 2000", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "ref-14882"
Текст 8 страницы из документа "ref-14882"
Аналогичные действия необходимо выполнить в случае, когда вы перед этим по каким-то причинам остановили SQL Server 2000 и не хотите перезагружать после этого операционную систему. Существует несколько способов для выполнения ручного запуска служб SQL Server 2000.
О Запуск SQL Server 2000 из окна Control Panel (панель управления) сводится к использованию утилиты Services (службы). Аналогично процедуре установки автозапуска для этого необходимо выбрать нужную службу, открыть окно свойств службы (см. рис. 10.3) и щелкнуть в нем на кнопке Start (пуск). Если в поле Startup Type (тип запуска) указан режим Disabled (отключена), то сразу запустить службу не удастся. Предварительно необходимо изменить режим ее запуска на Manual (ручной) или Automatic (автоматический) и только после этого выполнять запуск службы.
Поскольку SQLServerAgent является зависимой службой, сначала необходимо запускать службу MSSQLServer и лишь затем SQLServerAgent.
О Второй способ ручного запуска SQL Server предполагает использование SQL Server Enterprise Manager. Для этого щелкните правой кнопкой мыши на имени нужного сервера. В открывшемся контекстном меню можно выбрать команды, разрешенные для сервера в данный момент (рис. 10.5). Таким способом можно запускать (команда Start), останавливать (команда Stop) и приостанавливать (команда Pause) как локальные, так и удаленные серверы. Заметим, однако, что этот метод позволяет запускать только службу MSSQLServer. Значок службы SQLServerAgent расположен в папке Management сервера. Вызвав его контекстное меню, вы можете управлять работой этой службы. Дополнительные службы, такие как MSDTC и SQLMail, располагаются в папке Support Services. Управление их работой осуществляется аналогично.
О Наиболее простой способ ручного запуска заключается в использовании административной утилиты SQL Server Service Manager (см. рис. 10.4), специально предназначенной для запуска, остановки и приостановки служб SQL Server. В окне утилиты вам предлагается выбрать сервер и службу, с которыми вы будете работать. Значки отображают действия, доступные в настоящий момент для выбранной службы.
О Следующий способ запуска SQL Server предполагает использование утилиты командной строки net start. В качестве параметра необходимо указать имя службы, которую необходимо запустить, например: net start mssqlserver net start sqlserver-agent
Для запуска служб именованной копии необходимо добавить ее имя и знак доллара перед ним. Например, для запуска службы MSSQLServer копии TRELON используется следующая команда: net start MSSQLSTRELON
Для запуска службы SQLAgent требуется следующая команда: net start SQLAgentSTRELON
Выполнение команды net start без имени службы приведет к выводу списка запущенных в операционной системе служб.
О Для запуска SQL Server можно также использовать команду sqlservr. В этом случае SQL Server 2000 запускается не как служба, а как отдельное приложение. Это означает, что все средства администрирования (Service Manager, Enterprise Manager, Services в панели управления) будут показывать, что сервер остановлен. Использование команды net stop mssql server для остановки SQL Server в этом случае выдаст сообщение об ошибке, так как система считает, что сервер не запущен. Все системные сообщения будут появляться в консольном окне, в котором выполнена команда sqlservr. Сервер будет запускаться под учетной записью пользователя, работающего в системе в данный момент, и если этот пользователь решит завершить сеанс работы в операционной системе, ему придется сначала завершить работу SQL Server.
Запуск SQL Server в однопользовательском режиме
При некоторых обстоятельствах бывает необходимо запустить SQL Server в однопользовательском режиме — например, чтобы выполнить конфигурирование важных характеристик сервера или восстановить поврежденную системную базу данных.
В однопользовательском режиме служба MSSQLServer поддерживает только одно соединение. Так как дополнительные службы SQL Server 2000, подобно обычным пользователям, устанавливают клиентские соединения, то необходимо убедиться, что эти службы, например SQLServerAgent или SQLMail, не запущены. В противном случае вы сами не сможете получить доступ к серверу,
поскольку единственное возможное соединение будет уже задействовано. Убедитесь, что клиентские приложения, обращающиеся к SQL Server (такие как Internet Information Server), также остановлены.
При однопользовательском режиме «грязные» страницы (dirty pages) немедленно записываются на диск. Это означает, что данные, которые были изменены после считывания, сразу окажутся на диске, а не в кэш-памяти, как это бывает при обычной работе.
Другой особенностью работы в однопользовательском режиме является то, что разрешен прямой доступ к системным таблицам, по умолчанию запрещенный при обычной работе. Прямой доступ к системным таблицам позволяет модифицировать системные данные (структуру таблиц, пользователей, настройки репликации и т.д.) непосредственно командами INSERT, DELETE и UPDATE. В обычных условиях подобная модификация производится с использованием хранимых процедур и административных утилит.
Прямой доступ к системной информации требует очень высокой квалификации и специальных знаний. Большинству пользователей и системных администраторов будет достаточно средств, предоставляемых интерфейсом SQL Server.
Для запуска SQL Server 2000 в однопользовательском режиме введите следующую команду.
sqlservr.exe -т
Запуск SQL Server с минимальными требованиями
В некоторых случаях, например после применения неправильных параметров конфигурации, SQL Server при следующем запуске не сможет стартовать, в результате чего вы не сможете отменить сделанные изменения. В этом случае необходимо запустить SQL Server с минимальными требованиями. Это своего рода аварийный запуск SQL Server. В таком режиме количество открытых баз данных, таблиц, открытых объектов, размер кэша процедур и т. д. минимально. Запрещается выполнение хранимых процедур, автоматически запускаемых при каждом старте SQL Server. Автоматически устанавливается однопользовательский режим и прямой доступ к системным таблицам. Удаленный доступ запрещается, то есть предоставляется возможность работать с сервером только локально.
Для запуска SQL Server 2000 как службы с минимальными требованиями введите следующую команду: sqlservr.exe -f
Если необходимо незамедлительно запустить SQL Server 2000 с минимальными требованиями как приложение, выполните следующую команду: sqlservr.exe -f -с
Перед запуском SQL Server с минимальными требованиями убедитесь, что сервер остановлен и никакие дополнительные службы или приложения, которые могут блокировать единственное соединение, не запущены.
Дополнительные режимы запуска
После установки SQL Server программа установки заносит в реестр набор базовых параметров запуска для SQL Server. Если вы не хотите использовать параметры по умолчанию, то для запуска SQL Server в нестандартной конфигурации можете воспользоваться ключами, перечисленными в табл.
Таблица. Дополнительные ключи sqlservr.exe
Ключ
Описание
-d
-е< error_log_path >
-I < masterjog_path >
Используйте этот ключ для запуска SQL Server с другой системной базой данных master. Укажите полный путь к этой базе данных, обычно это
\Program files\Microsoft SQL Server\MSSQL\Data\Master.mdf Если этот ключ не указан, используются значения из реестра
Позволяет использовать дополнительный журнал ошибок. Укажите полный путь к файлу журнала, обычно это \Program files\Microsoft SQL Server\MSSQL\Log\Errorlog
Используйте этот ключ для подключения указанного журнала транзакций для системной базы данных master. Укажите полный путь к файлу журнала, обычно это \Program files\Microsoft SQL Server\MS5QL\Data\Mastlog.Idf
Ключ реестра, создаваемый программой установки и содержащий параметры запуска SQL Server 2000 по умолчанию, находится в реестре .
Вы можете редактировать значения в реестре для подключения другой базы данных master. Автор использовал эту возможность, когда работал с двумя операционными системами на одном компьютере и нужно было работать с данными из обеих систем. Для этого пришлось только изменить ссылку на базу данных master, ее журнал транзакций и журнал ошибок.
Вы можете создать свою собственную конфигурацию, сохранив все необходимые параметры запуска сервера в реестре. Создайте копию стандартных ключей (SQLArgO, SQLArgl или SQLArg2), изменив имя, например, на SingleUser. Затем отредактируйте строку данных для указания нужных параметров.
Чтобы запустить SQL Server с новым ключом реестра, введите следующую команду: Sqlservr.exe -sSingleUser
Здесь SingleUser — имя конфигурации.
Приостановка SQL Server
Перед остановкой сервера SQL Server вы можете приостановить его работу и отправить сообщение по сети, предупреждающее пользователей о предстоящей остановке сервера, чтобы они могли корректно закончить работу и сохранить свои данные. Приостановка сервера позволяет подключенным пользователям завершить работу, при этом новые пользователи не смогут установить соединение. После того как все данные успешно сохранены и соединения разорваны, вы сможете спокойно произвести остановку сервера, не опасаясь, что получите выговор от начальника, который не успел сохранить результат дневной работы.
Если вы выполняете остановку сервера без его предварительной приостановки, то все активные соединения немедленно закрываются независимо от того, сохранили пользователи свои данные или нет. В таком случае вы очень скоро узнаете, что думают ваши коллеги по поводу подобных действий и вашей компетентности.
При желании вы можете после приостановки возобновить работу сервера в нормальном режиме.
Чтобы приостановить работу SQL Server, необходимо воспользоваться теми же средствами, что и для запуска, но вместо команды Start (пуск) выбирать команду Pause (пауза). Если необходимо остановить сервер из командной строки, то нужно ввести следующую команду:
net pause mssqlserver
Для продолжения работы приостановленного SQL Server введите команду
net continue mssql server
Соответственно для именованных копий эти команды будут выглядеть следующим образом:
net pause mssqlSinstancename net continue mssql$instancename
Вы не можете приостановить работу сервера, если он запущен командой sqlservr.exe, так как в этом случае сервер работает как самостоятельное приложение, а не как служба операционной системы.
Остановка SQL Server
Вы можете остановить сервер SQL Server 2000, если он запущен как служба, как локально (на том же сервере, на котором он запущен), так и удаленно (с клиентского компьютера или другого сервера SQL Server), используя один из следующих методов.
О SQL Server Enterprise Manager останавливает локальный или удаленный сервер SQL Server либо службу SQLServerAgent.
О SQL Server Service Manager останавливает локальный или удаленный сервер SQL Server либо службу SQLServerAgent из одного окна (в одном окне можно управлять работой всех служб).
О Команда SHUTDOWN языка Transact-SQL применяется для остановки SQL Server из клиентского приложения при выполнении запросов, например из утилиты osql или Query Analyzer. Используйте команду SHUTDOWN с параметром WITH NOWAIT для незамедлительной остановки сервера.
О Команда net stop mssql server (net stop mssql Sinstancename - для именованных копий) останавливает локальный или удаленный SQL Server, если вы работаете в Windows NT.
О Утилита Services (службы) окна Control Panel (панель управления) останавливает локальный сервер SQL Server.
О Комбинация клавиш CTRL+C останавливает сервер SQL Server, если он запущен из командной строки командой sqlservr.exe.
При завершении работы все данные из кэша сохраняются на диск, кроме случая, когда остановка сервера производится с помощью комбинации клавиш CTRL+C. В этом случае сохранения данных не происходит, в результате время последующего запуска сервера увеличивается, так как необходимо выполнить фиксацию законченных и откат незавершенных транзакций.
SQL Server 2000 ожидает завершения всех активных команд Transact-SQL и хранимых процедур, и только после их завершения происходит остановка сервера. Однако если вы останавливаете сервер командой SHUTDOWN WITH NOWAIT, остановка происходит незамедлительно вне зависимости от того, все ли активные операции завершены.