허걱~ 로그파일이 20 기가로 자라버렸다.
당장 없애버려야지...

sp_helpdb [데이터베이스명]

해서 로그 파일 이름을 알아낸다.

Backup Log [데이터베이스명] WITH Truncate_only

로그를 잘라낸다. 이걸 하지 않으면 다음 dbcc shrinkfile 명령이 안된다. 꼭 해야한다.
난 요고 안하고 바로 dbcc shrinkfile 명령했다...
1시간 동안 삽질했다.

DBCC SHRINKFILE ([위에서 알아낸 로그파일 이름], [줄일 용량 (MB)] )

이제 로그가 줄었다.

처음 데이터베이스를 생성할때 로그파일을 제한해두면 이런 귀찮은 짓거리를 안해도 된다.

.. 헉 처음 데이터베이스 생성할때 로그파일을 제한해 두니까.. 제한한 용량만큼 로그파일이 커지고 나면 ..
로그가 꽉 찾다고 에러가 발생한다. 헉... 제한해두면 제한한 용량 내에서 자동으로 이전 것부터 지우는 줄 알았는데...  그것이 아니었다. 흠... 속았다... 따라서 처음 부터 제한해 두면 금방 로그가 차서 에러를 양산할 수 있다.  


//// MSSQL 2008  위 명령어가 안된다.
// 트랜잭션 로그 파일 줄이는 방법은 ...

-- 트랜잭션로그를 사용하지 않는 모드로 변경후
alter database [데이터베이스명] set recovery simple with no_wait

-- 로그를 1MB로 잘라내고
DBCC SHRINKFILE ([로그파일이름], 1)

-- 원상태로
alter database [데이터베이스명] set recovery full with no_wait
반응형
FUNCTION ChangeMoneyStr(strValue)
    DIM strReturn, nShare, nRest, nCount, strDecimal

    ' 소숫점 있으면
    IF InStr(strValue, ".") > 0 THEN
         strDecimal = Mid(strValue, InStr(strValue, ".")) 
         strValue = Left(strValue, InStr(strValue, ".") - 1)
    ELSE 
         strDecimal = ""
    END IF

    IF Len(strValue) > 3 THEN
        nShare = Len(strValue) / 3
        nRest = Len(strValue) MOD 3
       
        IF nRest = 0 THEN
            nRest = 3
            nShare = nShare - 1
        END IF
       
        strReturn = Left(strValue, nRest)
       
        FOR    nCount = 0 TO nShare - 1
            IF nCount < nShare THEN strReturn = strReturn & ","
            strReturn = strReturn & Mid(strValue, CInt(nRest) + 1 + (nCount * 3), 3)
        NEXT
       
        ChangeMoneyStr = strReturn & strDecimal
    ELSE
        ChangeMoneyStr = strValue & strDecimal
    END IF
END FUNCTION

예>
DIM strMoney
strMoney = ChangeMoneyStr( "123000" )
response.write(strMoney)  

123,000

반응형
SUB SendEmail(strFrom, strTo, strSubject, strContent)
   
    DIM objMail, FSO, File
    DIM URL, conf, Flds, strIIS

    ' 서버의 iis 버전을 알아낸다.
    strIIS = Request.ServerVariables("SERVER_SOFTWARE")
    strIIS = Split(Trim(strIIS), "/")
   
    IF strIIS(1) = "5.0" THEN     ' windows2000 -> CDONTS.NewMail
        SET objMail = Server.CreateObject("CDONTS.NewMail")
        SET conf = Server.CreateObject("CDO.Configuration")
    
        '미리 저장된 이메일 샘플 파일을 읽어서 보낼경우
        ' URL = server.MapPath("email_sample.asp")
        ' SET FSO = Server.CreateObject("Scripting.FileSystemObject")
        ' SET File = FSO.openTextFile(URL,1)
        ' strContent = File.ReadAll
        ' File.close

        WITH objMail
        .FROM     = strFrom
        .To         = strTo
        .Subject = strSubject
        .BodyFormat = 0
        .MailFormat = 0
        .Body = strContent
        .Send
        END WITH
       
    ELSE   ' IIS6.0 window2003  -> CDO.Message
   
        SET objMail = Server.CreateObject("CDO.Message")
        SET conf = Server.CreateObject("CDO.Configuration")
        SET Flds = conf.Fields

        ' 메일 서버 세팅   
        Flds("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "localhost" 'Mail Server Address or Domain or "localhost"
        Flds("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25  'SMTP Port
        Flds("http://schemas.microsoft.com/cdo/configuration/sendusing") = 1        'cdoSendUsingPort 1=내부, 2=외부 (외부 메일 서버 사용시 아래 정보들 반드시 있어야함.)
        Flds("http://schemas.microsoft.com/cdo/configuration/smtpserverpickupdirectory") = "C:\Inetpub\mailroot\Pickup"
'        Flds("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 'cdoBasic
'        Flds("http://schemas.microsoft.com/cdo/configuration/sendusername") = 메일 서버 계정 ID
'        Flds("http://schemas.microsoft.com/cdo/configuration/sendpassword") = 메일서버 계정 비밀번호
        Flds.Update

       '미리 저장된 이메일 샘플 파일을 읽어서 보낼경우
        ' URL = server.MapPath("email_sample.asp")
        ' SET FSO = Server.CreateObject("Scripting.FileSystemObject")
        ' SET File = FSO.openTextFile(URL,1)
        ' strContent = File.ReadAll
        ' File.close

        WITH objMail
            SET  .Configuration        = conf
            .MimeFormatted             = false
            .AutoGenerateTextBody  = false
            .FROM                         = strFrom
            .To                              = strTo
            .Subject                       = strSubject
            .HTMLBody                  = strContent
.BodyPart.Charset         ="ks_c_5601-1987"    '한글 깨질경우
.HTMLBodyPart.Charset="ks_c_5601-1987"     '한글 깨질경우
            .fields.update
            .Send
        END WITH
    END IF
    SET objMail = NOTHING
END SUB
반응형
반응형

CID (COLLATION : KOREAN_WANSUNG_CI_AS) = 대소문자 구분안함
CID (COLLATION : KOREAN_WANSUNG_CS_AS) = 대소문자 구분함

예>
SELECT * FROM TAB_USERINFO
  WHERE USERID COLLATE KOREAN_WANSUNG_CS_AS = 'SuperMan'


반응형

+ Recent posts