데이터베이스14 ProxySQL 이란? ProxySQL은 DB와 백엔드 서버 간의 커넥션을 효율적으로 관리합니다. 이를 통해 네트워크 리소스를 최적화하고, 데이터베이스 서버의 부하를 줄일 수 있습니다. 또한 ProxySQL은 쿼리 캐싱이 가능해, 동일한 쿼리에 대해 향상된 응답 시간을 제공합니다. Connection Multiplexing 기능도 제공하여 커넥션 비용을 아낄 수 있습니다. 만약에 운영하는 서비스의 동시접속자가 3~10만 이상이 예상되면 어떻게 DB와 어플리케이션의 구성을 해야할까요?? 동접자가 많으면 방화벽, 앱서버, 데이터베이스 등 각 서버에서 버틸 수 있는 세션은 한계에 봉착하게 됩니다. 커넥션풀을 사용할 수 있는 ProxySQL을 사용하게 되면 수많은 클라이언트 연결을 수신하고, 이 연결을 백엔드에서 들어오는 커넥션을 M.. 2024. 3. 8. MySQL 5.7(EOL) To 8.0 업그레이드 사전체크 사항 8.0 메이저 버전 업그레이드 전 사전 체크 사항 mysql> mysqlcheck -u root -p --all-databases --check-upgrade ## 파티셔닝 Check Query ## SELECT TABLE_SCHEMA, TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE ENGINE NOT IN ('innodb', 'ndbcluster') AND CREATE_OPTIONS LIKE '%partitioned%'; /* 현재 Musicow DB 파티셔닝 없음 */ ## 엔진 변경 ## ALTER TABLE table_name ENGINE = INNODB; ## 일반 파티셔닝 제거 ## ALTER TABLE table_name REMOVE PARTITIONI.. 2024. 3. 7. [MySQL] MySQL 8.0 Replication 간단히 설정 및 구성하기 "MySQL 8.0.23 이전 버전의 Replication 간단하게 구성하는 내용을 정리해보려고 합니다." MySQL 8.0.23 이전의 버전에서는 change master to MySQL 8.0.23 이후의 버전에서는 change replica source change to -- 8.0.23 이후 버전 MySQL> CHANGE REPLICATION SOURCE TO MySQL> SOURCE_HOST='host_name', MySQL> SOURCE_USER='repli_user', MySQL> SOURCE_PASSWORD='repli_user_password', MySQL> SOURCE_FILE='binary_log_file', MySQL> SOURCE_LOG_POS=binary_log_position;.. 2024. 2. 22. [MySQL] 취약점 & 보안 관련 참고용 [ 환경설정 파일 접근 권한 ] 무단 사용자가 MySQL Configuration File 을 수정하는 것을 방지하여 DB 서버의 안전성을 높일 수 있습니다. - 초기화 파일(my.cnf, my.ini)의 접근 권한을 초기화 파일에 대한 보호를 위하여 600 또는, 640으로 설정해야합니다. - MySQL Configuration File 디폴트 위치: /etc/my.cnf or /my.cnf chmod 600 . /my.cnf - AWS 같은 경우에는 RDS 파라미터 옵션 권한을 필요 사용자에게만 부여해야합니다. [ DB 사용자 호스트 제한 ] 서버 접근 IP 분리 , % 를 사용하게 되면 어느 IP 에서도 접근 가능한 계정이 발급되어 보안에 취약합니다. - mysql.user 테이블과 mysql.db.. 2024. 2. 22. 이전 1 2 3 4 다음