Документацията на MySQL казва, че множество хостове могат да бъдат разделени със запетаи:
За съжаление, това поведение беше нарушено в Connector/NET 8.0.18 и по-рано (то беше поправено в 8.0.19 ).
Connector/NET 8.0.19 ще опита няколко хоста на случаен принцип
освен ако не посочите priority
атрибут за всеки хост. Например:
// 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);
Ако не можете да актуализирате до 8.0.19, има алтернативен доставчик на OSS MySQL ADO.NET, който поддържа множество хостове, разделени със запетая:MySqlConnector на GitHub
, NuGet
. Освен това има Load Balance
опция за низ за връзка
което ви позволява да посочите точния вид балансиране на натоварването, което искате:RoundRobin
, FailOver
, Random
, LeastConnections
.