'SQL Server 2012'에 해당되는 글 35건

  1. SQL Server 2012 샘플DB 등록하기
  2. sql2012 버젼 Dashboard가 나왔네요.ㅋ
  3. SQL2012 CU1 나왔네요.
  4. 가상계정 로컬 정책 추가 하기
  5. SQL2012 lock page in memory 설정 방법 변경
  6. SQL2012 시작 매개변수 지정
  7. SQL 2012 New Feature - Throw
  8. 진단 분석 저장프로시져 sp_server_diagnostics
  9. alt+f1으로 스키마 있는 객체 정보 보기 오류 해결되었군요.
  10. 결과창 보기 단축키 다시 사용하기~~ CTRL+R 2


안녕하세요. 주디아줌마입니다.
SQL2012 관련 샘플 DB를 등록해봅시다.^^


※.링크

http://www.mssqltips.com/sqlservertip/2638/attach-sample-database--adventureworks-in-sql-server-2012/?utm_source=dailynewsletter&utm_medium=email&utm_content=headline&utm_campaign=2012513


※.다운로드 
AdventureWorks2012_Data.mdf for case-insensitive collation
AdventureWorks2012CSData.mdf for case-sensitive collation 


CREATE DATABASE AdventureWorks2012_Data
ON (FILENAME = N'E:\SQLData\AdventureWorks2012_Data.mdf')
FOR ATTACH_REBUILD_LOG 
Go


추가 테스트 환경 설정

※. 테스트를 위해서 adventureworks db를 크게 만드는 script.. by adam download
http://sqlblog.com/blogs/adam_machanic/archive/2011/10/17/thinking-big-adventure.aspx

※. Enlarging the AdventureWorks Sample Databases - Jonathan Kehayias
http://www.sqlskills.com/blogs/jonathan/enlarging-the-adventureworks-sample-databases/

※. Adventureworks2012, Adventureworks2012DW, pubs, Northwind
http://www.sqlpanda.com/2013/09/sql-server-2012-sample-database.html

안녕하세요. 주디아줌마입니다.

SQL2012 버젼용 성능 분석을 할 수 있는  Dashboard가 3/6/2012에 나왔습니다.  아래의 사이트에서 다운로드 받을 수가 있습니다.  

다운로드>

http://www.microsoft.com/en-us/download/details.aspx?id=29063

참고>

http://troubleshootingsql.com/2012/04/18/awesomesauce-sql-server-2012-performance-dashboard/


1. 설치 방법

가. 해당 사이트에서 Dashbord 설치 버젼을 다운로드 받습니다.

나. SQLServer2012_PerformanceDashboard.exe 설치를 합니다.

 다. 설치한 드라이브 %ProgramFiles(x86)%\Microsoft SQL Server\110\Tools\Performance Dashboard 경로를 찾아갑니다. 

라. SQL2012에 setup.sql 파일을 실행합니다. 

2. 사용 방법

가. SSMS의 Object Exploer를 확장한다. 

나. DB 인스턴스를 선택 후 오른쪽 마우스 클릭

다. 보고서 > 사용자 지정 보고서를 선택한다. performance_dashboard_main.rdl을 선택합니다. 




좋은 기능들이 많이 업그레이드 되었네요.

SQL2012 CU1 나왔네요.


SQL2012 관련 CU1이 2012년 4월 12일 목요일에 올라왔습니다. 2679368 Cumulative update package 1 (CU1) for SQL Server 2012 자료는 여기서 확인이 가능합니다.


SQL Build관련 참고사이트로 추천합니다. 요약이 잘 되어 있네요^^

http://sqlserverbuilds.blogspot.co.nz/



Windows 2008, windows 7이후 버젼부터 가상계정이 생겼습니다. 가상계정에 로컬 정책을 위해서는 아래와 같이 사용자 또는 그룹 추가 해야합니다. 


가상 계정 정보 조회 

select name from sys.syslogins where name like 'nt service%'



가상계정으로 계정 및 그룹에 보이지는 않습니다.

1) nt service\mssql$sql2012을 입력하고 나서 이름 확인을 누른다.

2) 이름 확인후 보이는 화면. 

3) 등록 완료


SQL2012 이전버젼에서는 Lock page memory를 설정하기 몇가지 기능중 T845 플래그를 설정해야 한다. 하지만 SQL2012 버젼부터는 T845  플래그 설정 안 해줘도 되네요.


