Примечания по разработке Qt+MySql: версия Qt5.9.3 msvc2017x64 компилирует драйвер версии MySql8.0.16, и демонстрационная версия подключается к тесту базы данных

Если статья является оригинальной, при перепечатке просьба указывать источник оригинальной статьи.Адрес
блога этой статьи: https://hpzwl.blog.csdn.net/article/details/130381428

Энциклопедия блога Red Fatty Network Technology: коллекция технологий разработки (включая практические технологии Qt, Raspberry Pi, 3D, OpenCV, OpenGL, ffmpeg, OSG, однокристальный микрокомпьютер, сочетание программного и аппаратного обеспечения и т. д.) постоянно обновляется...

Колонка разработки Qt: технология разработки сторонних библиотек


предисловие

  Скорректирована версия драйвера mysql msvc2015x32.Предыдущая версия драйвера mysql mingw32 была скомпилирована и протестирована.Некоторые трехсторонние библиотеки поддерживают по крайней мере vs2017, поэтому вы можете использовать только msvc2017x64, который основан на Qt5.9.3.Так что эта статья компилируется версия драйвера mysql msvc2017x64.Чтобы удовлетворить текущие специфические потребности, этот процесс немного трудоемок.Возможно, версия Qt ниже, чем Qt5.12, поэтому продолжайте делиться ею без оговорок.
  В этой статье в основном описан процесс компиляции драйвера Qt5.9.3 msvc2017x64 + mysql8.0.16.


связанный блог

  " Замечания по разработке Qt+MySql: версия mingw32 для Qt5.9.3 компилирует драйвер версии MySql8, и демонстрационная версия подключается к тесту базы данных " " Замечания
  по разработке Qt+MySql: версия Qt5.9.3 msvc2017x64 компилирует драйвер версии MySql8.0.16, и демонстрационная версия подключается к тесту базы данных "
  " Замечания по разработке MySql: создание службы базы данных MySql и импорт скрипта построения
  таблиц размерная карта, контроль ограничения времени, отладка параметров и т. д.) " Обмен
  случаями : строительная техника Qt, система вакуумной лазерной сварки, настройка программного продукта (ПЛК Siemens, база данных mysql, управление полномочиями пользователя, конфигурация интерфейса, настройка параметров, проигрыватель, двумерный значок) , rgv car, контроль сроков, отладка параметров и т. д.)


Среда компилятора

Qt5.9.3 msvc2017x64

  При установке не забудьте проверить исходный код

mysql-установщик-сообщество-8.0.16.0

  вставьте сюда описание изображения

скачать базу данных

  https://downloads.mysql.com/archives/community/
  вставьте сюда описание изображения


Скомпилируйте библиотеку драйверов mysql (Qt5.9.3+mysql8.0.16)

Шаг 1: Установите Qt5.9.3 и проверьте версию msvc2017x64.

  вставьте сюда описание изображения
  Другие процессы опущены.

Шаг 2. Загрузите 64-разрядный драйвер базы данных, чтобы запустить программу и распаковать ее.

  Загрузите файл пакета среды выполнения базы данных. (Примечание: она должна соответствовать версии, установленной на целевой машине).
  Адрес загрузки: https://dev.mysql.com/downloads/connector/cpp
  (см. " Вход в яму 1 " здесь)
  прямо пропустил загрузку, т.к. загруженная текущая компиляция имеет проблемы.
  База установлена ​​локально, напрямую через местный вверх:
  вставьте сюда описание изображения

Шаг 3: Откройте проект исходного кода mysql, поставляемый с qt.

  вставьте сюда описание изображения

  Открыть с помощью QtCreator
  вставьте сюда описание изображения

  Здесь нам нужно убрать тень, иначе будут другие ошибки, обратитесь к «Яме 1» и «Яме 2»:
  вставьте сюда описание изображения

  вставьте сюда описание изображения

  вставьте сюда описание изображения

Шаг 4: qmake и сборка

  вставьте сюда описание изображения

  вставьте сюда описание изображения

  (Если вы сообщаете об ошибке здесь, вернитесь и посмотрите на шаг 3 и войдите в яму один или два )
  вставьте сюда описание изображения

Шаг 5: Замените библиотеку mysql плагина

  вставьте сюда описание изображения

Шаг 6: Скопируйте libmysql.dll базы данных в каталог bin

  Скопируйте libmysql.dll из mysql lib в каталог bin msvc2017x64 в qt и принесите его при упаковке программного обеспечения.
  Вот прямое копирование libmysql.dll, соответствующего предыдущей библиотеке, в корзину и папку развертывания приложений qt:
  вставьте сюда описание изображения

  (PS: windeployqt не будет активно копироваться при упаковке и выпуске, его нужно копировать вручную)

