Thats about 25% of the server space.
First and foremost, you really need to increase the size of your drive or move the error logs to a different drive. ~40GB for a C: drive might’ve been an okay default years ago, but you can quickly burn through that with misc files from applications — as you’re seeing.
You can easily configure this via SQL Server Configuration Manager:
by modifying the directory for the -e
parameter, which controls the error log destination.
How can I remove the archive logs as I don’t need them and reduce the
size in which the archive files grow to before recycling.
You can of course just delete the files manually, but it sounds like you really want to reduce the number of logs used and/or reduce their size.
The steps contained in the above link detail how to do this in SQL Server Management Studio:
In Object Explorer, expand the instance of SQL Server, expand
Management, right-click SQL Server Logs, and then click Configure.In the Configure SQL Server Error Logs dialog box, choose from the
following options.a. Log files count
Limit the number of the error log files before they are recycled
Check to limit the number of error logs created before they are
recycled. A new error log is created each time an instance of SQL
Server is started. SQL Server retains backups of the previous six
logs, unless you check this option, and specify a different maximum
number of error log files below.Maximum number of error log files
Specify the maximum number of archived error log files created before
they are recycled. The default is 6, not including the current one.
This value determines the number of previous backup logs that SQL
Server retains before recycling them.b. Log file size
Maximum size for error log file in KB
You can set the size amount of each file in KB. If you leave it at 0
the log size is unlimited.
295 / 209 / 67 Регистрация: 08.11.2010 Сообщений: 1,823 |
|
1 |
|
01.03.2019, 17:10. Показов 15973. Ответов 3
День добрый. Можно файлы простым выделением удалить или надо процедуру провести? C:Program FilesMicrosoft SQL ServerMSSQL10_50.SQLEXPRESSMSSQLLog SQL Server 2008 R2
0 |
3333 / 2038 / 727 Регистрация: 02.06.2013 Сообщений: 5,014 |
|
01.03.2019, 17:15 |
2 |
Мешают столь копеечные файлы?
0 |
295 / 209 / 67 Регистрация: 08.11.2010 Сообщений: 1,823 |
|
01.03.2019, 18:44 [ТС] |
3 |
Мешают столь копеечные файлы? 30 ГБ файл занимает.
0 |
3333 / 2038 / 727 Регистрация: 02.06.2013 Сообщений: 5,014 |
|
01.03.2019, 19:20 |
4 |
Сообщение было отмечено allukard как решение Решение Можно либо перезапустить службу сервера, либо выполнить sp_cycle_errorlog
1 |
How to clear error logs using a query in SQL Server without restarting the server instance?
marc_s
729k174 gold badges1327 silver badges1455 bronze badges
asked Jan 4, 2017 at 8:34
3
answered Jan 4, 2017 at 8:38
anonanon
85512 silver badges22 bronze badges
1
clear error logs using a query in SQL Server without restarting the server instance:
SP_CYCLE_ERRORLOG
After run the command, please check: «C:Program FilesMicrosoft SQL ServerMSSQL12.MSSQLSERVERMSSQLLog»
and delete old file (like: ERRORLOG.1, ERRORLOG.2 …).
I open SQL port 1433, so my ERRORLOG about 20Gb. Some one scan my Sql password. Don’t open port 1433 to internet.
answered Nov 28, 2019 at 3:51
DatusaDatusa
911 silver badge3 bronze badges
You can run: sp_cycle_errorlog
That will start a new log file.
If you want to really delete log entries, you’d have to run that command seven times. By default there are seven logs cycled through. But often DBAs change that to maximum possible of 99.
answered Sep 19, 2018 at 3:44
Mark VarnasMark Varnas
7018 silver badges10 bronze badges
1
Thats about 25% of the server space.
First and foremost, you really need to increase the size of your drive or move the error logs to a different drive. ~40GB for a C: drive might’ve been an okay default years ago, but you can quickly burn through that with misc files from applications — as you’re seeing.
You can easily configure this via SQL Server Configuration Manager:
by modifying the directory for the -e
parameter, which controls the error log destination.
How can I remove the archive logs as I don’t need them and reduce the
size in which the archive files grow to before recycling.
You can of course just delete the files manually, but it sounds like you really want to reduce the number of logs used and/or reduce their size.
The steps contained in the above link detail how to do this in SQL Server Management Studio:
In Object Explorer, expand the instance of SQL Server, expand
Management, right-click SQL Server Logs, and then click Configure.In the Configure SQL Server Error Logs dialog box, choose from the
following options.a. Log files count
Limit the number of the error log files before they are recycled
Check to limit the number of error logs created before they are
recycled. A new error log is created each time an instance of SQL
Server is started. SQL Server retains backups of the previous six
logs, unless you check this option, and specify a different maximum
number of error log files below.Maximum number of error log files
Specify the maximum number of archived error log files created before
they are recycled. The default is 6, not including the current one.
This value determines the number of previous backup logs that SQL
Server retains before recycling them.b. Log file size
Maximum size for error log file in KB
You can set the size amount of each file in KB. If you leave it at 0
the log size is unlimited.
Thats about 25% of the server space.
First and foremost, you really need to increase the size of your drive or move the error logs to a different drive. ~40GB for a C: drive might’ve been an okay default years ago, but you can quickly burn through that with misc files from applications — as you’re seeing.
You can easily configure this via SQL Server Configuration Manager:
by modifying the directory for the -e
parameter, which controls the error log destination.
How can I remove the archive logs as I don’t need them and reduce the
size in which the archive files grow to before recycling.
You can of course just delete the files manually, but it sounds like you really want to reduce the number of logs used and/or reduce their size.
The steps contained in the above link detail how to do this in SQL Server Management Studio:
In Object Explorer, expand the instance of SQL Server, expand
Management, right-click SQL Server Logs, and then click Configure.In the Configure SQL Server Error Logs dialog box, choose from the
following options.a. Log files count
Limit the number of the error log files before they are recycled
Check to limit the number of error logs created before they are
recycled. A new error log is created each time an instance of SQL
Server is started. SQL Server retains backups of the previous six
logs, unless you check this option, and specify a different maximum
number of error log files below.Maximum number of error log files
Specify the maximum number of archived error log files created before
they are recycled. The default is 6, not including the current one.
This value determines the number of previous backup logs that SQL
Server retains before recycling them.b. Log file size
Maximum size for error log file in KB
You can set the size amount of each file in KB. If you leave it at 0
the log size is unlimited.
278 / 197 / 62 Регистрация: 08.11.2010 Сообщений: 1,762 |
|
1 |
|
01.03.2019, 17:10. Показов 13961. Ответов 3
День добрый. Можно файлы простым выделением удалить или надо процедуру провести? C:Program FilesMicrosoft SQL ServerMSSQL10_50.SQLEXPRESSMSSQLLog SQL Server 2008 R2 0 |
3317 / 2027 / 722 Регистрация: 02.06.2013 Сообщений: 4,972 |
|
01.03.2019, 17:15 |
2 |
Мешают столь копеечные файлы? 0 |
278 / 197 / 62 Регистрация: 08.11.2010 Сообщений: 1,762 |
|
01.03.2019, 18:44 [ТС] |
3 |
Мешают столь копеечные файлы? 30 ГБ файл занимает. 0 |
3317 / 2027 / 722 Регистрация: 02.06.2013 Сообщений: 4,972 |
|
01.03.2019, 19:20 |
4 |
Сообщение было отмечено allukard как решение Решение Можно либо перезапустить службу сервера, либо выполнить sp_cycle_errorlog 1 |
How to clear error logs using a query in SQL Server without restarting the server instance?
marc_s
721k173 gold badges1320 silver badges1442 bronze badges
asked Jan 4, 2017 at 8:34
3
answered Jan 4, 2017 at 8:38
anonanon
85513 silver badges22 bronze badges
1
clear error logs using a query in SQL Server without restarting the server instance:
SP_CYCLE_ERRORLOG
After run the command, please check: «C:Program FilesMicrosoft SQL ServerMSSQL12.MSSQLSERVERMSSQLLog»
and delete old file (like: ERRORLOG.1, ERRORLOG.2 …).
I open SQL port 1433, so my ERRORLOG about 20Gb. Some one scan my Sql password. Don’t open port 1433 to internet.
answered Nov 28, 2019 at 3:51
DatusaDatusa
811 silver badge3 bronze badges
You can run: sp_cycle_errorlog
That will start a new log file.
If you want to really delete log entries, you’d have to run that command seven times. By default there are seven logs cycled through. But often DBAs change that to maximum possible of 99.
answered Sep 19, 2018 at 3:44
Mark VarnasMark Varnas
6718 silver badges10 bronze badges
1
Пересказ статьи Rajendra Gupta. How to manage SQL Server logs effectively
В статье дается обзор журналов SQL Server для управления и устранения неполадок на сервере.
Введение
Журналы являются лучшим средством администратора баз данных при решении любых проблем. Эти проблемы могут быть связаны с конфигурацией сервера, запуском, восстановлением, производительностью, флагами трассировки, тупиковыми ситуациями, вводом-выводом или задержками. Предположим, например, что ваш экземпляр SQL Server перезапускается по непонятным причинам, и после перезапуска службы SQL работают, однако ваше приложение не имеет доступа к базе данных. Таким образом, для исследования проблемы вам нужно заглянуть в последний журнал SQL Server, чтобы проконтролировать процесс восстановления базы данных и узнать оценку времени его завершения.
Администратор базы данных может также сконфигурировать SQL Server для выполнения дополнительных записей в журналы ошибок. Например, мы можем включить флаг трассировки для захвата информации о тупиковых ситуациях. DBA должен регулярно просматривать эти журналы в поисках потенциальных проблем. Вы можете обнаружить в журналах такую информацию, как сбой резервного копирования, ошибки входа, ошибки ввода-вывода. Эти журналы ошибок являются отличным средством для обнаружения существующих и потенциальных проблем в экземплярах SQL Server.
Журналы SQL Server известны как SQL Server Error logs. Журналы ошибок содержат информационные сообщения, предупреждения и сообщения о критичных ошибках. Вы можете просматривать некоторые из этих журналов также в просмотрщике событий Windows. Однако рекомендуется использовать журналы SQL Server для получения подробной информации.
Если вы подключены к экземпляру SQL Server в SSMS, перейдите к Management -> SQL Server Logs. Как показано ниже, имеется текущий журнал и шесть архивных журналов (Archive#1 — Archive #6).
Метод 1: Использование расширенной процедуры xp_readerrorlog
Текущие журналы являются самыми последними файлами журнала ошибок, и вы можете использовать их для просмотра недавней деятельности с момента запуска SQL Server или ручного перезапуска файла журнала. Журнал ошибок SQL Server является текстовым файлом, хранящимся в каталоге журналов экземпляра SQL Server. Вы можете использовать расширенную процедуру xp_readerrorlog для нахождения текущего местоположения журнала ошибок.
USE master
GO
xp_readerrorlog 0, 1, N'Logging SQL Server messages', NULL, NULL,NULL
GO
Этот запрос имеет следующие параметры:
- Файл журнала ошибок: значение 0 для текущего, 1 для Archive#1, 2 для Archive #2.
- Тип файла журнала: значение 0 для журнала ошибок SQL Server, 1 для агента SQL Server.
- Строка поиска 1
- Строка поиска 2
- Время от
- Время до
- Сортировка результатов — по возрастанию (N’ASC) или по убыванию (N’Desc)
Для моего демонстрационного экземпляра файл журнала ошибок находится в папке C:Program FilesMicrosoft SQL ServerMSSQL14.MSSQLSERVERMSSQLLogERRORLOG.
Метод 2: Использование функции SERVERPROPERTY()
Мы можем использовать в запросе функцию SERVERPROPERTY, и также определить местонахождение SQL Server ERRORLOG.
SELECT SERVERPROPERTY('ErrorLogFileName') AS 'Error log location'
Метод 3: использование менеджера конфигурации SQL Server
Откройте SQL Server Configuration Manager и посмотрите параметры запуска. Местоположение файлов журнала указывается с помощью переключателя -e.
Вы можете развернуть каталог журналов и просмотреть текущий или архивные файлы журнала. Эти журналы ошибок можно открыть в текстовом редакторе, таком как Notepad или Visual Studio Code.
Конфигурирование числа файлов журнала SQL Server и их размеров
По умолчанию SQL Server поддерживает текущий и 6 архивных файлов журнала. Чтобы уточнить значение, выполните щелчок правой кнопкой на папке SQL Server Logs в SSMS и выберите Configure.
SQL Server записывает всю информацию в текущий файл журнала, независимо от размера файла журнала. В загруженной системе или в экземпляре с большим количеством ошибок вам может быть сложно просмотреть файл журнала в SSMS. SQL Server создает новый файл журнала и архивирует текущий файл в следующих случях.
- При перезапуске службы SQL.
- При перезагрузке журнала ошибок вручную.
Однако если вы часто перезапускаете серверы по неизвестным причинам, то можете потерять все исторические данные в архивных журналах, поскольку их поддерживается только шесть. Поскольку ошибки содержат ценную информацию, которая может помочь в решении проблем, вы можете не захотеть потерять эти важные данные. Тогда, возможно, вы захотите сохранять файлы журнала производственной системы в течение недели или даже месяца.
SQL Server позволяет сконфигурировать от 6 до 99 файлов журнала ошибок. Вы не можете указать значение меньше шести, поскольку в любом случае будет поддерживаться шесть архивных журналов ошибок.
Для изменения значения по умолчанию числа файлов журнала ошибок поставьте галочку в поле с названием “Limit the number of error log files before they are recycled”. Например, следующий скриншот показывает максимальное число файлов журнала ошибок, равное 30.
Это эквивалентно выполнению скрипта T-SQL, который использует расширенную хранимую процедуру и обновляет значение регистра.
USE [master]
GO
EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'SoftwareMicrosoftMSSQLServerMSSQLServer', N'NumErrorLogs', REG_DWORD, 30
GO
Замечание. Следует перезапустить службу SQL, чтобы изменения вступили в силу.
Как утверждалось ранее, по умолчанию размер журнала ошибок не ограничен. Например, если вы не запускаете SQL Server в течение длительного периода и вручную не перегружаете файлы журнала, этот файл вырастет до громадных размеров. Поэтому в конфигурации журнала ошибок показано значение 0, соответствующее неограниченному размеру журнала.
Вы можете задать размер в Кб для ограничения размера журнала ошибок в соответствии с вашими требованиями. Например, здесь мы ограничиваем размер файла журнала в 1Гб.
Эквивалентный скрипт T-SQL обновляет ErrorLogSizeInKb в регистре SQL Server.
USE [master]
GO
EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'SoftwareMicrosoftMSSQLServerMSSQLServer', N'ErrorLogSizeInKb', REG_DWORD, 1048576
GO
Перезагрузка журналов ошибок вручную
SQL Server позволяет вручную перегружать журналы ошибок для эффективного управления ими. Например, предположим, что вы увеличили число файлов журнала ошибок до 30. Тогда мы можем создать задание для агента SQL Server, который перегружает журналы ошибок в полночь. Тем самым мы имеем файл журнала ошибок на каждый день, если SQL Server не будет перезапущен в этом промежутке. Для перезагрузки вручную выполните системную хранимую процедуру sp_cycle_errorlog. Эту процедуру может выполнить пользователь с фиксированной серверной ролью sysadmin.
EXEC sp_cycle_errorlog
GO
Файл журнала SQL Server Agent
Агент SQL Server также имеет отдельный журнал ошибок, подобный журналам SQL Server. Вы можете обнаружить его в папке SQL Server Agent – > Error logs.
Щелкните правой кнопкой на папке Error log и выберите команду Configure. Это даст местоположение журнала ошибок агента и уровень журнала агента.
Файл журнала агента имеет расширение *.OUT и хранится в папке log при конфигурации по умолчанию. Например, в моей системе файл журнала находится здесь: C:Program FilesMicrosoft SQL ServerMSSQL14.MSSQLSERVERMSSQLLogSQLAGENT.OUT.
По умолчанию в файл журнала записываются ошибки и предупреждения; однако мы можем включить информационные сообщения:
- Предупреждения: Эти сообщения предоставляют информацию о потенциальных проблемах. Например, “Job X was deleted while it was running” (задание Х было удалено во время выполнения).
- Сообщение об ошибках: оно дает информацию, которая требует немедленного вмешательства администратора баз данных, например, невозможность почтового сеанса.
Чтобы добавить информационное сообщение, поставьте галочку в поле Information.
SQL Server использует до 9 файлов журнала агента SQL Server. Имя текущего файла SQLAGENT.OUT. Файл с расширением .1 указывает на первый архивный журнал ошибок агента. Аналогично расширение .9 указывает на 9-й (самый старый) архив журнала ошибок.
Файлы журнала агента SQL Server перегружаются всякий раз, когда перезапускается SQL Server Agent. Для того, чтобы сделать это вручную, выполните щелчок правой кнопкой на папке Error Logs folder и выберите Recycle.
Или используйте хранимую процедуру sp_cycle_agent_errorlog для перезагрузки файлов журнала агента SQL Server вручную.
USE msdb ;
GO
EXEC dbo.sp_cycle_agent_errorlog ;
GO
Хранимая процедура архивирует текущий журнал ошибок агента, используя следующий процесс:
- Создается новый текущий журнал ошибок агента.
- Текущий журнал ошибок SQLAgent.out преобразуется в SQLAgent.1.
- SQLAgent.1 преобразуется в SQLAgent.2
Заключение
Файл журнала ошибок SQL Server содержит информацию, предупреждения и критические сообщения экземпляра. Это полезно для решения проблем, аудита входа (успешно, отказ). Администратор базы данных может сконфигурировать требуемое число архивных журналов ошибок и каталогов для хранения этих файлов.
Вы должны регулярно просматривать записи в журнале в качестве подготовки ежедневных или еженедельных отчетов о состоянии сервера.
В MS SQL очистка журнала транзакций необходима в том случае, если настроена полная модель восстановления базы данных. Если журнал транзакций переполнился, то ваша база данных откажется работать и будет выдавать ошибку: «журнал транзакций для базы данных заполнен». Почему такое происходит и как этого избежать? Рассмотрим два решения, которые помогут быстро устранить ошибку и продолжить работу с базой.
Увеличиваем размер журнала транзакций.
Запускаем SQL Server Management Studio, заходим в свойства базы и выбираем пункт [Файлы].
Для типа файла «Журнал» увеличиваем максимальный размера файла для авторасширения.
Сжимаем файл журнала транзакций.
Для сжатия журнала транзакций необходимо модель восстановления базы смнеить на простую, выполнить сжатие журнала, после чего модель восстановления переключить обратно на полную.
Запускаем SQL Server Management Studio, заходим в свойства базы и выбираем пункт [Параметры]. Модель восстановления выбираем «Простая» и нажимаем ОК.
Далее правой клавишей мышки по базе и выбираем из контекстного меню [Задачи] — [Сжать] — [Файлы]
Тип сжатия: Журнал
Операция сжатия: Реорганизовать файлы, перед тем как освободить неиспользуемое место
И указываем размер до которого необходимо сжать, например 0.
Теперь нужно вернуться в свойства базы к пункту [Параметры] и переключить модель восстановления на «Полная».
- Remove From My Forums
-
Question
-
Hi,
I am using SQL Server 2008 & I want to delete Error Logs or SQL Server logs which are
older.How should I do that?
Please provide me the solution……..
Chetan Anil Patil SQL DBA
Answers
-
Use sp_cycle_agent_errorlog for SQLAgent log
Balmukund Lakhani | Please mark solved if I’ve answered your question, vote for it as helpful to help other user’s find a solution quicker
———————————————————————————
This posting is provided «AS IS» with no warranties, and confers no rights.———————————————————————————
My Blog: http://blogs.msdn.com/blakhaniTeam Blog: http://blogs.msdn.com/sqlserverfaq
- Marked as answer by
Monday, January 31, 2011 10:37 AM
- Marked as answer by
SQL Server Error Log is the best place for a Database Administrators to look for informational messages, warnings, critical events, database recover information, auditing information, user generated messages etc. SQL Server creates a new error log file every time SQL Server Database Engine is restarted.
Recycle SQL Server Error Log file
This article explains how to Recycle SQL Server Error Log file without restarting SQL Server Service.
Database administrator can recycle SQL Server Error Log file without restarting SQL Server Service by running DBCC ERRORLOG command or by running SP_CYCLE_ERRORLOG system stored procedure.
Starting SQL Server 2008 R2 you can also limit the size of SQL Server Error Log file. For more information see Limit SQL Server Error Log File Size in SQL Server. However, to increase the number of error log file see the following article for more information How to Increase Number of SQL Server Error Log Files.
Limiting SQL Server Error Log File Size
Execute the below TSQL code in SQL Server 2012 and later versions to set the maximum file size of individual error log files to 20 MB.
SQL Server will create a new file once the size of the current log file reaches 20 MB. This helps in reducing the file from growing enormously large.
USE [master];
GO
EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE'
,N'SoftwareMicrosoftMSSQLServerMSSQLServer'
,N'ErrorLogSizeInKb'
,REG_DWORD
,20480;
GO
Recycle SQL Server ErrorLog File using DBCC ERRORLOG Command
USE [master];
GO
DBCC ERRORLOG
GO
Recycle SQL Server Error Log File using SP_CYCLE_ERRORLOG System Stored Procedure
Use [master];
GO
SP_CYCLE_ERRORLOG
GO
Best Practice for Recycle Error Log SQL Server
It is highly recommended to create an SQL Server Agent Job to recycle SQL Server Error Log once a day or at least once a week.
Conclusion
In this article explains how to Recycle SQL Server Error Log file without restarting SQL Server Service.
Chetna Bhalla
LESS ME MORE WE
Chetna Bhalla, the founder of MyTechMantra.com, believes that by sharing knowledge and building communities, we can make this world a better place to live in. Chetna is a Graduate in Social Sciences and a Masters in Human Resources and International Business. She is an alumnus of Vignana Jyothi Institute of Management, Hyderabad, India. After graduation, Chetna founded this website, which has since then become quite a favorite in the tech world. Her vision is to make this website the favorite place for seeking information on Databases and other Information Technology areas. She believes that companies which can organize and deploy their data to frame strategies are going to have a competitive edge over others. Her interest areas include Microsoft SQL Server and overall Database Management. Apart from her work, Chetna enjoys spending time with her friends, painting, gardening, playing the violin, and spending time with her son.