Рейтинг:
11
Mike Meinz
Мне никогда не нужно было управлять ShrinkDatabase
но у меня есть и другие BAT-файлы, которые я использую для планового обслуживания своей базы данных. Ниже приведен пример использования ваших SQL-команд.
1. Создание C:\BAT\SHRINKDB.BAT
содержащие эти утверждения:
cd C:\Program Files\Microsoft SQL Server\110\Tools\Binn
SQLCMD -S YOURCOMPUTERNAME\SQLEXPRESS -E -w 166 -e -i C:\BAT\ShrinkDB.sql -o C:\BAT\ShrinkDB.log
После казни, C:\BAT\ShrinkDB.log будет содержать выходные данные SQLCMD.
2. Создание
C:\BAT\SHRINKDB.SQL
содержащий команды SQL:
ALTER database dbName SET RECOVERY simple
GO
DBCC shrinkdatabase (dbName)
GO
3. Используйте планировщик задач Windows для планирования
C:\BAT\ShrinkDB.bat
phil.o
Мои 5! ;)
Просто убедитесь, что учетная запись, под которой выполняется задача, имеет достаточные права на базу данных для выполнения этих команд.
Member 10435696
Ваш 1-й пункт говорит создать C:\BAT\SHRINKDB.BAT
Но я не могу найти папку BAT на диске C...Plz поможет вам создать пакетный файл.Я хочу назначить процедуру ежедневного исполнения в полночь
Mike Meinz
Нажмите кнопку "Новая папка" и создайте папку BAT или папку с любым именем, которое вам нравится. Я использую летучую мышь, потому что она короткая и легко запоминается.
Member 10435696
k Спасибо за ответ, А что вы храните в ShrinkDB и как вы это делаете??
Member 10435696
SQLCMD -S YOURCOMPUTERNAME\SQLEXPRESS-E-w 166-e-i C:\BAT\ShrinkDB.sql -о C:\BAT\ShrinkDB.log
plz объясните-E-W & 166-E
Mike Meinz
Эти параметры описаны в документации Microsoft для SQLCMD. Видеть Программа sqlcmd .
- E означает использовать доверенное соединение
-э-Эхо входных данных выходных данных журнала
-ж 166 166 средства использовать, так как ширина входа выхода
-i означает, что имя файла входной SQL-команды следует (C:\BAT\Shrinkdb.sql)
-o означает, что имя выходного файла журнала следует (C:\BAT\Shrinkdb.log)
Видеть 2. в решении 1. Это наглядный пример содержания SHRINKDB.Sql-файл, который считывается с помощью программы sqlcmd. Я использовал Notepad.exe чтобы создать как ShrinkDb. SQL, так и ShrinkDB.BAT
Member 10435696
к благодаря..Вы решили мою проблему..Спасибо
vijay kumar sahu
Прочитав все вышеприведенные комментарии экспертов, я попробовал это сделать, но, похоже,
на меня это не действует. Может ли кто-нибудь проверить, не делаю ли я что-то не так?
Вот файл bat с командой.
программа sqlcmd -х годов .\отчеты -е -я "C:\Vijay Саху\официальное\запросов к БД\MCX_Test.летучая мышь" -о "C:\Vijay Саху\официальное\ДБ Queries\log.txt"
Bat файл содержит эту команду
ИСПОЛЬЗУЙТЕ [MCX]
вставить в тест (CurrentDateTime) значения (getdate())
И мой проект ConnectionString=
&ЛТ;добавить имя="МСХ" свойства connectionString="источник данных=гр-85HKG32\SQL2012;начальный каталог=МСХ;Комплексная безопасность=истина" имя_поставщика="системы.Данных.В sqlclient"/&ГТ;
Может ли кто-нибудь помочь мне как можно скорее выйти из БЦЗ крайнего срока реализации проекта. На самом деле
Я ищу это решение, потому что мой общий веб-сайт не позволяет мне создать агент заданий sql...
Mike Meinz
Видеть Документация утилиты SQLCMD[^]
1. Вы указали неверное имя сервера в параметрах программы sqlcmd.
2.Если вы не вошли на тот же компьютер, что и SQL Server, то вы не сможете использовать-E (доверенное соединение) и должны будете указать имя пользователя и пароль с помощью параметров-U и-P.
Пример:
программа sqlcmd -с гр-85HKG32\SQL2012 -у в <имя пользователя> По-Р <пароль> У-Я "C:\Vijay Саху\официальное\запросов к БД\MCX_Test.летучая мышь" -о "C:\Vijay Саху\официальное\ДБ Queries\log.txt"
Также, я предлагаю переименовать файл, содержащий SQL-операторы с "C:\Vijay Саху\официальное\запросов к БД\MCX_Test.летучая мышь" в "C:\Vijay Саху\официальное\запросов к БД\MCX_Test.для SQL", чтобы избежать путаницы. Использовать расширение файла ".летучая мышь" для пакетных командных файлов и ".SQL" для файлы, содержащие операторы SQL.
Нет такого слова, как"БЦЗ".
Я думаю, ты имеешь в виду " потому что."
vijay kumar sahu
Оооо!!! Да это "потому что".
Я попробовал этот код ниже, и он отлично работает для меня.
osql -S GH-85HKG32\SQL2012 -E -i "C:\path\Test.sql" -o "C:\path\defragIndexesLog.txt"