Вызов процедуры не работает через 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;