[PostgreSQL] idle in transaction 설정
·
DataBase/postgreSQL
Idle in transaction ?: postgresql 9.6 이상에서 유휴상태인 transaction에 대해서 자동 종료 시켜주는 기능[postgresql.conf]postgresql.conf 파일에는 default로 0으로 되어있으며, 주석 처리가 되어있다.#idle_in_transaction_session_timeout = 0 # in milliseconds, 0 is disabled....해당 기능을 사용하려면,C:\onTune\database\Postgresql\pgsql\Data\postgresql.conf 파일 내에, 해당 부분을 주석 해제하여 옵션 값을 지정해준다.#idle_in_transaction_session_timeout = 0 # in millisec..
[PostgreSQL] initDB 실패
·
DataBase/postgreSQL
1. 에러initdb 실행 시, 공유 라이브러리를 읽는데 실패했다는 에러 로그 떨어짐더보기$ ./initdb -D $PGDATA ./initdb: error while loading shared libraries: libpq.so.5: cannot open shared object file: No such file or directory2. 트러블슈팅더보기// libpq.so.5 라이브러리 찾고 심볼릭링크 추가 (기존 것 삭제 후 심볼릭 링크 재적용) [root@ontune ~]# find / -type f libpq.so.5 /database/postgresql/lib/libpq.so.5 [root@ontune ~]# [root@ontune ~]# cd /database/postgresql/lib/ [..
[PostgreSQL, CentOS7] 소스코드 컴파일하여 postgresql 16 설치 (소스 설치)
·
DataBase/postgreSQL
*CentOS7에는 posgresql16의 repository를 제공하지 않습니다.따라서 postgresql이 제공하는 소스코드를 빌드하여 컴파일 후 서버에 설치하는 방식으로 설치를 진행해야하기 때문에 해당 테스트를 진행.PostgreSQL 설치 - Source Install(소스 설치) 방식설치 테스트 환경- OS : CentOS7.9- DB : postgresql 16테스트 전, CentOS 구축 시 외부 환경 또는 Host와 통신이 되어야합니다.0. $yum update 1. 패키지 설치 : 우선 소스코드를 컴파일 시키기 위해서는 추가적인 패키지 설치가 필요하다.     1.1 Yum -y install gcc gcc-c++ make autoconf readline readline-devel zli..
[PostgreSQL] Autovacuum이 호출되는 조건과 파라미터
·
DataBase/postgreSQL
autovacuum이 어떻게 호출되는 것인지에 대한 공부를 하기 위해서 작성파라미터는 튜닝하지 않음 용어Age - 말 그대로 Age- Table과 Tuple의 나이를 뜻한다. 테이블 생성 시 또는 Tuple을 테이블에 처음 insert할 때의 Age는 1부터 시작한다고 한다.- Transaction이 발생할 때마다 Table의 Age 및 Tuple의 Age가 1씩 증가한다고 한다.- 그래서 계속 Age가 증가하다가 Age 관련 특정 파라미터인 autovacuum_freeze_max_age 의 임계치에 도달하게 되면 XID Wraparound를 방지하기 위해 Anti Wraparound Vacuum 대상이 되고,  수행이 된 후에는 다시 Table Age과 Tuple Age가 1로 회귀한다.- 그런데, T..
[PostgreSQL] vacuum을 하는 이유 // vacuum, vacuum full 테스트
·
DataBase/postgreSQL
Postgresql은 oracle, mysql 과는 조금 다른 MVCC 구현 방식 이라고 한다.짧게 정리를 하자면, 데이터 페이지 내에 변경되기 이전 Tuple과 변경된 신규 Tuple을 같은 page에 저장하고Tuple별로 생성된 시점과 변경된 시점을 기록 및 비교하는 방식으로 MVCC를 제공한다. 그리고 Tuple이 생성되거나 변경된 시점을 각 Tuple 내 xmin, xmax라는 메타데이터 field에 기록하여 어떤 Tuple을 읽을 수 있는지 버전 관리를 하게 된다.  ==xmin – Tuple을 insert하거나 update하는 시점의 Transaction ID를 갖는 메타데이터Insert의 경우 insert된 신규 Tuple의 xmin에 해당 시점의 Transaction ID가 할당됨UPDAT..
[postgreSQL] Oracle Linux 7.9 + postgreSQL 12 설치
·
DataBase/postgreSQL
OS 환경- Oracle Linux 7.9 - 다운로드 : https://yum.oracle.com/oracle-linux-isos.html Oracle Linux ISOs | Oracle, Software. Hardware. Complete.Oracle Linux Installation Media Download Oracle Linux ISOsyum.oracle.com DB 환경- PostgreSQL 12 - 다운로드 : https://www.postgresql.org/download/linux/redhat/ PostgreSQL: Downloads www.postgresql.org OS는 virtualbox 를 사용하여서 설치하였다. (https://www.virtualbox.org/wiki/Downl..
[ExaCS] Oracle Exadata Cloud Service
·
DataBase/oracle
ExaCS는 또 뭔데? ExaCC를 정리했지만... 이름도 비슷한 것 같아서 너무 헷갈린다. 정리하자. ExaCS 란? OCI상에서 제공되는 관리형 Exadata 데이터베이스 서비스이다. 클라우드를 기반으로 데이터베이스를 제공하면서 데이터베이스의 관리, 운영, 보안 등을 oracle이 직접 처리하는 형태의 서비스이다. 특징 1. 관리형 서비스 ExaCS는 오라클이 완전히 관리하는 관리형 서비스로, 기업은 데이터베이스 관리 작업을 최소화하고 데이터베이스 운영에 집중할 수 있다. Oracle이 데이터베이스 관리, 백업, 모니터링, 보안패치 등과 같은 작업을 대신 처리한다. 2. Oracle Exadata 기반 ExaCS는 Oracle Exadata Machine을 기반으로 하며, 이는 고성능 스토리지와 네트..
[ExaCC] Oracle Exadata Cloud@Customer 란?
·
DataBase/oracle
OCI를 공부하며 많은 용어들이 생소하다. ExaCC와 ExaCS 가 뭔데?DB인가?  용어 때문에 헷갈릴 때가 많아서 차근차근 정리를 해보기로 했다.   ExaCC ( Oracle Exadata Cloud@Customer)  ExaCC(Oracle Exadata Cloud@Customer)는 데이터베이스를 최적화하여 고성능과 고가용성을 제공하는 솔루션이다. ExaCC는 DBMS을 직접적으로 최적화하는 것이 아니라, 데이터베이스 워크로드를 처리하는 데 필요한 하드웨어와 소프트웨어 인프라스트럭처를 최적화하여 데이터베이스 시스템의 성능과 가용성을 향상시키는 역할을 한다고 한다.   인프라스트럭처를 최적화하여 데이터베이스 시스템의 성능과 가용성을 향상시킨다는데, 그래서 무엇을? 1. 스토리지 최적화 : Exa..
MYSQL 8 비밀번호 설정 / policy requirement 변경
·
DataBase/mysql
1. validate_password.policy 변경# low : 8문자 이상 / mediun : 영소대문자 + 숫자 + 특수문자  / strong : dictionary file에 포함된 단어는 절대 사용 불가   2. Medium -> low   set global validate_password_policy=LOW;      # MYSQL 5에서 적용 방법 set global validate_password,policy=LOW;       # MYSQL 8에서 적용 방법   # 변경 후 systemctl restart mysqld  하게 되면 다시 MEDIUM으로 돌아온다.  3. 간단하게 유저 생성
[Oracle] XA / non-XA 란 무엇인가?
·
DataBase/oracle
용어정리 XA : eXtended Architecture의 줄임말로 말 그대로 확장된 아키텍쳐이다. Non-XA : XA의 용어를 활용해보면 확장되지 않은 아키텍쳐이다. 트랜잭션 : 거래의 최소 단위이다. 보통 All or Nothing 이라고 얘기한다. 즉 거래라는 것은 서로간의 교환인데 한쪽만 성공한다면 데이터가 망가지기 때문에 정합성을 유지하기 위한 단위라고 볼 수 있다. 활용 일반적으로 DB 트랜잭션의 정합성 유지를 위해 XA 또는 NON-XA를 사용한다. NON-XA : 기본적인 로컬 트랜잭션. 사용하는 DB가 하나일 때 Non-XA로 단순하게 Commit과 Rollback을 처리할 수 있다. 조금 자세히 설명하자면, DB에 세션 하나에 하나의 트랜잭션을 모두 담아 놓고, 둘다 성공하면 comm..
giroke
'DataBase' 카테고리의 글 목록