AWS: 컴퓨터에서 RDS 데이터베이스에 연결할 수 없음
EC2 인스턴스/라이브 Web은 RDS 데이터베이스에 정상적으로 접속할 수 있습니다.단, 로컬머신에서 코드를 디버깅할 때 데이터베이스에 접속할 수 없어 다음 오류가 발생합니다.
Operation Error: (2003, "aa9jliuygesv4w.c03i1 ck3o0us.us-east-1.rds.amazonaws.com"의 MySQL 서버에 접속할 수 없습니다" (10060)
추가했습니다..pem
★★★★★★★★★★★★★★★★★」.ppk
「」의 키.ssh
EB CLI eb eb eb eb 。더 이상 어떻게 해야 할지 모르겠어요.
참고로 이 앱은 장고에 있습니다.
그것은 그렇게 어렵지 않다는 것이 판명되었다.다음의 순서를 실행합니다.
- EC2 대시보드로 이동
- Security Groups 탭으로 이동
- RDS 데이터베이스 보안 그룹만 선택하고 선택합니다.Security Group 세부 정보가 하단에 표시됩니다.
- [ Inbound ]탭을 클릭합니다.
- [Edit] 버튼을 클릭합니다.
- 유형 추가:MYSQL/Aurora;프로토콜:TCP;범위:3306;출처:0.0.0/0
PUBLIC ACCESSIBILITY
[YES] (네)로 되어 있다
이게 내가 지난 3일 동안 해결하려고 했던 거야
임의의 IP 주소로부터의 트래픽 수용
RDS 인스턴스 생성 후 보안 그룹 인바운드 규칙이 특정 IP 주소로 설정되었습니다.임의의 IP 주소에서 액세스 할 수 있도록 인바운드 규칙을 편집해야 했습니다.
- "보안 그룹 규칙"
- Security Group 선택
- "인바운드 규칙"을 클릭합니다.
- "인바운드 규칙 편집"을 클릭합니다.
- "Source"에서 드롭다운을 선택하고 "Anywhere"를 클릭합니다.
- ::0 또는 0.0.0/0 이 표시됩니다.
- "규칙 저장"을 클릭합니다.
이 페이지의 훌륭한 솔루션을 검토하느라 2시간이나 걸렸어요.바보 같은 대답을 할 시간이야!
Security Group, VPC, 라우팅 테이블, 서브넷, 게이트웨이를 리다이렉트했습니다...아니요. AWS 콘솔에서 URL을 복사 붙여넣기했습니다. 경우에 따라 후행 공간이 숨겨질 수 있습니다.엔드포인트가 에 있습니다.<div>
「」라고 요소가 표시됩니다\n
db 넣게 됩니다.이것을 Intellij db 커넥터에 붙여넣으면 스페이스에 강제로 붙여 넣습니다.
소스코드의 견적 문자열에 URL을 붙여넣은 후에야 문제를 발견했습니다.
VPC 및 서브넷이 널리 사용되지 않는지 확인합니다.
다음의 CIDR 설정은, 2개의 서브넷에 대해서 유효하게 동작합니다.
VPC
10.0.0.0/16
10.0.0.0 — 10.0.255.255 (65536 addresses)
1 '''1
10.0.0.0/17
10.0.0.0 — 10.0.127.255 (32768 addresses, half)
2 '''2''
10.0.128.0/17
10.0.128.0 — 10.0.255.255 (32768 addresses, other half)
서브넷이 3개 필요한 경우 조정합니다.
RDS 데이터베이스에 접속할 수 없었습니다.모든 세부사항을 수동으로 검토해보니 모든 것이 괜찮았습니다.아무런 문제 징후도 없었고 문서에서도 적절한 정보를 찾을 수 없었습니다.VPC는 좁은 CIDR(10.0.0/22)로 설정되어 각 서브넷에는 255개의 주소가 할당되어 있습니다.CIDR을 10.0.0/16으로 변경하여 2개의 서브넷으로 완전히 분할한 후 RDS 접속이 동작하기 시작했습니다.내가 문제의 근원을 겨우 찾은 것은 순전히 행운이었다. 왜냐하면 그것은 나에게는 말이 안 되기 때문이다.
저 같은 경우에는 사이즈를 업그레이드 할 때.rds 인스턴스의 프라이빗주소가 VPC의 프라이빗서브넷에 포함되었습니다.My instance is in private subnet(내 인스턴스가 개인 서브넷에 있습니다) 문서를 사용하여 로컬 컴퓨터에서 해당 문서에 연결할 수 없습니다.
그러나 루트 테이블을 변경해도 문제가 해결되지 않았습니다.결국 문제를 해결한 것은 사이즈를 다운그레이드한 후 사이즈를 다시 업그레이드하는 것입니다.프라이빗 주소가 퍼블릭서브넷에 폴백되면모든 것이 아주 잘 작동한다.
또, ec2 인스턴스 내부에서도 접속할 수 없었습니다.
AWS RDS 옵션을 조사한 결과, ec2 인스턴스는 현재와 같은 VPC의 RDS에만 연결할 수 있는 것으로 나타났습니다.
RDS가 있는 같은 VPC에 ec2 인스턴스를 작성하면 예상대로 액세스할 수 있었습니다.
위의 모든 답을 시도해 본 경우...데이터베이스 재생성...
AWS on 데이터베이스 생성은 퍼블릭/프라이빗 액세스를 허용하는 옵션을 제공합니다.
글쎄요, 거의 모든 분들이 답을 지적해 주셨기 때문에 여러분이 이해할 수 있도록 다른 시각으로 설명해 드리겠습니다.
AWS RDS에 접속하는 방법에는 두 가지가 있습니다.
인스턴스를 같은 VPC 및 서브넷으로 프로비저닝합니다.DB에 연결할 수 있는 워크벤치를 설치합니다.일반인에게 접근할 수 있도록 할 수 있습니다.예제:동일한 VPC 그룹에 윈도우즈 인스턴스를 프로비저닝하고 워크벤치를 설치한 후 끝점을 통해 DB에 연결할 수 있습니다.
다른 방법은 원치 않는 액세스를 방지하기 위해서만 IP에 공개적으로 DB에 액세스할 수 있도록 하는 것입니다.DB Security Group을 변경하여 IP에 대한 DB 포트 트래픽만 허용할 수 있습니다.이렇게 하면 사용자만 DB에 공개적으로 액세스할 수 있습니다.이는 SG의 소스 부분에 보안 그룹을 추가하는 다양한 AWS 서비스에 대해 수행하는 방법입니다.
두 옵션이 모두 기능하지 않는 경우 오류가 VPC 라우팅 테이블에 있습니다.VPC 라우팅 테이블에서 서브넷과 관련되어 있는지 여부 및 인터넷게이트웨이가 연결되어 있는지 여부를 확인할 수 있습니다.
이 비디오를 보면 의심을 해소할 수 있습니다.
VPN 또는 방화벽 차단 연결이 있는지 확인하는 것을 잊지 마십시오.
언급URL : https://stackoverflow.com/questions/37212945/aws-cant-connect-to-rds-database-from-my-machine
'programing' 카테고리의 다른 글
Scala에서 통합 및 루프를 최적화하려면 어떻게 해야 합니까? (0) | 2022.10.02 |
---|---|
XAMPP를 사용하여 로컬 WordPress 설치를 완료할 수 없습니다. (0) | 2022.10.02 |
CodeIgniter의 뷰 내에 뷰를 포함하는 최선의 방법 (0) | 2022.10.02 |
위도/경도에 따라 두 점 사이의 거리를 구합니다. (0) | 2022.09.19 |
케이스를 올바르게 사용하는 방법..MySQL의 경우 (0) | 2022.09.19 |