![[MsSQL] 모든 DB에 한번 쿼리 던지기 / DB 모를 때 (SP_MSFOREACHDB 활용하기)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FenLCDr%2FbtsEnaqw7x0%2FM2HMDsbfif160VDd9XBi91%2Fimg.png)
자주 쓰는 쿼리 - SP_MSFOREACHDB 특정 테이블을 찾고 싶은데, 어떤 데이터베이스에 있는지 모를 때, 혹은 여러 데이터베이스들을 돌아가며 파일사이즈를 조사할 때 같이 모든 데이터베이스에 같은 쿼리를 조회하고 싶을 때가 있다. 이럴 때 쓸수있는 시스템 프로시저로 단순 조회작업 뿐만 아니라 프로시저에 활용하여 로그성 데이터, 반복적인 쿼리 조회등을 단순화 하여 업무 능률을 향상 할 수 있다. Query 사용방법은 매우 간단하다. EXEC MASTER.dbo.SP_MSFOREACHDB ' use ? begin [QUERY] end ' SP_MSFOREACHDB의 파라미터로 ' use ? begin [쿼리문] end ' 값을 넣어주면, use ? 부분에 모든 데이터베이스가 한번씩 들어가 쿼리문을 실행..
![[DBA][MsSQL] Index 사용량 조회 / 미사용 Index 확인](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKL1iN%2FbtsEkQ6G6Ay%2F4ROVpLZLW5a3CI6xZlDFlk%2Fimg.png)
자주 쓰는 쿼리 - Index 사용량 조회 테이블 조회 효율을 위해 인덱스를 생성하여 사용하는 것은 당연하다. 하지만 시간이 지나고 업무 계획의 방향성이 바뀌다보면, 이렇게 생성하여 사용하던 인덱스들 중 사용하지 않게 되는 인덱스가 생길 수 있다. 이렇게 사용하지 않는 인덱스를 한번씩 정리를 해주게 된다면, 테이블의 DML작업에 대해 효율이 조금이나마 올라갈 수 있게 되는데, 이럴 때 도움이 될 만한 인덱스 사용량 조회 쿼리에 대해서 한번 소개해보도록 한다. Query 인덱스 사용량을 조회하는 쿼리는 아래와 같다. use [DATABASE NAME] select db_name(s.database_id) as database_name, object_name(s.object_id) as table_name,..
![[MariaDB][Linux] 보안 설치 - mariadb-secure-installation](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlyaQs%2FbtsCRe6Xcwg%2FK8ifIrxeJnRp1T8Yggqhjk%2Fimg.png)
MariaDB 보안 설치 MariaDB의 보안을 향상시키는 추가 설치이다. MariaDB 운영 단계로 넘어가기 전 해당 작업을 추가하는 것을 권장한다. mariadb-secure-installation MariaDB 설치 이후 해당 실행 파일은 아래의 경로에서 확인 할 수 있다. /usr/bin/mariadb-secure-installation 따로 인자없이 해당 파일을 실행하면 된다. 아래와 같은 내용을 적용 할 수 있다. - root 계정의 비밀번호를 설정 - Local Host 외부에서 엑세스 할 수 있는 root 계정 삭제 - 익명 사용자 계정 삭제 - 테스트 데이터베이스 삭제 적용 방법 아래와 같이 실행 하면 해당 순차적으로 실행되어 설정이 적용된다. /usr/bin/mariadb-secure-..
![[MsSQL] OUTPUT - Update 사용 시, 변경 전/후 행 반환하기 (deleted/inserted)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVrJie%2FbtstsPva62A%2Fii0Tun3rHCpC2j5hMXIeCK%2Fimg.png)
OUTPUT Output 구문은 insert, update, delete, merge 문과 함께 사용되며, 각 DML문에 처리되는 행을 반환하는 문법이다. 각 행을 반환하여, Into 구문를 통해 TABLE 혹은 TEMP TABLE 에 해당 행을 삽입한다. Update 문 사용 시 Output update TABLE_A set a_column1 = 'value3' -- output 구문 output deleted.a_column1, inserted.a_column2, deleted.a_column3 + inserted.a_column3 -- into 구문 into TABLE_B (b_column1, b_column2, b_column3) where [조건] update문 사용시, update ~set과 ..
![[MsSQL] OUTPUT - Insert 사용 시, 삽입 된 행 반환하기 (Inserted)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbfEY9u%2FbtssSBTEYUW%2FiqRUY5PmXPHluHYykUFqsK%2Fimg.png)
OUTPUT Output 구문은 insert, update, delete, merge 문과 함께 사용되며, 각 DML문에 처리되는 행을 반환하는 문법이다. 각 행을 반환하여, Into 구문를 통해 TABLE 혹은 TEMP TABLE 에 해당 행을 삽입한다. Insert 문 사용 시 Output insert into TABLE_A (a_column1, a_column2, a_column3 ...) -- output 구문 output inserted.a_column1, inserted.a_column2, inserted.a_column3 ... -- into 구문 into TABLE_B (b_column1, b_column2, b_column3 ...) values (value1, value2, value3..
![[MsSQL] 자주 쓰는 쿼리 - Data File Size, Data File 경로 확인 (MDF, NDF)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdYJI2L%2FbtsrYVeGqeC%2FzrSiAByyKFqSrFxeJlQrvk%2Fimg.png)
Intro 안녕하세요. 초보 DBA 다뉴입니다. 데이터베이스를 사용하다 보면 역시나 마주하게 될 문제, 바로 용량 이슈인데요. MsSQL의 MDF, NDF라는 데이터베이스 파일에 데이터를 저장합니다. MsSQL의 파일 구조에 대해서는 아래의 글을 참고해주세요! [MsSQL] Database File(Data File, Log File) / File Group Intro 안녕하세요. 초보 DBA 다뉴입니다. 오늘은 MsSQL의 데이터베이스 파일과 파일 그룹에 대해 알아보도록 하겠습니다. Database File File의 종류 데이터베이스 파일의 종류로는 크게 데이터 파일(Data da-new.tistory.com 각 데이터베이스의 MDF, NDF가 얼마 만큼의 용량을 사용하는지, 또 어느 경로에 파일이 ..
![[Oracle] 11g 시퀀스 (Sequence) 컬럼 자동 증가 값](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbk8Txr%2FbtspmKs1uHr%2FLlMPkhmMikK41crjTJIKqk%2Fimg.png)
Intro 안녕하세요 초보 DBA 다뉴입니다. 오늘은 오라클의 Object중 하나인 시퀀스에 대해 알아 보도록 하겠습니다. Sequence 시퀀스(Sequence)란? - 순차적으로 자동증가 하는 값을 반환하는 객체 - 일반적으로 PK값 중복 방지를 위해 사용 - 생성, 사용 방법, 수정, 삭제 시퀀스(Sequence) 생성 CREATE SEQUENCE [SequenceName] -- 생성 시퀀스 명, 해당 Create문을 제외한 나머지 부분은 다 생략 가능 INCREMENT BY [n] -- 증감 값, n만큼 시퀀스 값이 증가(양수) 또는 감소(음수), default = 1 (생략시) START WITH [n] -- 시작숫자 default = 증가 일때 MINVALUE / 감소 일때 MAXVALUE M..
![[DBA][Oracle] 자주 쓰는 쿼리 - TableSpace 용량 및 파일 위치 확인](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDAwKG%2FbtspHZVPWnC%2FINKzkgSIgBQRkqkQj2uGoK%2Fimg.png)
Intro 안녕하세요 초보 DBA 다뉴입니다. 데이터베이스를 관리함에 있어서 여러가지 요소가 있겠지만 그 중 저장공간과 용량에 대한 관리에 도움이 될 만한 쿼리를 하나 소개할까 합니다. 여러 오브젝트들은 TableSpace에 속하여, 저장공간을 차지하고 있는데요. 오늘은 이 TableSpace를 관리하기 위해 TableSpace의 저장공간의 상태를 확인하는 쿼리입니다. 한번 알아보도록 하죠. 알아두기 Tablespace (테이블 스페이스) 란? Tablespace는 Oracle의 논리적 저장공간입니다. Tablespace를 나눔으로써 데이터의 관리 / Table, Index 의 분리 등 여러가지 효율을 얻을 수 있습니다. 자세한 내용은 아래의 글을 참고해 주세요! [Oracle] 저장 구조 - Table..
![[MsSQL] Exception / Throw 사용 시 주의 사항 - rollback](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FS0DAS%2FbtspCmjdN64%2FnKJddmHqO98IlZ7WAMjzTk%2Fimg.png)
Intro 안녕하세요. 초보 DBA입니다. 얼마전 쿼리 검수를 하다가 발견한 잘못 작성된 SQL 문인데요. 논리적으로 생각해보니 이상해 보여서 테스트를 한번 진행하고 해당 내용을 남겨볼까합니다. Throw와 rollback과의 관계에 대해 한번 자세히 알아보도록하죠 Exception Throw Throw에 대해서는 지난 포스팅에 잘 정리해놨는데요. 아래의 링크를 참고해주세요. [MsSQL] Exception / Try~Catch 문 활용 -Transaction, Throw Intro 안녕하세요 초보 DBA 다뉴입니다. 저번포스팅 Exception / Try ~ Catch문 기초에 이어서 활용하는 방법에 대해서 한번 알아보려고 하는데요. 기초에 대해 정리한 글이 궁금하신분은 아래의 글을 참 da-new.t..
![[Oracle] 파티션(Partition) 2 - Range Partition, Interval Partition](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqmXa0%2FbtspfPfOqKa%2FhOitjkXqIIWK820mvqIj9k%2Fimg.png)
Intro 안녕하세요. 초보 DBA 다뉴 입니다. 저번에 알아봤던 파티션이 무엇인지 알아보았는데요. 해당 내용이 궁금하신분들은 아래의 링크를 참고해주세요. [Oracle] 파티션 (Partition) 1 - 테이블 파티션 이란? Intro 안녕하세요. 초보 DBA 다뉴 입니다. 최근 Oracle업무에 Table Partition 을 사용할 일이 있었습니다. 처음 사용해 보는거라 약간 헤매기도 했는데요. 이것저것 공부한 내용을 정리한 내용과 새롭게 da-new.tistory.com 오늘은 그 중 Range Partition, Interval Partition 에 대해서 알아보도록 하겠습니다. 제일 많이쓰이는 파티션이니만큼 알아두면 좋을 것 같네요. 파티션의 종류 Range Partition 가장 일반적으로..