http://support.microsoft.com/kb/2659143/
http://blogs.msdn.com/b/sqlosteam/archive/2012/03/22/lock-pages-in-memory-not-deprecated-in-denali.aspx


You do not have to use Trace Flag 845 in SQL Server 2012. You can remove this trace flag from the startup parameters after you upgrade your instance to SQL 2012. 


자.. SQL2012 Lock Page In Memory 기능을 설정해볼까여~~


1. SQL 시작계정에 윈도우 사용자 권한 할당

커맨드명령어 : gpedit.msc

컴퓨터 구성>Windows 설정>보안 설정>로컬 정책> 사용자 권한 할당

SQL 시작계정에 "메모리에 페이지 잠금" 할당!! 여기서는 sqlservice 계정으로 설정.


2. 설정 확인하기

 sp_readerrorlog로 시작 메세지를 확인

"Using locked pages in the memory manager"  이렇게 메세지만 있다면 OK~~


Edition에 따라 설정방법 차이가 있네요~


Enterprise Edition,
Data Center Edition
Standard Edition,
Business Intelligence Edition
Other editions
SQL 2012 (32-bit and 64-bit)• Assign LPIM user right to SQL Startup account• Assign LPIM user right to SQL Startup accountNo support for "locked pages"
SQL Server 2005/2008/2008R2 (32-bit)• Assign LPIM user right to SQL Startup account
• Configure 'awe enabled' option to 1
• Assign LPIM user right to SQL Startup account
• Configure 'awe enabled' option to 1
No support for "locked pages"
SQL Server 2005/2008/2008R2 (64-bit)• Assign LPIM user right to SQL Startup account• Assign LPIM user right to SQL Startup account
• Apply SQL Hotfix KBA 970070
• Enable trace flag 845
No support for "locked pages

SQL2012에서 시작매개변수가 변경되었는데 어떻게 변경되었는지 확인해보자.

SQL Server Configuration Manager > SQL Server > 속성 > 시작매개변수 Tab

주요 플래그

. -T1118 : TempDB SGAM 경합 해결을 위해 Mixed Extent의 할당이 발생하지 않고 Uniform Extent로 할당하도록 하는 플래그

. -T845 : SQL Server 2005, 2008 64 std 에디션에서 lock pages in memory를 활성화하기 위한 플래그(기본 설정)

. -T1112;-T1204 : 교착 상태의 잠금의 유형과 리소스 정보 반환



SQL 2012 New Feature - Throw

SQL2012 새로운 기능 중 하나인 에러 예외 처리가 아닌가 싶다.  그동안 catch 구문에서 에러를 받아서 어플리케이션에 에러 정보를 전달하고자 할때 얼마나 불편했는가~ 그동안 RAISERROR를 이용하여 에러 정보를 반환했었는데 앞으로 그럴필요가 없어졌다.


SET NOCOUNT ON

-- # 1. RAISERROR 예외 발생시킬 때
BEGIN TRY  
 SELECT 1/0  
END TRY  
BEGIN CATCH  
    DECLARE @ErrMsg nvarchar(4000), @ErrSeverity int 
    SELECT @ErrMsg = ERROR_MESSAGE(),  
        @ErrSeverity = ERROR_SEVERITY()  
   
    RAISERROR(@ErrMsg, @ErrSeverity, 1)  
END CATCH  
GO  

--메시지 50000, 수준 16, 상태 1, 줄 10
--0으로 나누기 오류가 발생했습니다.


-- # 2. THROW 파라메터가 없는 경우
BEGIN TRY  
 SELECT 1/0  
END TRY  
BEGIN CATCH  
    DECLARE @ErrMsg nvarchar(4000), @ErrSeverity int 
    SELECT @ErrMsg = ERROR_MESSAGE(),  
        @ErrSeverity = ERROR_SEVERITY();  
   
    THROW
END CATCH  
GO  

--메시지 8134, 수준 16, 상태 1, 줄 8
--0으로 나누기 오류가 발생했습니다.

-- # 3. THROW 파라메터가 있는 경우
BEGIN TRY  
 SELECT 1/0  
END TRY  
BEGIN CATCH  
     THROW 51000, '내가 정의한 에러양', 1;  
END CATCH  
GO 

--메시지 51000, 수준 16, 상태 1, 줄 6
--내가 정의한 에러양


-- # 4. TRY문 안에 예외 처리
BEGIN TRY  
	THROW 51000, '나 에러야...', 1;  
 SELECT 1/0  
END TRY  
BEGIN CATCH  
     THROW;  
END CATCH  
GO 

