반응형

2023 15

ProxySQL - 비밀번호 관리

MySQL Passwords in ProxySQL ProxySQL은 프로토콜 인식 프록시입니다. ProxySQL은 트래픽을 기반으로 라우팅을 수행하기 때문에 클라이언트가 연결할 때 아직 대상 HG를 식별할 수 없으므로 ProxySQL이 클라이언트를 인증해야 합니다.이러한 이유로 사용자의 비밀번호와 관련된 정보, 즉 인증을 허용하기에 충분한 정보가 필요합니다. 또한 ProxySQL은 나중에 백엔드에 대한 연결을 설정하거나 CHANGE_USER이미 설정된 연결 내에서 발행하기 위해 이 정보가 필요합니다. 3계층 구성 아키텍처는 사용자 정보에도 적용됩니다. ProxySQL은 mysql_users테이블에 사용자 정보를 저장합니다. 개체 MySQL_Authentication()는 런타임에 이 정보를 저장할 책임이..

2023 2023.01.26

ProxySQL - 사용자 구성

사용자 구성 사용자는 mysql_users 테이블에서 구성됩니다. 참고 : 다음 섹션을 읽기 전에 ProxySQL에서 사용 하는 다중 계층 구성 시스템 을 이해해야 합니다. 구체적으로: mysql_users테이블 의 변경 사항은 LOAD MYSQL USERS TO RUNTIME 실행 하지 않고는 적용되지 않습니다. SAVE MYSQL USERS TO DISK 명령어로 실행 중인 디스크에 저장하지 않으면 다시 시작/충돌 후 mysql_users테이블 의 변경 사항 이 손실됩니다. mysql_users테이블 의 모든 변경 사항은 즉시 적용되지 않으며 지속적이지 않습니다. 에 대한 변경 사항 mysql_users은 구성 파일을 저장하거나 서비스를 다시 로드하지 않고 구성 파일을 편집하는 것으로 간주됩니다. 메..

2023 2023.01.26

ProxySQL - Query Logging

쿼리 로깅 ProxySQL은 통과하는 쿼리를 기록할 수 있습니다. 버전 2.0.6 이전에는 mysql_query_rules.log 사용하여 쿼리 규칙으로 로깅이 구성되었습니다. 이는 매우 광범위하거나 세분화된 로깅을 허용합니다. 버전 2.0.6부터 새로운 전역 변수가 추가되었습니다: mysql-eventslog_default_log. 일치하는 규칙이 값 mysql_query_rules.log을 지정하지 않으면 가 mysql-eventslog_default_log적용됩니다. mysql-eventslog_default_log 의 기본값 은 0이고 가능한 값은 0및 1입니다. 설정 먼저 전역적으로 로깅을 활성화합니다. SET mysql-eventslog_filename='queries.log'; 변수는 런타임..

2023 2023.01.19

ProxySQL - Query Cache

머리말 역사적으로 MySQL 환경에서 캐싱을 사용하는 방법에는 두 가지가 있습니다. MySQL 쿼리 캐시 사용: MySQL 서버 자체에 내장되어 있으며 외부 종속성이 없습니다. 해당 테이블이 쓰기를 수신하면 캐시 항목이 무효화되기 때문에 쓰기 집약적인 워크로드에 병목 현상이 발생합니다. use external caching : 많은 유연성을 허용하지만 응용 프로그램이 데이터베이스와 캐싱 시스템 모두에 연결해야 하고 업데이트를 유지해야 하기 때문에 많은 응용 프로그램 변경 및 논리가 필요합니다. 외부 캐싱은 매우 효율적이지만 개발 노력이 필요하고 DBA는 데이터 흐름을 제어할 수 없습니다. 유선 캐싱 ProxySQL은 쿼리 캐싱에 새로운 패러다임을 도입했습니다. 구성(자세한 내용은 아래 참조)에 따라 결과..

2023 2023.01.19

ProxySQL - Sharding

