Вызов процедуры не работает через ProxySql, ошибка MySql.Data.MySqlClient.MySqlException (0x80004005): таблица "mysql.proc" не существует

У меня есть два экземпляра RDS для MySQL, 1 главный узел и 1 подчиненный узел репликации. Я настроил экземпляр ProxySql EC2, прослушивающий порт 6033, который направляет все запросы на запись на главный узел и все запросы на чтение на подчиненный узел.

В моем.NET-коде, если я выполняю простой встроенный запрос, такой как "select * from tableX;" затем он выполняется через экземпляр ProxySql EC2, но когда я помещаю этот оператор в процедуру и вызываю эту процедуру через код C#, он выдает ошибку:

MySql.Data.MySqlClient.MySqlException (0x80004005): таблица "mysql.proc" не существует

Я использую пакет nuget MySql.Data 8.0.13 для взаимодействия с базой данных. Версия Mysql 8.0.13 на AWS RDS.

В приложении.NET строка подключения:

Сервер =xxx.amazonaws.com;Port=6033; пользователь = хая, база = а, пароль = хххй, кодировка =utf8mb4;

Кроме того, если я подключаюсь через SqlYog, я могу выполнить процедуру без ошибок, но с.NET она не работает.

0 ответов

Обязательно добавьте CheckParameters=false в строку подключения:

server=xxx.amazonaws.com;Port=6033;user=xxx;database=abc;password=xxxx;charset=utf8mb4;CheckParameters=false;
Другие вопросы по тегам