#title SQL Server 2012 업그레이드 '''1일차.''' 업그레이드를 위해 업그레이드 관리자를 다운받아 설치하려고 했다. 아.. 뭔가를 더 설치해야 한다고 한다. 다운받아서 설치했다.. 아.. 뭔가를 더 설치해야 한다고 한다. 다운받아서 설치했다.. 아.. 닷넷 프레임웍 4.0을 설치해야 한다고 한다. 아.. 재부팅하라고 한다. 재부팅하고, 다운받은 기타 등등을 설치했다. 프로필러를 띄워 하루치 sql을 수집했다. trace 파일은 1GB씩 짤라서.. '''2일차.''' 헐.. 프로필러로 수집한 sql이 하나, 둘, 셋.. 암턴 조낸 많다. 뭔가를 뱉어내길 기대하며, 업그레이드 관리자를 돌렸다. 음.. clr 사용자정의함수에 대한 경고, ssis balanced distributor에 대한 경고가 나왔다. 음.. 글쿤.. '''3일차.''' 업무시간(10~19) 이외에 작업해야 하므로, 19시에 시작. 아..os sp1을 설치해야 한다고 한다. 혹시 disk 용량이 모자랄까싶어 c드라이브 밑에 있던 page file을 옮겼다. os sp1은 조낸 오래걸린다. 밥먹고 왔다. ... 밥먹고 오니 재부팅하고 한다. 재부팅했다. 서버가 빨리 올라오길 바라며 ping -t를 날렸다. 서버가 올라왔다. 터미널로 붙으니 뭔가를 구성한다.. ㅡㅡ; 아.. 씨발.. 뭔가 오류라고 롤백하고 지랄이다. 다시 재부팅.. 오류가 뭔가 봤다.. 으잉? disk 공간부족? 헐.. 음.. page file이 걸렸다. 확인해보니 page file이 안지워졌고, os가 파일을 꽉 잡고 있는지 삭제도 안되었다. 임시방편으로 c드라이브에 아주 조금의 page file 공간을 할당하고 재부팅.. 다시 os sp1 설치.. 아.. 실패..음..웬지 이상함.. 그래서 시스템 정보를 보니 sp1이 설치되었다고 나옴.. 뭐지? 에이.. 모름.. 일단 go go!! sql server upgrade 시작 별다른거 없이 잘 진행되는데.. 조낸 느리게 설치됨.. sql server 2012 sp1 설치.. 역시 조낸 느리지만 성공. clr 사용자정의 함수 확인.. 잘됨.. 패스 ssis balanced distributor .. 안됨.. 혹시나 해서 balanced distributor 쓰는 ssis 패키지 리스트를 보고 N빵으로 나눈 뒤 개노가다가 시작. 뭐.. 금방 완료..노가다 체질인가? 흠.. ssis 패키지 업그레이드 ssdt로 그냥 막 업그레이드.. 닷넷 스크립트 사용하는 부분에서 경고 뜸.. 내가 고급프로그래밍 하는 것도 아니고 기본 문법만 쓰니까.. 걍 무시.. ssrs, ssas 확인.. 잘됨... os 업데이트 복병이 나타나 3시간 작업이 6시간 작업이 되었음.. 밤새 배치 작업이 잘 돌기를 바라며 새벽이슬 맞으며 집으로 고고싱.. '''4일차.''' 배치 작업 에러 뜸. 븅신같이...sql server 2008 r2에서 잘 돌던 sql이 뻑남.. 2008 r2에서는 논리적으로.. {{{ select convert(int, substring(..., 1, 10)) --(2)여기가 처리되었는데... from ... where convert(int, substring(..., 1, 10)) is not null --(1)여기부터 처리되고,, }}} {{{ select convert(int, substring(..., 1, 10)) --(1)여기부터 처리되고,, from ... where convert(int, substring(..., 1, 10)) is not null --(2)여기가 처리됨.. int로 변형하다가 문자가 섞여 에러.. }}} 음..where절의 내용과 select절의 내용이 같은 부분이 있어서 sql server 2012가 한꺼번에 처리할라 그러는 같음.. 그래서 sql server 2012부터 지원하는 함수인 try_convert를 이용하기로 함.. {{{ select convert(int, ...) from ... where try_convert(int, substring(..., 1, 10)) is not null }}} 음.. 잘됨.. ssis내에서 닷넷 스크립트 쓴거는 잘 넘어감.. 걍 경고였음.. 작업이 잘 처리됨.. 업그레이드 완료.. 된 줄 알았는데.. sp1에 패치되었다던 버그가 sp1이 적용된 서버에 그대로 재현되는걸 확인.. ms의 kb자료를 토대로 간단히 해결.. 아놔.. 데이터베이스 스냅샷을 logical name으로 만드는게 아니라 physical name으로 만드는 버그가 있다. 즉, 데이터 파일의 논리명과 물리명이 다를 경우 뻑난다. physical name으로 만들어주면 된다. 머.. 이런 븅신같은 버그가.. 에이.. 리포트도 하나 뻑났다.. rdl 다시 만든다.