실수로 데이터를 지워 먹고 긴급하게 백업본으로 복원을 할 때가 종종 있다. 난 아직까진 없었다. [시나리오] 새벽에 전체백업 스케즐이 동작을 하였고, 데이터베이스 용량이 너무 커서 SHRINKFILE 작업을 하기 위해서 특정 대용량테이블을 TRUNCATE TABLE 후에 DBCC SHRINKFILE(로그)을 날렸다. 몇시간 후에 땀 삐질삐질 상황이 되버렸다. 자 복원하자. TRAUNCATE TABLE 이전 시점으로 복원이 가능할까? [결론] 최종로그 백업 후에 시점(STOPAT)으로 복원이 가능하다. 상황에 따라 조금씩 다를 수 있을 것 같기도 하다. [테스트] SQL SERVER 2014에서 테스트 -- 테스트 데이터 만들기 CREATE DATABASE TESTDB USE TESTDB GO CREATE..
SQL Server에 접속을 하려면 SSMS를 주로 사용한다. SSMS로그인을 하려면 윈도우인증, SQL 인증모드를 선택하여 접속하게 된다.윈도우인증으로 접속하려면 현재 윈도우서버에 로그인한 계정만 접속을 할 수 있고 다른 계정으로 변경이 불가능하다. 다른 윈도우계정으로 로그인 하지 않고 다른 계정으로 로그인하는 방법이 있다. 방법. 1 윈도우 작업표시줄에 SSMS아이콘을 생성하고 Shift+마우스오른쪽 클릭을 하게 되면 많은 메뉴가 보인다. 여기에서 [다른 사용자로 실행]을 클릭한다. 로그인 창이 뜨면 다른 윈도우계정을 입력하고 확인을 클릭한다. 기존과 동일한 SSMS로그인창이 뜬다. 확인을 누르면 다른 윈도우계정으로 로그인이 가능하다. 방법.2 시작 > 실행 에서 runas /user:domain\u..
SQL AlwaysOn 환경에서 데이터베이스를 데이터베이스 암호화(TDE)를 활성화 할 수 있다. 이미 TDE 된 데이터베이스도 가용성그룹에 추가를 할 수 있고, 가용성데이터베이스를 TDE 활성화를 할 수 있다. [시나리오] 가용성그룹에 포함된 데이터베이스를 데이터베이스암호화(TDE) 하는 방법 [Action Plan] -- Primary Replica 1.DMK 생성 여부 확인 USE MASTER; GO SELECT * FROM sys.symmetric_keys WHERE name = '##MS_DatabaseMasterKey##' 2. DMK 생성 -- master 데이터베이스에 DMK를 생성함. USE master; GO CREATE MASTER KEY ENCRYPTION BY PASSWORD = ..
-- 이미 TDE 된 데이터베이스를 가용성그룹에 추가하는 방법 -- UI로는 지원을 하지 않는다. [시나리오] TD 사용자데이터베이스는 이미 데이터베이스암호화가 된 상태이다. 이 데이터베이스를 가용성그룹에 추가하는 방법을 알아보자. [Action Plan] -- Primary Replica 1. TDE 활성화 데이터베이스 확인 USE MASTER; GO SELECT db.name,db.is_encrypted,dm.encryption_state,dm.percent_complete, dm.key_algorithm,dm.key_length FROM sys.databases db LEFT OUTER JOIN sys.dm_database_encryption_keys dm ON db.database_id = dm...
가용성그룹에 포함된 데이터베이스도 데이터베이스 암호화를 할 수 있다. 그러나, 암호화된 데이터베이스 TDE 를 Disabled (OFF) 를 하고 해당 데이터베이스의 암호화키를 삭제를 하지 않을 경우에 아래와 같이 오류가 발생한다. [오류] 데이터베이스 암호화 키를 포함합니다. [해결] 가용성그룹에 추가하려면 해당 암호화 키를 삭제를 해주면 된다. use TD2 go DROP DATABASE ENCRYPTION KEY TDE 활성화된 데이터베이스를 가용성그룹에 추가할 수 있다. 그러나 위 조건일 경우에는 추가가 안되므로 TDE 해제 및 암호화키를 삭제를 해줘야 한다.
[쿼럼 구성 옵션] Windows Server 2012 Cluster 와 R2 Cluster 의 쿼럼 구성시 다이나믹쿼럼 설정 옵션의 차이가 있다. 2012 Cluster 시에는 아래와 같이 단계.2의 옵션 구성(클러스터에서 노드 응답 할당을 동적으로 관리하도록 허용)이 보이지만 2012R2 Cluster 에서는 구성화면이 없다. 단계.2는 Dynamic Quorum 설정여부의 옵션이다. 2012R2 Cluster는 자동으로 설정이 된다. [쿼럼구성확인] 쿼럼 구성 즉 투표권에 대한 설정을 할 수 있다. Dynamic Quorum 설정도 가능하다. 관리자라면 무조건 Dynamic Quorum을 설정하기를 권장한다. PS C:\Windows\system32> Get-Cluster | ft name, dyn..
1. sqlcmd로 제한하기 net start mssqlserver /m"SQLCMD" (주의 : SQLCMD 대문자만 입력) >> sqlcmd -S. -E or sqlcmd -S서버명\인스턴스명 -E or sqlcmd -S클러스터SQL가상이름\인스턴스명 -E (클러스터환경시) 2. SSMS로 제한하기 net start msqlserver /m"Microsoft SQL Server Management Studio - 쿼리" or net start msqlserver /m"Microsoft SQL Server Management Studio - Query" >> SSMS를 실행하여 작업한다. [참고문서] Using the SQL Server Service Startup Options https://tech..
요즘 가상머신들이 판을 치고 있다. 간혹 실수로 OS 템플릿을 sysprep 안돌리고 생성하는 머신들이 있을 것이다. 이런 경우에 Machine SID(Security Identifier) 가 중복이 된다. SID가 중복이 되면 윈도우 서비스에 문제가 많이 발생한다. 이런 경우에는 포멧이 답이다. 깔끔하게 이런 상황에 MSDTC 서비스도 문제가 발생한다. 이벤트로그에 아래와 같이 로그에서 확인이 가능하다. The local MS DTC detected that the MS DTC on SERVER has the same unique identity as the local MS DTC. This means that the two MS DTC will not be able to communicate with..
간혹 SQL Server의 로그인 계정 암호를 잊어 먹었을때 어떻게 할까? SQL 서비스를 재 시작하여 단일모드로 다시 시작하면 가능하다. 그러나, SQL 서비스를 재 시작을 하면 안되는 상황일 경우에는 어떻게 해야할까? PSExec Tool 을 이용하여 해결할 수 있다. PsExec v2.11 다운로드 https://technet.microsoft.com/en-us/sysinternals/bb897553.aspx 아래와 같이 수행을 하게 되면 NT AUTHORITY\SYSTEM 계정으로 로그인하여 SQL로그인계정에 대한 추가 및 수정이 가능하다. (단, SQL 2008R2 이하만 가능하다. 왜? 글 하단에 답이 있다.) 명령 프롬프트를 관리자권한으로 실행을 하고 아래와 같이 실행을 한다. E:\tmp\..
물리서버를 Hyper-V 가상머신으로 통째로 이동하는 방법이다. Physical to Virtual (P2V) 용어를 쓴다.간단하게 해봤는데 정말 이동된다. 아마도 제약사항도 있을테지만 그냥 테스트해보니 잘 된다.Step-By-Step: Migrating Physical Servers to Virtual Machineshttp://blogs.technet.com/b/blainbar/archive/2014/09/09/modernizing-your-infrastructure-with-hybrid-cloud-migrating-physical-servers-to-virtual-machines-part-21-blain-barton.aspx#HomeDisk2vhd v2.01 다운로드 - 다운링크는 안되서 그냥 ex..
- Total
- Today
- Yesterday