Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL c#-Verbindungszeichenfolge-Failover

Die MySQL-Dokumentation besagt, dass mehrere Hosts durch Kommas getrennt werden können:

Leider war dieses Verhalten in Connector/NET 8.0.18 und früher fehlerhaft (es wurde behoben). in 8.0.19 ).

Connector/NET 8.0.19 versucht es mit mehreren Hosts zufällig es sei denn, Sie geben eine priority an Attribut für jeden Host. Zum Beispiel:

// hosts will be tried at random
host=10.10.10.10:3306,192.101.10.2:3305,localhost:3306;uid=test;password=xxxx;

// hosts will be tried in descending priority order
server=(address=192.10.1.52:3305,priority=60),(address=localhost:3306,priority=100);

Wenn Sie nicht auf 8.0.19 aktualisieren können, gibt es einen alternativen OSS MySQL ADO.NET-Anbieter, der mehrere durch Kommas getrennte Hosts unterstützt:MySqlConnector auf GitHub , NuGet . Zusätzlich hat es einen Load Balance Option für Verbindungszeichenfolgen Damit können Sie die genaue Art des gewünschten Lastenausgleichs angeben:RoundRobin , FailOver , Random , LeastConnections .