목록Database/MySQL (4)
without haste but without rest
version: '3' services: mysql: image: mysql:5.7 platform: linux/amd64 restart: always ports: - "3306:3306" environment: MYSQL_USER: test MYSQL_PASSWORD: test MYSQL_ROOT_PASSWORD: root volumes: - ./data:/var/lib/mysql command: ['mysqld', '--character-set-server=utf8mb4', '--collation-server=utf8mb4_unicode_ci'] 커맨드 명령어로 캐릭터셋 utf8 지정하지 않으면 디폴트가 라틴이라 한글을 지원하지 않는다.
allowPublicKeyRetrieval 디비와 통신 중 디비의 패스워드를 보호하기 위해 TLS(Transport Layer Security)를 사용한다. 이때 TLS를 사용하지 못하는 경우 RSA 암호화를 사용한다. 공개키 암호를 사용하려면 해당 옵션은 TRUE 로 설정해주어야 한다. 단 이때 MITM 공격이 가능해지므로 주의가 필요하다. 따라서 기본은 false다. MITM 은 중간 탈취 공격으로 중간에서 암호를 가로채는 해킹 방법이다. MITM https://en.wikipedia.org/wiki/Man-in-the-middle_attack Man-in-the-middle attack - Wikipedia From Wikipedia, the free encyclopedia Jump to navig..
MySQL 컨테이너에 영구 볼륨을 요청해서 배포하는 yaml 파일 템플릿 # PVC apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mysql-claim spec: accessModes: - ReadWriteOnce storageClassName: standard resources: requests: storage: 10Gi --- #Service apiVersion: v1 kind: Service metadata: name: mysql-service spec: type: NodePort selector: app: mysql ports: - name: mysql protocol: TCP port: 3306 --- # Deployment apiVer..
mysql의 binary log path는 리눅스를 기준으로 /var/lib/mysql 경로에 위치한다. 해당 디렉토리에 빈로그는 binlog.000001 과 같은 형태로 저장되어 있다. mysqlbinlog --vv --base64-output=DECODE-ROWS --database=testdb binlog.000001 > log.sql cat log.sql mysqlbinlog 명령어로 binlog.000001 파일에서 testdb 데이터베이스에 해당하는 내용을 log.sql로 변환한다. log.sql의 파일 내용을 읽어서 바이너리 로그가 어떤 형태로 저장되는지 확인할 수 있다.