none
management studio를 이용한 이 후 mssql 를 응용프로그램들이 접속을 못합니다 RRS feed

  • 질문

  • mssql management studio 를 이용하여 아래와 같이 실행하였습니다.

    (로그파일축소를 위한 쿼리 실행)

    DATABASE 속성에서 log 자동증가를 10% 에서 1000MB 로 바꾸었습니다.

    (로그파일축소를 위한 쿼리 실행)

    그리고 mssql management studio 를 종료하지 않고 그냥 켜 두었습니다.

    그런데 문제는 1일 정도 지난 후  mssql 응용프로그램들이 접속을 할 수없는 상태가 되었습니다.

    그래서 mssql management studio 를 종료하니 다시 mssql 응용프로그램들이 접속을 할 수 있게 되었습니다.

    무슨 문제 일까요?

    로그파일 축소를 위한 쿼리

    USE [데이타베이스이름]

    GO
    -- Declare variables
    DECLARE @SqlStatement as nvarchar(max)
    DECLARE @LogFileLogicalName as sysname

    -- Alter the database to simple recovery
    SET @SqlStatement = 'ALTER DATABASE ' + DB_NAME() + ' SET RECOVERY SIMPLE'
    EXEC ( @SqlStatement )

    -- Make sure it has been altered
    SELECT [name], [recovery_model_desc] FROM sys.databases WHERE [name] = DB_NAME()

    -- Set the log file name variable
    SELECT @LogFileLogicalName = [Name] FROM sys.database_files WHERE type = 1

    -- Shrink the logfile
    DBCC Shrinkfile(@LogFileLogicalName, 1)

    -- Alter the database back to FULL
    SET @SqlStatement = 'ALTER DATABASE ' + DB_NAME() + ' SET RECOVERY FULL'
    EXEC ( @SqlStatement )

    -- Make sure it has been changed back to full
    SET @SqlStatement = 'SELECT [name], [recovery_model_desc] FROM ' + DB_NAME() + '.sys.databases WHERE [name] = ''' + DB_NAME() + ''''

    EXEC ( @SqlStatement )

    응용프로그램들이 접속이 되지 않았을때의 이벤트

    5144 이벤트

    Autogrow of file 'DB_log' in database 'DATABASE_1' was cancelled by use or timed out after 30499 milliseconds. Use ALTER DATABASE to set a smaller FILEGROWTH value for this file or to explicityly set a new file size.

    5145 이벤트

    Autogrow of file 'DB_log' in database 'DATABASE_1' took 77508 milliseconds. Consider using ALTER DATABASE to set a smaller FILEGROWTH for this file.

    2018년 10월 23일 화요일 오전 5:09

모든 응답