MS SQL Server/Administration&Management 썸네일형 리스트형 SQL Server - Availability Group - AG Role Check by Database --DB별 AG RoleCheck SELECT DBS.database_id , DBS.name , isAGDB = CASE WHEN AG.group_id is null THEN N'N' ELSE N'Y' END , replicaRole = CASE WHEN AG.group_id is NOT null AND AGS.primary_replica = @@SERVERNAME THEN N'Primary' WHEN AG.group_id is NOT null AND AGS.primary_replica @@SERVERNAME THEN N'Secondary' END , AGGroupID = AG.group_id , AGName = AG.name , PrimaryReplica = AGS.primary_replica , P.. 더보기 CMD 명령어로 SQL Server Edition Upgrade :SQL Server Edition Change Script (Standard to Enterprise Core) (약 80초 소요) :SQL 2016 Edition Upgrade echo %date% %time% "C:\Program Files\Microsoft SQL Server\130\Setup Bootstrap\SQLServer2016\setup.exe" ^ /Q /IACCEPTSQLSERVERLICENSETERMS /Action="EditionUpgrade" ^ /INSTANCENAME=MSSQLSERVER ^ /PID="$InputYourLicenseKey$" echo %date% %time% pause :SQL 2014 Edition Upgrade echo %date% %time% "C:\P.. 더보기 MSDTC > DTCPing이 성공 했지만, 분산트랜잭션 수행 시 "No transaction is active." 오류가 발생하는 경우 안녕하세요. SQL Server Linked Server를 통한 분산 트랜잭션에서, MS DTC 설정과 관련하여 다른 문제가 없었는데도, No Transaction is Active 오류가 발생하는 경우에 대한 경험을 공유합니다. - 현상OLE DB provider "SQLNCLI11" for linked server "LNKD_Test" returned message "No transaction is active." Msg 7391, Level 16, State 2, Procedure SP__Test, Line ##The operation could not be performed because OLE DB provider "SQLNCLI11" for linked server "LNKD_Test" was.. 더보기 SQL Server 2016 업그레이드 이후, DB 복원 성능 저하 이슈 금번 SQL Server 2016 (SQL 2016 SP1 CU8) 업그레이드 이후, Restore Server의 복원(Restore Database)수행 속도가 크게 저하되는 이슈가 있어, 원인 및 현상을 분석한 내용과, 대응 방안을 함께 공유합니다. 1. 현상환경 구분OS/DBBackup / Restore OptionDB InformationRestore ServerWindows Server 2012 R2 STD x64 SQL Server 2016 STD SP1 CU8 x64 (13.0.4474)Compressed / DefaultDatabase Info:Reserved: 380,752MiB Compressed Backup: 138,240MiB Compatibility Level 100Server S.. 더보기 SQL Server 프로그래밍기능 파라미터 검색 쿼리 SQL Server 프로그래밍기능(Stored Procedure 등) 파라미터 검색 쿼리 SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTEDGO USE tempdbGO--SQLDBWook(sqldbwook@gmail.com)SELECT PROC_NM = object_name(PRM.object_id) , PARAM_NM = PRM.name , PARAM_TYPE = TYP.name + CASE WHEN TYP.name IN ('nvarchar','nchar','varchar','char','varbinary','binary') THEN CASE WHEN PRM.max_length = -1 THEN '(max)' WHEN TYP.name IN ('nvarchar','nc.. 더보기 tempdb 파일 삭제하기 Remove tempdb Data Files ---------------------------sqlcmd -S. --적절한 크기까지 키우고USE [master]GOALTER DATABASE [tempdb] MODIFY FILE ( NAME = N'tempdev', SIZE = 1024MB )GOUSE tempdbGODBCC SHRINKFILE (N'tempdev2' , EMPTYFILE) --shrink to 3000 MBGOALTER DATABASE tempdb REMOVE FILE tempdb2;GODBCC SHRINKFILE (N'tempdev3' , EMPTYFILE) --shrink to 3000 MBGOALTER DATABASE tempdb REMOVE FILE tempdb3;GODBCC SH.. 더보기 대량의 트랜잭션으로 인한 LogShipping 복원 지연시, 최종 복원일자 찾기 아래 쿼리를 통해, LogShipping Log 복원이 주 서버에서 언제 백업된 파일까지 복원했는지를 찾을 수 있다. -- USE msdbGO /*2015-03-16 SQLDBWook@gmail.com / SQL Server 2012*/--Primary 서버에서 대량의 트랜잭션이 발생한 이후, --LogShipping Secondary 서버의 IO병목등의 이유로 인해 Log복원 대기가 발생할 시 --현재까지 복원된 Log 중 최종 LogFile의 백업일시를 구한다.DECLARE @vLogShippedDatabaseName sysname= N'trigger_sync_db_from_local_pcbang',@vDateChkVal char(2)= LEFT(YEAR(getdate()),2) SELECTDATEA.. 더보기 Service Broker에서 수행하는 작업 모니터링(sp_broker_works) 서비스브로커의 Conversion 내에서 SP와 같은 작업을 실행하는 경우, Waitfor 등의 요인으로 인해 SQL Server가 중지되지 않는 경우가 있다. 이때, 아래의 SP를 사용한다. --해당 SP는 필요에 따라 계속 수정하겠습니다. USE masterGO IF OBJECT_ID('dbo.sp_broker_works') IS NULLEXEC ('CREATE PROCEDURE dbo.sp_broker_works AS SELECT 1')GO/*2015-02-02 SQLDBWook@gmail.com / SQL Server 2012*/ALTER PROCEDURE dbo.sp_broker_worksASSET TRANSACTION ISOLATION LEVEL READ UNCOMMITTEDSET NOCOUN.. 더보기 Server 레벨 계정 Role 및 권한 보기 SQL Server Server 레벨 계정 Role 및 권한 보기 /*2015-02-02 SQLDBWook@gmail.com*/USE master go /*몰아보기*/SELECTUSP.nameAS UserID,SSP.name COLLATE Korean_Wansung_CI_ASAS RoleName ,'Role'AS DivisionCode FROMsys.server_role_members AS RM JOINsys.server_principalsAS SSPON RM.role_principal_id = SSP.principal_id JOINsys.server_principalsAS USPON RM.member_principal_id = USP.principal_idUNION ALLSELECTUSP.nameAS .. 더보기 sp_job 오래 돌고있는 SQL Server Agent Job을 확인하기 위한 필요성을 느껴 sp_job을 작성하였습니다. Sysprocesses 와 sysJobs,sysJobsActivity 기반으로 동작합니다. 2000버전도 함께 공유합니다. USE masterGo/************************************** SP_NAME:dbo.sp_job SP_LOCATION:masterDB SP_DB:master SP_BUSINESS:Check the Running Job with Sysprocesses SP_CREATE_DATE:2014-11-19 SP_AUTHOR:Taewook Cha (SQLDBWook@gmail.com) SP_MODIFY_LOG:Project No|Sequence No|Mo.. 더보기 이전 1 2 다음