2014/11 48

MySQL에서 Master-Master Replication 셋팅 방법①

MySQL의 복제는 MySQL 데이터베이스에 저장 한 데이터 세트가 두 번째 서버로 라이브 복사되는 과정입니다."마스터 - 슬레이브"복제라고하는이 구성은 일반적인 설정입니다.마스터 마스터 복제는 데이터가 다른 하나에 두 서버에서 복사 할 수 있기 때문에 우리의 설정은,보다 더 좋을 것입니다.이 미묘하지만 중요한 차이는 우리가 MySQL을 읽거나 하나를 서버에서 쓰기를 수행 할 수 있습니다.이 구성은 리던던시를 추가하고, 데이터 액세스를 처리 할 때 효율을 증가시킵니다. 이 문서의 예는, 두 VPS를 기반으로 서버 C 및 서버 D에 지정됩니다. Server C: 3.3.3.3Server D: 4.4.4.4Step 1 - Install and Configure MySQL on Server C우리가해야 할 첫..

[PostgreSQL ADMIN] DBMS 접근제한 설정

dbms 접근제한 설정하기 /var/lib/pgsql/data/pg_hba.conf 파일에 있는 다른 줄은 주석처리하고 아래 내용만 넣음. local 은 로컬에서의 접속을 지정하며 host 를 이용하여 ip를 이용해서 제한을 할 수 있음. 처음 설치 후 postgresql 을 띄우면 다음과 같이 설정이 되어 있다. # grep -v "^#" /var/lib/pgsql/data/pg_hba.conf local all all ident sameuser host all all 127.0.0.1/32 ident sameuser host all all ::1/128 ident sameuser 아래는 특정 ip 대역에서 사용자 인증을 통하여 접속하도록 설정하는 예제이다. local all all password h..

[MySQL TIP] 빈 테이블 검색하기

간혹 테스트 테이블이나, 테이블을 잘못생성하고 안사용하는 경우 등의 다양한 이유로 행수가 0인 테이블들이 존재한다. 아래의 스크립트는 MySQL에서 행이 없는 테이블에 대해 INFORMATION_SCHEMA에서 찾는 방법이다. 이런 테이블을 DBA 가 잘 리스트업할 필요가 있다. select CONCAT('SELECT \"',table_schema,'.',table_name,'\" AS tbl, COUNT(*) AS cnt FROM ',table_schema,'.',table_name,';') as cmd from information_schema.tables where table_schema not in ('mysql','performance_schema','information_schema') and..

MySQL에서의 AUTO_INCREMENT 사용법

MySQL을 AUTO_INCREMENT 기능은 기본 키 값을 증가의 자동 시퀀스를 생성 할 수있는 가장 쉬운 방법입니다. 너무 사용하기가 매우 쉽습니다 : create table t ( i integer auto_increment, other_field varchar(100), primary key(id) ); AUTO_INCREMENT를 사용할 때 염두에 두어야 할 몇 가지 기능. AUTO_INCREMENT는 결코 테이블에 이미 존재한 미만의 값을 제공하지는 않습니다. 명시 적으로 더 높은 값으로 ID를 추가 할 경우, AUTO_INCREMENT에 의해 생성되는 다음 값은 하나 더 높은 값일 것입니다. 이 말은 간격이 있다는 것을 의미합니다. 이것은 어떤 이유로 필드의 가능한 최대 값이 삽입되어있는 경..

VACUUM vs VACUUM FULL

1. VACUUM 1 ▷ 1 ▷ 1 2 2 2 3 (3) 4 4 4 5 (5) 6 6 6 3, 5를 삭제하고 난 후 VACUUM 이 후 위에 보이는 것은 블록의 data 이다. delete가 발생하는 경우, 괄호 안의 값처럼 data가 지워지지 않은 체 flag 값만 변경되어 해당 블록은 사용할 수 없는 공간으로 남게 된다. 이 경우, VACUUM 명령을 통해 delete flag가 있는 data를 영구히 지워버림으로써 해당 블록을 사용할 수 있는 공간으로 비워주게 된다. VACUUM은 table의 Lock을 걸지 않으므로 운영 중에도 사용이 가능하다. 2. VACUUM FULL 1 ▷ 1 ▷ 1 ▷ 1 2 2 2 2 3 (3) 4 4 4 4 6 6 5 (5) #1 6 6 3, 5를 삭제 VACUUM F..

06. CUBRID 사용자, Database 파일, 백업

안녕하세요~ 오늘은 농민의 날이네요~ 가래떡은 많이 받으셨나요?이번 화에는 CUBRID 사용자, Databases 파일, 백업에 대해 알아볼게요~ CUBRID 데이터베이스 사용자로는 그룹과 사용자로 나뉩니다.사용자에게 권한 A가 부여되면, 해당 사용자에게 속하는 모든 멤버에게도 권한 A도 동일하게 부여됩니다.한 마디로, 사용자와 그에 속한 멤버를 그룹이라고 하고,멤버가 없는 사용자를 사용자라고 합니다. CUBRID에는 DBA와 PUBLIC이라는 사용자를 기본으로 제공해요.- DBA는 모든 사용자의 멤버가 되며, 따라서 데이터베이스의 모든 객체에 접근할 수 있는 최고 권한 사용자예요 DBA만 데이터베이스 사용자를 추가, 편집, 삭제할 수 있는 권한이 있어요- DBA를 포함한 모든 사용자는 PUBLIC의 멤..

Mysql에서 innodb_file_per_table을 사용하는 이유

InnoDB의 작업을 할 때, 테이블 스페이스 스토리지를 관리하기위한 두 가지 방법이있다 :모든 것들을 하나의 파일로 관리(선택적으로 분할).테이블 당 하나의 파일 생성.I will discuss the advantages and disadvantages of the two options, 두 옵션간의 장점과 단점을 논의하고, innodb_file_per_table가 가장 바람직한 방법이라는 점을 이야기 할 것이다. A single tablespace하나의 큰 파일에 모든 것을 저장한다는 것의 의미는 모든 테이블과 스키마를 비롯한 모든 인덱스들이 하나의 파일이 섞이게 된다는 것이다. 이러한 방식은 다른 테이블들과 다른 스키마들이 유휴 공간을 자유롭게 공유할 수 있다는 좋은 장점이 있다. 따라서, 만약 내..

[syslog] daemon[PID]: warning: can't get client address: Connection reset by peer

1. 에러 메시지: daemon[PID]: warning: can't get client address: Connection reset by peer 2. 원인: - C/S 구조에서의 TCP 통신은 기본적으로 3-way handshake 방식을 통해 서로 세션을 연결하게 되는데, SYN/ACK 시퀀스가 Connection 이 완료되기 전에 torn down(해체) 되어 daemon 이 source system 을 확인할 수 없을 때 발생 - unauthorized user 가 daemon 을 통해 해당 시스템에 접근하려 했다가 정상적인 절차로 Connection 이 맺어지기 전에 세션이 terminate 되면 발생 - 서버에서 취약점 확인을 위한 스캔 시 발생 3. 조치 방안: - 단순 경고성 메시지이므..