DataBase

    MySql my.cnf 설정 요소...

    MySQL 기본 설정 시스템에 따라 데이터 파일과 같은 일부 변수 값이 달라질 수 있으니, 자신의 시스템에 맞게 수정해서 사용하자. 하드웨어 일반적으로 대용량 InnoDB에서는 CPU보다 메모리가 관건이다 최근에는 대부분 16-32G정도의 메모리가 가격대비 성능이 좋은 편이다 RAID 1+0 빠른 입출력을 원한다면 SSD혹은 SAS사용 운영체제 운영하는것이 redhat,centos 를 추천 또한 무조건 64bit를 사용해야 한다. [code lang="bash"] vi /etc/my.cnf [/code] [code lang="Apache"] [client] port = 3306 socket = /tmp/mysql.sock [mysqld] # generic configuration options port ..

    [MSSQL] 윈도우 함수 ROW_NUMBER() 순차번호 할당

    [MSSQL] 윈도우 함수 ROW_NUMBER() 순차번호 할당

    SQL를 다루다 보면 행별로 순차적인 번호를 부여해야 할 상황이 1번쯤은 온다. RANK()를 활용할 수는 있겠지만, RANK()함수는 번호의 기준이 되는 ORDER BY 절의 데이터가 동일하다면 같은 번호로 할당된다. 그런 점을 보안한 DENSE_RANK() 함수가 있기는 하나 ROW_NUMBER() 함수의 명이 더 의미적으로 적합한 함수인 것 같다. ROW_NUMBER() 함수는 행과 행간의 관계를 정의하는 윈도우 함수이며, ANSI/ISO SQL 표준과 SQLServer, Oracle에서 지원한다. ROW_NUMBER() 란? ROW_NUMBER() 함수는 결과 집합의 파티션 내 각 행에 순차적인 정수를 할당하는 윈도우 함수입니다. ROW_NUMBER()의 특징 행의 번호는 각 파티션에 대해 1번부..

    [MSSQL] 윈도우 함수 RANK() OVER 다루기 / DENSE_RANK()

    [MSSQL] 윈도우 함수 RANK() OVER 다루기 / DENSE_RANK()

    윈도우 함수 중 그룹 내 순위 함수로 RANK() 함수가 존재한다. 윈도우 함수란 행과 행간의 관계를 정의하기 위한 함수이고, RANK() 함수는 ANSI/ISO SQL 표준과 SQLServer Oracle에서 지원한다. RANK()란? RANK() 함수는 결과 집합의 파티션 내에서 각 행의 순서를 할당하는 윈도우 함수이다. RANK()의 특징. 동일한 값을 갖는 파티션 내의 각 행은 동일한 순위를 받습니다. 파티션 내에서 첫 번째 순위는 1부터 시작한다. 같은 순위에 연결된 행의 수를 더하여 다음 행의 순위를 계산한다. RANK() 함수 Syntax RANK() OVER ( [PARTITION BY partition_expression, ... ] ORDER BY sort_expression [ASC ..

    [MSSQL] DBCC SHRINKFILE - DB 데이터/로그 파일 축소하기 - 2편

    [MSSQL] DBCC SHRINKFILE - DB 데이터/로그 파일 축소하기 - 2편

    해당 포스트는 총 2편으로 작성되어있고 스토리가 이어져있다. DBCC SHRINKFILE - DB 데이터/로그 파일 축소하기 - 1편 ( 파일의 초기 사이즈, 자동 증가, 자동 감소?? ) [MSSQL] DBCC SHIRINGFILE - DB 데이터/로그 파일 축소하기 - 1편 SQL Server의 데이터베이스는 파일 그룹으로 이루어져 있다. 파일 그룹은 데이터 파일들이 저장될 그룹을 의미하는데 이 그룹은 또 데이터 파일(MDF or NDF) + 로그 파일(LDF)을 의미한다. 해당 포스트 developjuns.tistory.com 1편 포스트에서는 아래를 확인하였다. 파일그룹, 파일, 테이블을 생성하고, 초기 사이즈를 확인하였다. 실제로 아무 데이터가 없어도 파일을 초기사이즈만큼 운영체제에게 할당받았다..

    [MSSQL] DBCC SHRINKFILE - DB 데이터/로그 파일 축소하기 - 1편

    [MSSQL] DBCC SHRINKFILE - DB 데이터/로그 파일 축소하기 - 1편

    SQL Server의 데이터베이스는 파일 그룹으로 이루어져 있다. 파일 그룹은 데이터 파일들이 저장될 그룹을 의미하는데 이 그룹은 또 데이터 파일(MDF or NDF) + 로그 파일(LDF)을 의미한다. 해당 포스트는 총 2편으로 작성할 생각이다. DBCC SHRINKFILE - DB 데이터/로그 파일 축소하기 - 1편 ( 파일의 초기사이즈, 자동증가, 자동감소?? ) DBCC SHRINKFILE - DB 데이터/로그 파일 축소하기 - 2편 ( 데이터파일을 축소하기. ) 파일의 크기/자동 증가 파일그룹, 파일, 테이블생성 데이터베이스를 생성할 때 아래의 쿼리 또는 사진을 한 번쯤은 무조건 보았을 것이다. CREATE DATABASE JJH ON PRIMARY ( NAME='JJH_PRIMARY' , FI..

    [MSSQL] 집합 연산자

    [MSSQL] 집합 연산자

    집합 연산자란? 두 개 이상의 테이블에서 조인을 사용하지 않고 연관된 데이터를 조회하는 방법 중에 또 다른 방법이 있는데 그 방법이 바로 집합 연산자(Set Operator)를 사용하는 방법이다. 집합 연산자는 여러 개의 질의의 결과를 연결하여 하나로 결합하는 방식을 사용한다. 즉, 집합 연산자는 2개 이상의 질의 결과를 하나의 결과로 만들어 준다. 일반적으로 집합 연산자를 사용하는 상황은 아래 두 가지이다. 1. 서로 다른 테이블에서 유사한 형태의 결과를 반환하는 것을 하나의 결과로 합치고자 할 때 2. 동일 테이블에서 서로 다른 질의를 수행하여 결과를 합치고자 할 때 사용할 수 있다. 집합 연산자를 사용하기 위해서는 다음 제약조건을 만족해야 한다. SELECT 절의 칼럼 수가 동일하고 SELECT 절..

    [MSSQL] 파일 그룹별로 디스크 할당량, 사용량, 할당 가능량 조회 쿼리

    [MSSQL] 파일 그룹별로 디스크 할당량, 사용량, 할당 가능량 조회 쿼리

    SELECT a.[NAME] as '파일 그룹명' , b.size*8 /1024 as 'PhysicalSize (MB)' ,(b.Size - sum(total_pages))*8/1024 as 'UnAllocationSize (MB) ' , sum(total_pages) * 8 /1024 as 'TotalAllocation (MB)' , sum(used_pages)*8 /1024 as 'UsedAllocation (MB)' , sum(data_pages) *8/1024 as 'DataSize (MB)' , sum(total_pages-used_pages)*8/1024 as 'FreeSize (MB)' FROM SYS.filegroups a with (nolock) INNER JOIN ( SELECT dat..

    [MSSQL] 서브 쿼리 SubQuery

    [MSSQL] 서브 쿼리 SubQuery

    서브 쿼리(SubQuery)란 하나의 SQL 문안에 포함돼 있는 또 다른 SQL 문을 말한다. 조인과 서브쿼리의 차이점. 조인은 집합간의 곱(Product)의 관계이다. 즉 1:1 관계의 테이블이 조인하면 1(= 1 * 1) 레벨의 집합이 생성되고, 1:M 관계의 테이블을 조인하면 M(= 1 * M) 레벨의 집합이 생성된다. 예를 들어 조직(1)과 사원(M)의 테이블을 조인하면 결과는 사원 레벨(M)의 집합이 생성된다. 그러나 서브 쿼리는 서브 쿼리 레벨과는 상관없이 항상 메인 쿼리 레벨로 결과 집합이 생성된다. 위의 예를 들어 메인 쿼리로 조직(1), 서브 쿼리로 사원(M) 테이블을 사용하면 결과 집합은 조직(1) 레벨이 된다. 서브 쿼리를 사용할 때 다음 사항에 주의해야 한다. 1. 서브 쿼리는 괄호..