--메시지 51000, 수준 16, 상태 1, 줄 2
--나 에러야...





  SQL Server가 업그레이드 할수록 내부적으로 진단할 수 있는 시스템 저장프로시져나 DMV를 제공하는데, SQL2012에서는 진단분석을 할 수 있는 시스템 저장프로시져를 제공합니다. 완전 좋은 기능이죠. 기존에는 DMV나 쿼리로 돌렸으나 내부적으로 제공을 하니 얼마나 좋은 기능입니까?

원본글

http://www.mssqltips.com/sqlservertip/2647/capture-diagnostic-data-and-health-information-in-sql-server-2012-using-spserverdiagnostics-system-stored-procedure/?utm_source=dailynewsletter&utm_medium=email&utm_content=headline&utm_campaign=2012422


MSDN

http://msdn.microsoft.com/en-us/library/ff878233(v=sql.110).aspx


Use master
GO
EXEC sp_server_diagnostics 
GO

Capture Diagnostic Data and Health Information in SQL Server 2012

특정시간 동안 반복적으로 진단 분석하고 싶다면, @repeat_interval값을 0보다 큰값으로 지정하면 반복적으로 진단 정보를 반환합니다.

• System: - It collects information with respect to CPU Usage, Page Faults, Non Yielding Tasks, Latches, Access Violations, Dumps and Spinlock Activity.
• Resource: - It collects data such as Physical and Virtual Memory, Page Faults, Cache, Buffer Pools and other relevant memory related objects. 
• Query Processing: - It collects data with respect to Query Processing such as Wait Types, Tasks, Worker Threads, CPU Intensive Requests and Blocking tasks etc. 
• IO Subsystems: - It collects data with respect to IO such as IO Latch Time outs, Interval Long IO’s, Longest Pending Requests etc.

• Events: -It collects data such as ring buffer exceptions, ring buffer events about memory broker, buffer pool, spinlocks, security, out of memory, scheduler monitor etc.


alt+f1는 "데이터베이스 객체 정보"를 확인할 수 있는 단축키입니다. SQL2012버젼 이전에서는 아래와 같이 오류가 생겼었습니다. 

SQL2012 이전 버젼

SQL2012 버젼에서는 정상적으로 수행^^ bug가 수정되었군여.ㅋㅋㅋ




SQL2012 SSMS로 작업을 하다보니 결과창 CTRL+R 단축 명령어가 안 먹힌다. 줴길~~  몇일동안 구글링하다가 드뎌 찾았다. 

원본글

http://sqlblog.com/blogs/aaron_bertrand/archive/2011/07/14/sql-server-v-next-denali-getting-ctrl-r-to-work-again.aspx

https://connect.microsoft.com/SQLServer/feedback/details/730641/ssms-2012-lacks-the-abilty-to-hide-the-results-pane

Let me take that back. On two different Win8 machines, with clean installs of RTM, and with both having the keyboard settings in Tools / Options / Environment / Keyboard set to (Default), I observe the following symptoms on the two machines:

Machine A
=========
- Ctrl+R does not work.
- The Window menu does not show a keyboard shortcut next to the Show Results Pane / Hide Results Pane option
- Applying the workaround (assigning Ctrl+R to Window.ShowResultsPane) adds the keyboard shortcut text to the Window menu, and choosing the menu option works, but Ctrl+R still does nothing.

Machine B
=========
- Ctrl+R works out of the box.

So clearly there is something different going on with these two boxes. Would love to offer up my VMs for investigation.

내 PC select @@version 결과

Microsoft SQL Server 2012 - 11.0.2100.60 (X64) 

Feb 10 2012 19:39:15 

Copyright (c) Microsoft Corporation

Developer Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)

저만, 안되는 줄 알았는데 여러 사람이 있네요^^.


TODO 

현재는 결과 창 표시가 Ctrl+Shift+Alt+R으로 사용해야 하는데 이것을 예전과 같은 CTRL+R로 바꿔보자.


PROCESS

1. SSMS를 실행한다.

2. 도구>옵션>키보드

너무 많은 명령 표시들이 보인다.  "다음 문자열을 포함하는 명령 표시"에서 결과를 입력하고 창:결과창 표시 선택한다.

3. 새 바로가기 사용하기 위치에서 "SQL 쿼리 편집기" 선택하고, 바로가기 키 누르기에서 CTRL+R를 누른다. 그러면 선택한 명령의 바로가기에 등록이 되어 이전과 같은 명령어로 사용할 수 있다.