MySQL, Connector с mod_mono и mono 2.6.7 - PullRequest
2 голосов
/ 21 октября 2010

У меня были большие проблемы с поиском веб-приложения MVC2 для поиска коннектора MySQL. Я использую CentOS 5.

Я установил DLL в GAC, используя версию 2.0 инструмента

$ mono /usr/local/lib/mono/2.0/gacutil.exe -i v2/mysql.data.dll
Installed v2/mysql.data.dll into the gac (/usr/local/lib/mono/gac)

Я подтверждаю, что он обновил GAC:

$ ls /usr/local/lib/mono/gac/MySql.Data/6.3.5.0__c5687fc88969c44d/mysql.data.dll

Я получаю следующую ошибку при запуске приложения:

Не удалось найти или загрузить зарегистрированный поставщик данных .Net Framework MySql.Data.MySqlClient

Я создал простое приложение командной строки, описанное здесь: http://www.mono -project.com / MySQL , которое работает под Mono и .NET на моем компьютере с Windows, но не работает на моем Linux-компьютере.

Ответы [ 3 ]

4 голосов
/ 21 октября 2010

Насколько вы добавили в GAC mysql.data.dll, вы уверены, что ссылаетесь именно на него или, может быть, MySQL.Data.dll?В Linux есть чувствительная к регистру файловая система, поэтому ссылки в решении тоже.

2 голосов
/ 29 августа 2011

Хорошо!Примечание: вам нужно адаптировать файл machine.config в соответствии с загруженной версией Connector / Net (6.3.7 в моем случае).

1 голос
/ 23 октября 2010

Есть две проблемы:

  1. Оболочка DLL, как уже упоминалось.
  2. Необходимо обновить файл machine.config.Мне не нужно было делать это на стороне Windows, потому что поставщик MySql делает это для вас автоматически.

Чтобы обновить файлы Mono machine.config, вам нужно найти файл machine.config.В случае Cent OS они находятся в (/usr/local/etc/mono/2.0/machine.config).Я просто скопировал материал из моего файла Windows .NET machine.config в мой моно, и это сработало.

<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.3.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />

...