SQL Server 2000 Управление с помощью Transact SQL:
Сегодня я покажу тебе, как можно управлять MS SQL Server 2000 с помощью Transact SQL. Это так называемый расширенный язык SQL. С помощью него можно не только создавать и удалять базы данных, но и управлять конфигурацией сервера. Сегодня нам предстоит познакомиться с этим процессом на практике.
Какие приемущества ты получаешь от такого метода управления SQL сервером? Самое первое, что приходит в голову - удалённое управление. Второе, что может посетить нашу голову - возможность самому написать удобную программу, которая через Transact SQL будет менять нужные параметры. Можно сказать, что ты можешь написать собственный Enterprise Meneger. Круто? Вот так вот.
Приступим. Для управления с помощью Transact SQL в MS SQL Server есть очень удобная утилита - SQL Query Analyser. Для её запуска нужно выбрать из меню "Пуск->Программы->Microsoft SQL Server->Query Analyser". После запуска перед тобой откроется вот такое окно:
В строке SQL Server ты должен ввести имя сервера, к которому хочешь подключиться. По умолчанию там стоит точка. Если ты оставишь её, то подключение произойдёт к локальному SQL Server который стоит у тебя по умолчанию. Если ты хочешь выбрать другой, то можешь выбрать его имя в выпадающем списке или ввести имя вручную.
Чуть ниже ты можешь поставить галочку над Start SQL Server if it is stopped". В этом случае, если сервер в данный момент не работает, то он будет запущен.
Внизу окна ты должен указать параметры соединения, а именно пароль и имя пользователя. Если ты выберишь переключатель Windows authentication , то соединение произойдёт под той учётной записью, под которой ты сейчас находишся в системе.
Итак, выбрали SQL Server, выбрали учётную запись и нажали "ОК". Если всё введено верно, то произойдёт соединение с сервером и ты увидешь окно:
Слевой стороны у меня находится браузер объектов сервера. Его можно открыть с помощью кнопки Object Browser или с помощью горячей клавиши F8.
Вверху окна находиотся выпадающий список , в котором показана база данных, к которой сейчас будет происходить обращение. Если ты используешь встроенные процедуры, то не имеет значение, какая база там выбрана. Если ты используешь простой язык SQL и операторы типа SELECT, то ты должен выбрать там ту базу данных, где находится таблица, к которой ты обращаешся.
В центре окна тебе доступно окна кода, в котором мы будем набирать команды Transact SQL и потом запускать их на выполнение.
Итак давай попробуем что-нибудь запустить. Набери в основном окне 'sp_configure'. Эта команда используется для конфигурации SQL Server и для просмотра его свойств. Теперь нажми на клавиатуре F5 или кнопку , чтобы запустить эту команду. Окно кода должно разбиться пополам. Верхняя часть останется как была, а в нижней появится результат выполнения команды:
Результат работы команды выведен в виде таблицы. Первая колонка - имя параметра, вторая - минимальное возможное значение, треться - максимально возможное значение, четвёртая - сконфигурированное значение, пятая - значение, с которым работает сейчас SQL Server. Некоторые параметры вступают в силу только после перезапуска SQL сервера. В таких случаях в колонке config_value (четвёртая колонка) будет показываться значение, которое ты ввёл. А в колонке run_value (пятая колонка) показывается старое значение, которое действует сейчас. Только после перезапуска новое значение станет действующим и появится в пятой колонке.
Для изменения какого-либо параметра тебе нужно набрать:
sp_configure 'Имя параметра', Значение
Попробуем изменить значение свойства "fill factor" на 50 (по умолчанию это 0). Для этого набери следующую команду и запусти её:
sp_configure 'fill factor', 50
Снова запусти sp_configure без параметров. Теперь этот параметр в колонке config_value изминился на 50. Если ты перезапустишь SQL сервер, то и в колонке run_value тоже произойдут изменения.
Поигрались и хватит. Верни старое значение этого параметра.
sp_configure 'fill factor', 0
А теперь давай познакомимся с основными параметрами SQL Server, на которые стоит влиять:
max server memory - максимальное количество памяти для сервера.
min server memory - минимальное количество памяти для сервера.
min memory per query - минимальное количество памяти выделяемое на каждый запрос.
max worker threads - максимальное количество потоков (возможные значения от 10 до 1024).
priority boost - приоритет сервера в ОС Windows (возможные значения 0 или 1).
user connections - количество соединений с сервером (возможные значения 0 или 32767).
fill factor - процент заполнения индексов (возможные значения 0 или 100).
С остальными параметрами можно познакомиться в файле помощи. По мере изучения SQL Server я буду продолжать знакомить тебя со встроенными процедурами, а на сегодня этого хватит. Не буду сразу забивать тебе голову сложными вещами.