IT468 테이블 관리(file-per-table와 테이블스페이스) 출처 : https://dev.mysql.com/doc/refman/8.0/en/innodb-file-per-table-tablespaces.html https://dev.mysql.com/doc/refman/8.0/en/general-tablespaces.html Mysql은 기본적으로 database라고 불리는 영역이 존재하고 그 내부에 테이블들이 존재합니다.(engine = InnoDB 기준) DB : mysql 5.7.43 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | | ysbae |.. 2024. 1. 5. 히스토그램(Histogram) (아래 출처의 글을 번역하고 테스트하여 정리한 것입니다.) 출처 : https://docs.oracle.com/en/database/oracle/oracle-database/19/tgsql/histograms.html#GUID-FFA0C0AF-3761-4829-995E-9AFA524F96CE 히스토그램 히스토그램은 테이블 열의 데이터 분포에 대한 더 자세한 정보를 제공하는 특수한 유형의 컬럼 통계입니다. "버킷"이라고 부르는 공간에 정렬된 값들을 넣습니다. NDV(Number of distinct values)와 데이터의 분포에 따라 데이터베이스는 히스토그램의 유형을 선택하게 됩니다. (경우에 따라 히스토그램을 생성할때 내부적으로 미리 지정된 수의 행을 샘플링하기도 합니다.) 유형은 아래와 같습니다. F.. 2024. 1. 4. Object - Role 과 권한 ROLE PostgreSQL의 Role은 Oracle의 Role + Oracle의 User의 역할이 같이 수행되는 Object라고 할 수 있습니다. 데이터베이스의 Object를 소유할 수 있으며, 오브젝트에 대한 권한을 다른 Role에 부여하거나 취소하여 제어할 수 있습니다. PostgreSQL의 default Role은 postgres입니다. 최초 DB 설치 후 접속하여 정보 확인 psql -U postgres -d postgres -h localhost -p 15432 ##1 ##pg_shadow는 superuser 권한이 있는 role만 수행가능 SELECT * FROM pg_shadow; usename |usesysid|usecreatedb|usesuper|userepl|usebypassrls|p.. 2023. 12. 27. 같은 SQLID 다른 PLAN (Histogram 차이) 운영 중에 일어나 해결한 것을 정리하였습니다. 바인드변수만 다르게 해서 동일한 SQLID로 수행되는 쿼리가 특정 바인드변수가 들어오면 끝나지 않고 오래걸리는 현상이 발생하였습니다. 확인해보니 오래걸릴 때에는 실행계획이 달라졌고, SQLID는 동일했었습니다. 해결으로는 해당 SQLID에 대해서는 무조건 같은 실행계획을 타게 profile을 이용하여 고정시켜줬고, 오래걸리는 쿼리도 빠르게 끝나게 되었습니다. 처리 후에 SQLID가 같은데 실행계획이 다르게 나오는 경우는 어떤경우인지 테스트를 통해 정리해보도록 하겠습니다. 시나리오 참고 : https://aprakash.wordpress.com/2011/02/07/same-sql_id-with-different-execution-plans/ Cursor_sha.. 2023. 12. 22. 이전 1 ··· 11 12 13 14 15 16 17 ··· 117 다음