오라클을 모르니 ㅠ.ㅠ 마이그레이션 작업도 해봐야되고 참 그렇다. This set me into this journey of educating the migration team on how important it is to send the appropriate data when working inside SQL Server. These might not be simple and I don't recollect writing about these. See below a pseudo mapping of datatypes that one needs to use when doing such migration exercise. It is important to take the time to do profiling..
SQL Server SSMS의 필요한 기능들이 있다. 필요할때 쓰면 유용하다. #.1 세션창의 줄번호 표시 도구 > 옵션 > 텍스트 편집기 > 모든 언어 > 줄 번호 선택 #.2 세로블럭 지정하는 방법 - Alt Key & Drag 세로블럭도 지정되지만 라인별 텍스도 입력도 동시에 입력이 된다. 노가대 할때 유용하다. #.3 결과창의 그리드 크기변경하기 도구 > 옵션 > 환경 > 글꼴 및 색 > 설정표시, 크기 옵션등에서 변경 가능. #.4 결과창을 상위탭에서 보기 도구 > 옵션 > 쿼리결과 > SQL Server > 표형태로 결과표시(텍스트) > 별도의 탭에 결과 표시 옵션 체크 세미나 발표 시 유용하다. 해당 포스트의 계속 업데이트 할 예정이다.
이런경우에는 찾기 어려울 것 같다. 작업의 로그를 모니터링 하는 수 밖에 없을 듯. 모리터링 쿼리는 아래와 같다.SELECT JS.name AS JobName,JH.step_name AS StepName,JH.message AS StepMessage,JH.run_duration AS StepDuration,JH.run_date AS TSFROM msdb.dbo.sysjobhistory JHINNER JOIN msdb.dbo.sysjobs JS ON JS.job_id = JH.job_idWHERE JH.message LIKE '%Query timeout expired%'ORDER BY JH.run_date descGO Forcing SQL Agent Jobs to Fail When Remote Proced..
SQL Server에서 대량로그작업을 하게되면 LOG파일에 모두 기록을 하게 되고 해당 로그파일이 증가하게 된다. 로그파일이 증가하는 것을 막기 위해서 SQL에서는 복구모델인 [대량로그] 옵션이 있다. 대량로그 백업을 할 경우에 복구모델을 변경하고 작업한 후 다시 원복하는 작업을 했는지 확인해보자. [시나리오] 해당 로그백업 파일에 복구모델을 변경해서 대량로그작업을 하고 다시 복구모델을 변경을 했을 경우에 그 내역을 확인하는 방법이 있을까? [방법] 결론적으로 복구모델을 변경했다면 아래와 같이 확인이 가능하다. CREATE DATABASE BulkLogDB GO BACKUP DATABASE BulkLogDB TO DISK = N'nul' GO -- 복구모델 변경 : 대량로그 옵션 USE [master] ..
SQL Server 설치 후 메모리최적화 작업을 한다. 보통 Min/Max Server Memory 와 LPIM 을 설정하게 된다. [질문] SQL Server 설치 시 시작계정을 기본계정인 NT Service/MSSQLSERVER 로 디폴트 설치하면 [메모리에 페이지 잠금] 옵션을 추가해야 하나요? [답변] 예. 기본 계정도 옵션에 추가해야 합니다. 단, 로컬시스템은 안해도 된다. [확인] 기본 설치 시 기본 시작계정은 아래와 같이 " NT Service/MSSQLSERVER" 로 설치가 된다. 기본 설치 후 로그를 보면 아래와 같이 "Using conventional memory in the memory manager." 로 기본로그를 확인 할 수 있다. "메모리에 페이지 잠금" 옵션을 아래와 같이 ..
SQL Server 에 오라클클라이언트를 마니 설치하여 이기종 데이터관리를 많이 하고 있다. Oracle Client 도 내가 깔아 줘야하는 판에 기존의 어떤 버전이 깔려 있는지도 확인해야 할 때가 있다. 특히 SQL Server 마이그레이션 작업 시 필요하다. sqlplus 로 접속해서 버전때리면 한방에 알수 있지만 접속이 안될 경우에 해보면 좋다. [오라클 클라이언트 설치 버전 및 비트 확인] Command - tnsping %ORACLE_HOME%\inventory\ContentsXML folder and open comps.xml file Look for PLAT="NT_AMD64" then this Oracle Home is 64 bit. PLAT="NT_X86" then - 32 bit. 검색..
SQL Server 시작할때 시작계정을 레지스트리의 값을 가져와서 구동이 된다. 그럼 레지스트리의 어느 경로에 있을까? HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSSQLSERVER HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SQLSERVERAGENT 위 레지스트리의 경로에 보면 CurrentControlSet 바로 위에 있는 ControlSet001..002 이렇게 생성이 된다. 어떤 의미일까? 결론 : CurrentControlSET은 001꺼로 동기화를 하고 최근 마지막구성은 002 로 복원안전모드시 가져오게 되는 값이다. https://support.microsoft.com/en-us/kb/1..
SQL Server 2000에서 상위 버전으로 호환성수준을 변경을 하면 오류가 발생하는 쿼리들이 있다. 그래서 상위버전으로 업그레이드 할 경우에 업그레이드 관리자를 수행하여 호환성테스트를 하게 된다. 업그레이드 관리자(Upgrade Advisor)를 수행하여 호환성이슈가 발생하는 케이스는 아래의 경우에만 추출하게 된다. https://msdn.microsoft.com/ko-kr/library/ee240650(v=sql.120).aspx 그 외에는 아래 쿼리처럼 업그레이드관리자를 수행하여 보고서를 확인하면 아래 쿼리는 검출할 수 없다. [데모] #.호환성 수준 80 create table tblx(col1 int, col2 int) insert into tblx values(4,44) select * fr..
아직도 SQL Server 7.0을 사용하는 회사가 있다. 기술지원 시 간혹 난감할 때가 있다. SQL Server 7.0을 상위버전으로 업그레이드를 어떻게 해야할까? 호환성수준이 70이므로 바로 SQL Server 2008(R2)로 업그레이드가 불가능하다. SQL Server 7.0 => 70 SQL Server 2000 => 80 (70) SQL Server 2005 => 90 (80, 70) SQL Server 2008(R2) => 100 (90, 80) 위 처럼 지원 가능한 호환성수준이 있다. 70은 SQL Server 2005까지만 지원하므로 백업/복원으로 이상의 버전에서는 복원이 안된다. SQL Server 2008R2에서 복원하면 아래와 같은 오류가 발생한다. 그래서 SQL Server 20..
상위버전으로 마이그레이션시 호환성수준의 이슈가 발생한다. 아래와 같은 문서를 참고하셔서 마이그레이션하는데 도움이 될 것 같다. 업그레이드 어드바이저를 설치하여 수행하면 아래와 같은 내용을 가이드 하는 것을 볼 수 있다. 보통 SQL 2000 에서 상위 버전으로 업그레이드 할때 이슈가 가장 클 것 같다. 예전 개발하던 사람들의 습관으로 만들어진 내용일 뿐이다. ㅠ.ㅠ [참고문서] ALTER DATABASE Compatibility Level (Transact-SQL) https://technet.microsoft.com/en-us/library/bb510680(v=sql.105).aspx mpatibility-level setting of 80Compatibility-level setting of 90Po..
- Total
- Today
- Yesterday