Ich habe eine AWS MySQL-Instanz, auf der ich Multi-AZ-Redundanz auf True festgelegt habe. Ich habe auch eine Lese-Replik, die ich für schreibgeschützte Abfragen verwenden werde. Ich verwende C3P0 als Verbindungspool. AWS gibt den Endpunkt für die Master-Instanz und für das Read-Replikat an, gibt jedoch keinen Endpunkt für den redundanten Master an. Ich erstelle zwei Verbindungspools, einen für den Lesezugriff und einen für den Schreibzugriff. Wie stelle ich sicher, dass mein Dienst den redundanten Master erreichen kann, wenn der Master ausfällt? Ich lese über die Einstellung der TTL, ich setze das auf 30. Allerdings habe ich den Master neu gestartet (und die Failover-Taste angekreuzt), aber mein Dienst konnte keine Daten schreiben, bis der Master den Neustart beendet und wieder online war. Ich verwende Guice, um die Verbindungspools in meinen Code zu injizieren.Wie Failover zu einem AWS RDS MySQL-Replikat in Java
0
A
Antwort
0
Ich konnte das Failover zum Funktionieren bringen. (Es hat tatsächlich funktioniert, ich habe einfach nicht lange genug gewartet, um es zu sehen). Ich hatte einige C3P0-Einstellungen, die zu hoch eingestellt waren, was dazu führte, dass C3P0 nicht sah, dass die Verbindungen fehlgeschlagen waren.
Verwandte Themen
- 1. Rails Postgres Reconnection auf Failover für RDS
- 2. AWS Elasticache Redis Failover
- 3. AWS Lambda Java, Verbindung zu MySQL herstellen RDS
- 4. AWS Lambda RDS zu viele Verbindungen
- 5. AWS - Verschieben von RDS zu VPC
- 6. Wie funktioniert AWS RDS MYSQL SSL?
- 7. .NET Core AWS RDS-Verbindung
- 8. AWS RDS MySQL mit Unicode
- 9. Wie man AWS RDS Datenbankverbindungen verwaltet?
- 10. Wie debuggen Sie eine AWS RDS-Instanz?
- 11. Zugriff auf Daten aller AWS RDS Reserved Instances mit Java?
- 12. aws postgres rds mit ansible
- 13. Erstellen Postgres Event Trigger in AWS-RDS
- 14. Datenmigration von AWS RDS zu Azure SQL Data Warehouse
- 15. AWS VPC-Setup für RDS-Zugriff
- 16. AWS RDS kann keine Verbindung zu MySQL über PHP herstellen
- 17. So verbinden Sie RDS mit phpmyadmin - AWS
- 18. AWS: RDS-Instanz ändern DB-Name
- 19. AWS EC2 RDS kann keine Verbindung zu mysql herstellen
- 20. Liste aller AWS RDS-Instanzen mit AWS .NET SDK
- 21. CakePHP3 Anwendungsfehler mit AWS RDS Datenbank
- 22. PgAgent auf AWS RDS für Postgres installieren
- 23. Link-Server mit PG RDS von AWS
- 24. AWS EC2 mysql_query RDS senden fehlgeschlagen
- 25. kann nicht AWS RDS verbinden gestellt Instanz
- 26. AWS Lambda RDS MySQL DB Verbindung InterfaceError
- 27. Pakete auf PostgreSQL installieren RDS AWS
- 28. Erstellen AWS RDS auf bestimmten VPC
- 29. AWS RDS Restore Snapshot Server hört nicht
- 30. AWS RDS PostgreSQL Pgadmin - Server hört nicht
Wenn Sie das Kästchen für Failover aktiviert haben, ist der Master nie "online" zurückgekehrt. Der Master wurde zur Bereitschaftsdatenbank und die Bereitschaftsdatenbank wurde zum Master befördert. Das DNS wäre so geschaltet worden, dass die Adresse, die Sie für die Verbindung mit dem Master verwendeten, auf den neuen Master umgeschaltet hätte (alter Standby). –
Sie haben Recht, ich habe die falsche Terminologie verwendet. Wie erkenne ich diesen Schalter des DNS in meinem Code? Ich setze java.security.Security.setProperty ("networkaddress.cache.ttl", "10"); wie in den AWS-Dokumenten erwähnt (sie sagten 60 Sekunden, aber ich habe es bei 10 versucht) – Mark
Das sollte alles sein, was Sie tun müssen. –