Шаг 7: Скомпилируйте тест подключения приложения

  Переключите приложение с драйвера odbc на драйвер mysql для компиляции проекта базы данных:
  вставьте сюда описание изображения
  это потому, что mysql8 изменил метод шифрования.Если вы используете драйвер mysql напрямую, вам необходимо изменить метод шифрования.Метод модификации в основном применяется при развертывании базы данных. Вы можете войти в базу данных и выполнить следующие операции:
  вставьте сюда описание изображения

  Затем примените тест входа
  вставьте сюда описание изображения

  Если удаленный вход по-прежнему требуется, перейдите к шагам 8 и 9:

Шаг 8: Настройте учетную запись базы данных, чтобы разрешить удаленную работу (этот шаг является предыдущим тестовым шагом mingw32, поместите его здесь для удобства)

  Это связано с тем, что учетной записи не разрешен удаленный вход в систему, поэтому необходимо изменить конфигурацию пользователя базы данных, чтобы разрешить удаленный вход.
  Чтобы разрешить пользователю удаленный вход в систему, сначала используйте терминал управления mysql, чтобы ввести пароль для входа в систему, а затем выполните
:

use mysql;
select host,host from user;
update user set host = ‘%’ where user = ‘root’;
select host,host from user;

  В настоящее время это все еще не работает, вам необходимо принудительно обновить следующее

flush privileges;

  вставьте сюда описание изображения
  вставьте сюда описание изображения

  Тогда успех:
  вставьте сюда описание изображения
  На данный момент был скомпилирован драйвер подключения к базе данных Qt5.9.3 msvc2017x64 + mysql8.0.16.

Шаг 9: Подключитесь к инструменту удаленного управления базой данных (этот шаг является тестовым шагом mingw32 ранее, поместите его здесь для удобства)

  Используйте удаленные инструменты для проверки и поиска ошибки:
  вставьте сюда описание изображения
  это связано с тем, что mysql изменил правила шифрования паролей после версии 8.0. Текущее программное обеспечение для подключения клиента не поддерживает новый метод шифрования caching_sha2_password, добавленный Mysql8, поэтому необходимо изменить метод шифрования пользователя и измените его обратно на Старый метод аутентификации с шифрованием.
  Сначала войдите в командную строку mysql и выполните следующее, главным образом, чтобы заменить youPassword паролем учетной записи, который вы используете для удаленного входа в систему:

alter user 'root'@'%' identified by 'youPassword' password expire never;
alter user root identified with mysql_native_password by 'youPassword';
flush privileges;

  вставьте сюда описание изображения

  вставьте сюда описание изображения


в яму

Яма 1: ошибка компиляции не может быть открыта «Не удается открыть входной файл» D:\mysql-connector-c-6.1.11-winx64\lib.ob

вопрос

  Ошибка компиляции, не могу пройти
  вставьте сюда описание изображения

попробуй решить

  Многосторонний поиск, ориентированный на предоставленную версию библиотеки, тоже не работает.
  В этой версии я, наконец, попытался получить его прямо из папки установки mysql, и это прошло, но я не увидел файл, записанный в корне (позже я проверил путь, чтобы убедиться, что он не был сгенерирован в корневом каталоге ).
  Следующий процесс создания скриншота может означать:
  вставьте сюда описание изображения

  вставьте сюда описание изображения

  вставьте сюда описание изображения
  Затем удалите тень и добейтесь успеха:
  вставьте сюда описание изображения

решать

  Удалите shaodw и проверьте путь в " Enting the Pit 2 ".

Запись 2: нет вывода компиляции

вопрос

  Скомпилировал по предыдущему mingw32 не нашел выход

причина

  Есть несколько файлов конфигурации, поэтому создайте их все напрямую, чтобы увидеть сгенерированную папку.
  вставьте сюда описание изображения

  Оказалось, что это проблема пути.

решать

  Найдите соответствующий путь и сгенерируйте его.
  вставьте сюда описание изображения
  Совмещая 1 и 2, есть еще проблема с попыткой скачать компилятор vc версии библиотеки драйверов.На пробы, изучение и постепенное устранение различных проблем ушло почти полдня.


Если статья является оригинальной, при перепечатке просьба указывать источник оригинальной статьи.Адрес
блога этой статьи: https://hpzwl.blog.csdn.net/article/details/130381428

Supongo que te gusta

Origin blog.csdn.net/qq21497936/article/details/130381428
Recomendado
Clasificación