MSSQL 22

[MSSQL] SSMS 20버전 이상 인증서 오류

개요SSMS 20.2 버전 사용중, 등록된 서버 접속시 "신뢰되지 않는 기관에서 인증서 체인을 발급했습니다." 오류가 지속적으로 발생하여20버전 이상에서 해당 오류를 방지할 수 있는 방법을 기재합니다. ※ ChatGPT에도 나오지 않고, 구글링해도 방법이 나오지 않아 직접 옵션값 눌러보던 중 해결된 내용이라 100% 정확한 방법은 아닐 수 있습니다.발생 오류 내용오류 발생 원인등록된 서버를 접속할 때, 연결보안 → 암호화 디폴트 설정 값이 "필수" 이므로 SSMS를 종료하면 서버 연결에 대한 설정 값을 수정하여도 설정 값이 계속해서 풀리기 때문에 위와 같은 오류가 지속해서 발생합니다.(정말 불편합니다...)오류 해결 방법도구 > 옵션 을 클릭하여 옵션 창으로 이동합니다.SQL Server 개체 탐색기 →..

MSSQL 2024.12.12

[MSSQL] 테이블 값 생성자

기존에는 어떤 설정 값을 임시로 담아야하거나 할 때 임시테이블을 사용하거나 임시테이블변수를 사용하거나 서브쿼리로 SELECT ~ UNION ALL 이렇게 많이 사용했는데,FROM 절에도 VALUES 문법을 사용할 수 있다는 것을 알게되었다.여러가지 구문에서 활용가능하며, 사용 방법에 따라 WORKTABLE을 생성하지 않으니 데이터양이 많지 않고 중간 값 저장이 필요없고 정렬이 필요없는 케이스라면 해당 문법을 사용하는 것도 좋아보인다.-- SELECT ~ UNION ALLSELECT *FROM ( SELECT N'rpc' AS [NAME], 1 AS [NUMBER] UNION ALL SELECT N'pub', 2 UNION ALL SELECT N'sub', 4 UNION ALL SE..

MSSQL 2024.08.26

[MSSQL] ERROR CODE 666. UNIQUIFIER 고유 식별자 최대값 초과

중복 그룹에 대한 시스템 생성 고유 값이 파티션 ID가 %I64d인 인덱스에서 최대값을 초과했습니다. 인덱스 삭제 및 다시 만들기로 이 문제를 해결할 수 있습니다. 그렇지 않으면 다른 클러스터링 키를 사용합니다. 고유하지 않은 값을 가진 클러스터형 인덱스로 인해 666 오류가 발생했다.UNIQUIFIER 값은 INT형으로 2,147,483,647 까지만 값을 가질 수 있는데, 해당 값을 초과하면 666 에러코드가 발생한다.자세한 내용은 MVP 강성욱 님 블로그 글을 참고하면 좋다.(https://m.blog.naver.com/sqlmvp/221318954831) 고유한 값을 가지는 데이터가 동일한 테이블에 21억건 이상 존재하는 경우에 INSERT하는 케이스만 에러가 발생하는 것으로 알고있었는데 UPDA..

MSSQL 2024.08.22

[MSSQL] SET TRUSTWORTHY ON 옵션 DB 복원 시 주의점

자동 배포를 백업/복원 방식으로 만들었더니 복원할 때 해당 속성이 함께 이관되지 않아 EXECUTE AS OWNER가 포함된 SP들을 실행하지 못해 오류가 발생했다. TRUSTWORTHY 옵션이 ON으로 설정된 DB에 대해 복원을 진행할 경우 OFF로 처리된다.따라서, 해당 옵션이 ON처리 되어있는 데이터베이스에 대해 복원을 진행할 경우 꼭 ON처리를 해주어야 한다.

MSSQL 2024.08.21

[MSSQL] 스냅샷DB가 있는 경우 데이터베이스 백업 오류 현상

사용자 db만 백업하고 싶을 때 대상 데이터베이스 리스트업 시, 주로 조건을 아래와 같이 설정하는데 스냅샷 db가 있는 경우 스냅샷 db를 백업하려고 해서 오류가 발생한 경우가 있다.select *from master.sys.databaseswhere database_id > 4 -- system db 제외and state_desc = 'ONLINE' -- online 상태인 db 만 - 원본 데이터베이스 : test_snapshot - 데이터베이스 스냅샷 : test_snapshot_202408071045 스냅샷db가 is_read_only값이 1이라서 그런가 하고 찾아보니 읽기 전용 db도 백업/복원은 가능하다msdn을 찾아보자  https://learn.microsoft.com/ko-kr/sql/..

MSSQL 2024.08.07

[MSSQL] 데이터베이스 offline 처리 후 drop하면 mdf, ldf 파일은 지워질까 안지워질까?

신규 데이터베이스로 마이그레이션 이후 기존 데이터베이스 미사용처리를 위해 offline처리를 진행했다.이후 정상화를 확인하고 drop 하면 mdf, ldf 파일은 삭제되지않고 남아있는 것을 확인했다. 사실 처음알았다. drop하면 무조건 같이 지워지는 줄 알았는데 🙄  현상 재현부터 해보자-- 그냥 기본 형식으로 만든다create database test2-- 오프라인 처리를 하자alter database set offline-- db정보를 확인해보자exec sp_helpdb test2-- 그리고 drop한다drop database test2오프라인 처리가 잘 되었고 sp_helpdb를 하면 데이터가 안나온다(메타데이터에서 제거를 하는 것 같다는 의심이 든다)   다시 mdf, ldf 제거하고 처음부터..

MSSQL 2024.07.31

[MSSQL] 데이터베이스 복원(RESTORE DATABASE)

1. 백업 폴더에서 백업 파일 리스트 구하기exec xp_dirtree N'D:\test\',1,1 2. 백업 파일 논리명 확인RESTORE FILELISTONLY FROM DISK ='D:\test\test_230628.bak' GO 3. 해당 백업 파일로 복원(주석 확인)RESTORE DATABASE test_2024 FROM DISK = 'D:\test\test_230628.bak' -- 백업 파일 경로로 설정해준다.WITH MOVE 'test' TO 'D:\test_restore\test.mdf' -- MOVE 다음에는 위에서 확인한 논리명(LogicalName을 적어준다. mdf는 Type이 D인것으로 기입, TO 다음 위치는 복원할 DB의 신규 물리 파일(데이터 파일) 경로를 설정해준다. ..

MSSQL 2024.06.28