ProxySQL의 샤딩 샤딩은 ProxySQL의 또 다른 주요 사용 사례이며 기본적으로 샤딩에 대한 3x 주요 접근 방식이 있습니다. 사용자 기반 샤딩 스키마 기반 샤딩 데이터 기반 샤딩 다음 예제는 이러한 3x 특정 사용 사례를 다룹니다. 쿼리 규칙은 다른 많은 접근 방식을 지원할 수 있을 만큼 충분히 유연합니다. 사용자 기반 샤딩 이 가장 간단한 형태의 샤딩에서 ProxySQL은 연결에 정의된 "사용자"를 기반으로 적절한 샤드로 쿼리를 라우팅합니다. 우리가 해야 할 일은 "default_hostgroup"과 함께 MySQL 사용자를 정의하는 것뿐입니다. 이 접근 방식에는 쿼리 규칙이 필요하지 않습니다. 예를 들어: INSERT INTO mysql_users (username, password, act..

2023 2023.01.19

ProxySQL - 읽기/쓰기 분할 설정 방법

ProxySQL 읽기/쓰기 분할 읽기/쓰기 분할은 가장 일반적으로 사용되는 쿼리 라우팅 유형 중 하나이며 가장 일반적으로 사용되는 다른 쿼리 라우팅 구현은 샤딩입니다. 보고 쿼리를 특정 복제본으로 라우팅하는 것과 같은 쿼리 라우팅에 대한 다른 많은 사용 사례가 있지만 읽기/쓰기 분할 및 샤딩이 가장 일반적입니다. 다른 포트를 사용하여 읽기/쓰기 분할 MySQL용 표준 TCP 로드 밸런서를 사용하는 경우 일반적으로 두 개의 개별 포트에서 수신 대기하도록 구성합니다. 각 포트는 엔드포인트 역할을 하며 하나는 쓰기용이고 다른 하나는 읽기용입니다. 유사한 접근 방식을 사용하여 ProxySQL을 구성하는 것이 일반적이며, 특히 이러한 메커니즘을 이미 구현한 다른 TCP 로드 밸런서를 위해 마이그레이션할 때 그렇습..

2023 2023.01.19

ProxySQL - 백엔드 서버 구성

ProxySQL에서 백엔드 MySQL 서버 구성 MySQL 서버는 mysql_servers및 (선택 사항) mysql_replication_hostgroups테이블에서 구성됩니다. 참고 : 다음 섹션을 읽기 전에 ProxySQL에서 사용 하는 다중 계층 구성 시스템 을 이해해야 합니다. 구체적으로: mysql_servers및 mysql_replication_hostgroups테이블 의 변경 사항은 LOAD MYSQL SERVERS TO RUNTIME 실행 없이 적용되지 않습니다. SAVE MYSQL SERVERS TO DISK 실행 하여 디스크에 저장하지 않으면 다시 시작/충돌 후 의 변경 사항 mysql_servers및 mysql_replication_hostgroups테이블 이 손실됩니다 . mysq..

2023 2023.01.19

ProxySQL 초기 설정

초기 구성 이 가이드에서는 ProxySQL의 기본 구성 요소를 단계별로 구성하는 방법을 설명합니다. 이 가이드에서는 사용자가 ProxySQL의 전체 아키텍처를 이해하고 있고 ProxySQL이 기본 구성으로 운영 체제에 이미 설치되어 있다고 가정합니다. ProxySQL의 내부는 모든 MySQL 명령줄 클라이언트를 통해 액세스할 수 있는 표준 SQL ProxySQL Admin 인터페이스를 사용하여 재구성할 수 있습니다(기본 포트 6032 사용 가능).: $ mysql -u admin -padmin -h 10.10.0.1 -P6032 --prompt 'ProxySQL Admin> ' mysql_servers, mysql_replication_hostgroups 과 mysql_query_rules 테이블에 항목..

2023 2023.01.18

ProxySQL - MySQL 8.0 지원

Support for MySQL 8.0 ProxySQL은 MySQL 8.0을 완전히 지원하지만 버전 2.0.2 이전에는 몇 가지 제한 사항이 있습니다. MySQL 8.0.4부터 MySQL 서버의 기본 인증 플러그인이 mysql_native_password에서 caching_sha2_password 로 변경 되었습니다 . ProxySQL은 아직 caching_sha2_password 를 지원하지 않습니다. 이러한 이유로 mysql_native_password로 MySQL 서버를 구성해야 합니다. ProxySQL 2.0.2 이전 버전을 사용하는 경우 자세한 내용은 문서 를 참조하십시오. ProxySQL 은 caching_sha2_password 인증 플러그인을 사용하는 클라이언트가 연결을 시도하는 경우 (프..

2023 2023.01.18

ProxySQL - Global Variables (글로벌 변수)

Global Variables Admin Variable Reference General MySQL Variable Reference MySQL Monitor Variable Reference ProxySQL의 동작은 전역 변수를 사용하여 조정할 수 있습니다. 다음 두 가지 방법으로 구성할 수 있습니다. 런타임 시 관리 인터페이스 사용(권장) 시작할 때 구성 파일의 전용 섹션 사용 ProxySQL은 데몬을 다시 시작할 필요 없이 대부분의 변수가 런타임에 변경되고 즉시 적용되도록 허용하여 최대 가동 시간을 지원합니다. 런타임 시 변경할 수 없는 변수는 mysql-interfaces, mysql-threads 그리고 mysql-stacksize 3개 뿐입니다. 또한 제어하는 ​​ProxySQL의 부분에 따라..

2023 2023.01.18
반응형