sql >> Databasteknik >  >> RDS >> Mysql

MySQL c# Connection String failover

MySQL-dokumentationen säger att flera värdar kan separeras med kommatecken:

Tyvärr bröts detta beteende i Connector/NET 8.0.18 och tidigare (det var fixat i 8.0.19 ).

Connector/NET 8.0.19 kommer att prova flera värdar slumpmässigt om du inte anger en priority attribut för varje värd. Till exempel:

// 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);

Om du inte kan uppdatera till 8.0.19 finns det en alternativ OSS MySQL ADO.NET-leverantör som stöder flera kommaavgränsade värdar:MySqlConnector på GitHub , NuGet . Dessutom har den en Load Balance alternativ för anslutningssträng som låter dig specificera den exakta typen av lastbalansering du vill ha:RoundRobin , FailOver , Random , LeastConnections .



  1. Hur skickar jag Java List of Objects till Oracle Stored Procedur med MyBatis?

  2. Hur aktiverar jag MySQL-klienten automatiskt återansluta med MySQLdb?

  3. PL/SQL:hur ber jag användarinmatning i en procedur?

  4. Olaglig blandning av sammanställningar (utf8_general_ci,IMPLICIT) och (utf8_unicode_ci,IMPLICIT) för operation '=' i MySQL Stored Procedure