RDS 프록시 명령줄 예제 - Amazon Aurora

RDS 프록시 명령줄 예제

연결 명령과 SQL 문의 조합이 어떻게 RDS Proxy와 상호 작용하는지 보려면 다음 예제를 살펴보십시오.

장애 조치 전반에 걸쳐 MySQL 데이터베이스에 대한 연결 유지

이 MySQL 예에서는 장애 조치 중에 어떻게 열린 연결이 계속 작동하는지 보여줍니다. 데이터베이스를 재부팅하거나 데이터베이스가 문제로 인해 사용할 수 없게 되는 경우를 예로 들 수 있습니다. 이 예제에서는 the-proxy라는 프록시와 DB 인스턴스 instance-8898instance-9814가 있는 Aurora DB 클러스터를 사용합니다. Linux 명령줄에서 failover-db-cluster 명령을 실행하면 프록시와 연결된 라이터 인스턴스가 다른 DB 인스턴스로 변경됩니다. 연결이 열려 있는 상태에서 프록시와 연결된 DB 인스턴스가 변경되는 것을 확인할 수 있습니다.

$ mysql -h the-proxy.proxy-demo.us-east-1.rds.amazonaws.com -u admin_user -p Enter password: ... mysql> select @@aurora_server_id; +--------------------+ | @@aurora_server_id | +--------------------+ | instance-9814 | +--------------------+ 1 row in set (0.01 sec) mysql> [1]+ Stopped mysql -h the-proxy.proxy-demo.us-east-1.rds.amazonaws.com -u admin_user -p $ # Initially, instance-9814 is the writer. $ aws rds failover-db-cluster --db-cluster-identifier cluster-56-2019-11-14-1399 JSON output $ # After a short time, the console shows that the failover operation is complete. $ # Now instance-8898 is the writer. $ fg mysql -h the-proxy.proxy-demo.us.us-east-1.rds.amazonaws.com -u admin_user -p mysql> select @@aurora_server_id; +--------------------+ | @@aurora_server_id | +--------------------+ | instance-8898 | +--------------------+ 1 row in set (0.01 sec) mysql> [1]+ Stopped mysql -h the-proxy.proxy-demo.us-east-1.rds.amazonaws.com -u admin_user -p $ aws rds failover-db-cluster --db-cluster-identifier cluster-56-2019-11-14-1399 JSON output $ # After a short time, the console shows that the failover operation is complete. $ # Now instance-9814 is the writer again. $ fg mysql -h the-proxy.proxy-demo.us-east-1.rds.amazonaws.com -u admin_user -p mysql> select @@aurora_server_id; +--------------------+ | @@aurora_server_id | +--------------------+ | instance-9814 | +--------------------+ 1 row in set (0.01 sec) +---------------+---------------+ | Variable_name | Value | +---------------+---------------+ | hostname | ip-10-1-3-178 | +---------------+---------------+ 1 row in set (0.02 sec)
Aurora DB 클러스터에 대한 max_connections 설정 조정

이 예제에서는 Aurora MySQL DB 클러스터의 max_connections 설정을 조정하는 방법을 보여 줍니다. 이렇게 하려면 MySQL 5.7과 호환되는 클러스터의 기본 파라미터 설정을 기반으로 자체 DB 클러스터 파라미터 그룹을 생성합니다. max_connections 설정에 값을 지정하여 기본값을 설정하는 공식을 재지정합니다. DB 클러스터 파라미터 그룹을 자체 DB 클러스터와 연결합니다.

export REGION=us-east-1 export CLUSTER_PARAM_GROUP=rds-proxy-mysql-57-max-connections-demo export CLUSTER_NAME=rds-proxy-mysql-57 aws rds create-db-parameter-group --region $REGION \ --db-parameter-group-family aurora-mysql5.7 \ --db-parameter-group-name $CLUSTER_PARAM_GROUP \ --description "Aurora MySQL 5.7 cluster parameter group for RDS Proxy demo." aws rds modify-db-cluster --region $REGION \ --db-cluster-identifier $CLUSTER_NAME \ --db-cluster-parameter-group-name $CLUSTER_PARAM_GROUP echo "New cluster param group is assigned to cluster:" aws rds describe-db-clusters --region $REGION \ --db-cluster-identifier $CLUSTER_NAME \ --query '*[*].{DBClusterParameterGroup:DBClusterParameterGroup}' echo "Current value for max_connections:" aws rds describe-db-cluster-parameters --region $REGION \ --db-cluster-parameter-group-name $CLUSTER_PARAM_GROUP \ --query '*[*].{ParameterName:ParameterName,ParameterValue:ParameterValue}' \ --output text | grep "^max_connections" echo -n "Enter number for max_connections setting: " read answer aws rds modify-db-cluster-parameter-group --region $REGION --db-cluster-parameter-group-name $CLUSTER_PARAM_GROUP \ --parameters "ParameterName=max_connections,ParameterValue=$$answer,ApplyMethod=immediate" echo "Updated value for max_connections:" aws rds describe-db-cluster-parameters --region $REGION \ --db-cluster-parameter-group-name $CLUSTER_PARAM_GROUP \ --query '*[*].{ParameterName:ParameterName,ParameterValue:ParameterValue}' \ --output text | grep "^max_connections"