Содержание

SQLines Data — настройка и устранение неполадок подключения к MySQL

Если вы собираетесь подключиться к базе данных localhost MySQL, вам не нужно настраивать какие-либо дополнительные библиотеки для использования инструмента данных SQLines, поскольку они поставляются с сервером MySQL.

Если вам необходимо подключиться к удаленной базе данных MySQL, в вашей системе должен быть установлен MySQL C API libmysqlclient .

Перед загрузкой проверьте, есть ли у вас библиотеки MySQL:

  • Linux:

    • /usr/lib/mysql/libmysqlclient.so

    • /usr/lib64/mysql/libmysqlclient.so

  • Windows: (буква диска и версия могут отличаться)

    • C:\Program Files\MySQL\MySQL Server 8.0\lib\libmysql.dll

    • C:\Program Files\MySQL\MySQL Server 5.7\lib\libmysql.dll

    • C:\Program Files\MySQL\MySQL Connector C 6.

      1\lib\libmysql.dll

Если клиент MySQL недоступен, перейдите на страницу загрузки MySQL https://dev.mysql.com/downloads/connector/ и загрузите MySQL Connector/C или C API (libmysqlclient) .

Загрузите последнюю версию MySQL Connector/C, например, mysql-connector-c-6.1.9-linux-glibc2.5-x86_64.tar.gz , и извлеките файлы:

 tar -xvzf mysql-connector-c-6.1.9-linux-glibc2.5-x86_64.tar.gz 

Вы можете найти библиотеку libmysqlclient.so в каталоге lib . Перед запуском команды sqldata добавьте расположение библиотеки MySQL в LD_LIBRARY_PATH :

 экспорт LD_LIBRARY_PATH=$LD_LIBRARY_PATH:
/lib

Альтернативный способ установки библиотек MySQL — запустить:

 ням установить mysql-devel 

Если ваш файл .so заканчивается версией библиотеки, например, libmysqlclient.so.16 затем создайте символическую ссылку, чтобы инструмент данных SQLines мог загрузить необходимую библиотеку:

cd /lib
ln -s libmysqlclient. so.16 libmysqlclient.so
 

При подключении к базе данных MySQL вы можете получить следующую ошибку: «Требуется SSL-соединение. Укажите параметры SSL и повторите попытку»

Используйте параметры соединения SSL в sqldata.cfg или в командной строке:

  • -mysql_ssl_mode — режим подключения SSL (опция MySQL –ssl-mode), возможные значения: DISABLED, PREFERRED (по умолчанию), REQUIRED, VERIFY_CA и VERIFY_IDENTITY

  • -mysql_ssl_key — Файл закрытого ключа SSL (опция —ssl-key MySQL), абсолютный путь к файлу

  • -mysql_ssl_cert — файл сертификата SSL (опция —ssl-cert MySQL), абсолютный путь к файлу в формате PEM

  • -mysql_ssl_ca — файл SSL CA (опция —ssl-ca MySQL CLI), абсолютный путь к файлу в формате PEM

Когда вы нажимаете «Проверить соединение», вы получаете следующую ошибку:

Возможные причины:

  • MySQL C API не установлен. Загрузите и установите клиент MySQL C API по адресу http://dev.mysql.com/downloads/connector/

    .
  • MySQL C API установлен, но инструмент данных SQLines не может найти libmysql.dll по какой-то причине. Добавьте каталог, в котором находится libmysql.dll (например, C:\Program Files\MySQL\MySQL Connector C 6.1\lib ) в переменную среды PATH.

Чтобы установить переменную PATH в Windows, щелкните правой кнопкой мыши значок «Компьютер», выберите «Свойства», щелкните «Дополнительные параметры системы». Затем выберите вкладку «Дополнительно» и нажмите кнопку «Переменные среды». Перейдите к системным переменным, найдите и добавьте путь.

Примечание . После изменения переменной среды PATH необходимо перезапустить инструмент SQLines Data.

Вы также можете отредактировать файл конфигурации sqldata.cfg и установить параметр -mysql_lib .

Чтобы устранить эту проблему, установите переменную среды LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN=1 .

Для этого щелкните правой кнопкой мыши значок «Компьютер», выберите «Свойства», щелкните «Дополнительные параметры системы». Затем выберите вкладку «Дополнительно» и нажмите кнопку «Переменные среды». Перейдите в «Системные переменные» и добавьте переменную.

Примечание . Вы должны перезапустить инструмент данных SQLines после добавления переменной среды.

Свяжитесь с нами по адресу [email protected], если у вас все еще есть проблемы с подключением.

Строки подключения MySQL — ConnectionStrings.com

Стандарт

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

Указание порта TCP

Сервер=myServerAddress;Порт=1234;База данных=myDataBase;Uid=myUsername;Pwd=myPassword;

Несколько серверов

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

Сервер = адрес_сервера1, адрес_сервера2, адрес_сервера3; База данных = моя база данных; Uid = мое имя пользователя; Pwd = мой пароль;

Использование шифрования (старое)

Активирует шифрование SSL для всех данных, пересылаемых между клиентом и сервером. На сервере должен быть установлен сертификат.

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Encrypt=true;

Использование шифрования (новое)

Использовать SSL, если сервер его поддерживает, но разрешать подключение во всех случаях

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;SslMode=Preferred;

Принудительное шифрование

Всегда используйте SSL. Запретить подключение, если сервер не поддерживает SSL.

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;SslMode=Required;

SSL с файловым сертификатом

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;SSL Mode=Required;CertificateFile=C:\folder\client.
pfx;CertificatePassword=pass;

SSL с личным сертификатом на основе магазина

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;SSL Mode=Required;Certificate Store Location=CurrentUser;

SSL с личным сертификатом на основе отпечатка пальца

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;SSL Mode=Required;Certificate Store Location=CurrentUser;Certificate Thumbprint=479436009a40f3017a145cf8479e7694d7aadef0;

Запретить партии

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;AllowBatch=False;

Разрешить пользовательские переменные

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;AllowUserVariables=True;

Неверный DateTime’s 1

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;AllowZeroDateTime=True;

Неверный DateTime’s 2

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;ConvertZeroDateTime=True;

Отключить участие в транзакции

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

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;AutoEnlist=False;

Пропустить проверку параметров для сохраненных подпрограмм

По умолчанию параметры хранимых подпрограмм (хранимые процедуры) проверяются на сервере

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;CheckParameters=False;

Пропустить сопоставление типа параметра и порядка для хранимых процедур

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;UseProcedureBodies=False;

Использовать кэширование таблиц

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;tablecache=true;DefaultTableCacheAge=30;

Подсчет измененных строк вместо найденных строк

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;UseAffectedRows=True;

Сжать сетевую связь между клиентом и сервером

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;UseCompression=True;

Журнал неэффективных операций с базой данных

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;UseUsageAdvisor=True;

Включить счетчики производительности

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;UsePerformanceMonitor=True;

Пул соединений

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

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Pooling=True;

Размер пула соединений

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;MinimumPoolSize=10;maximumpoolsize=50;

Отключить пул соединений

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Pooling=False;

Сброс состояния подключения при получении из пула

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;ConnectionReset=True;

Повторное использование соединений в пуле

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

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;ConnectionLifeTime=300;

Не обновлять параметры сервера для соединений в пуле

Соединение может быть долгоживущим в пуле, однако настройки сервера соединений обновляются (команда SHOW VARIABLES) каждый раз, когда возвращаются в пул. Это позволяет клиенту использовать объект подключения в актуальном состоянии с правильными настройками сервера. Однако это приводит к двустороннему обходу, и для оптимизации производительности пула это поведение можно отключить.

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;CacheServerProperties=True;

Использовать проверку подлинности Windows

Сервер=myServerAddress;База данных=myDataBase;IntegratedSecurity=yes;Uid=auth_windows;

Сохранение активности TCP-сокетов

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Keepalive=10;

Использовать ДВОИЧНЫЕ (16) идентификаторы GUID

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;OldGuids=True;

Отключить кэш хранимых процедур

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;ProcedureCacheSize=0;

Разрешить квадратные скобки вокруг символов (вместо обратных кавычек)

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;sqlservermode=True;

Указание времени ожидания команды по умолчанию

Используйте этот параметр, чтобы указать время ожидания команды по умолчанию для соединения. Обратите внимание, что свойство в строке подключения не заменяет индивидуальное свойство тайм-аута команды в отдельном объекте команды.

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;тайм-аут команды по умолчанию=20;

Указание времени ожидания попытки подключения

Используйте этот параметр, чтобы указать время в секундах ожидания соединения с сервером, прежде чем прервать попытку и получить сообщение об ошибке.

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Время ожидания подключения=5;

Деактивация подготовленных операторов

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

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Игнорировать Подготовка=true;

Указание сетевого протокола

Используйте этот параметр, чтобы указать, какой сетевой протокол использовать для подключения.

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Protocol=socket;

Протокол общей памяти

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Protocol=memory;Shared Memory Name=MYSQL;

Протокол именованных каналов

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Protocol=pipe;PipeName=mypipename;

Альтернатива именованным трубам

Сервер=myServerAddress;Порт=-1;База данных=myDataBase;Uid=myUsername;Pwd=myPassword;

Соединение сокета Unix

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;Protocol=memory;Shared Memory Name=MYSQL;

Указание набора символов

Используйте этот параметр, чтобы указать, какой набор символов использовать для кодирования запросов, отправляемых на сервер.

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;CharSet=utf8; Проблемы с подключением ?

Получить ответ на форуме вопросов и ответов MySQL

Стандарт

Location=myServerAddress;Data Source=myDataBase;User ID=myUsername;Password=myPassword;Port=3306;Extended Properties="""";

Стандарт

Host=myServerAddress;UserName=myUsername;Password=myPassword;Database=myDataBase;

Стандарт

ID пользователя=root;Пароль=мойПароль;Хост=localhost;Порт=3306;База данных=myDataBase;Прямой=истина;Протокол=TCP;Сжатие=ложь;Пулинг=истина;Минимальный размер пула=0;Максимальный размер пула=100; Время жизни соединения=0;

Стандарт

Provider=MySQLProv;Источник данных=mydb;Идентификатор пользователя=myUsername;Пароль=myPassword;

Стандарт

Источник данных = адрес моего сервера; база данных = моя база данных; идентификатор пользователя = мое имя пользователя; пароль = мой пароль; ведение журнала команд = ложь;

Использовать поставщик OLE DB из .

NET Provider=имя любого поставщика oledb;OledbKey1=someValue;OledbKey2=someValue;

Unicode-версия драйвера

Драйвер = {Драйвер MySQL ODBC 5.2 UNICODE}; Сервер = локальный хост; База данных = моя база данных; Пользователь = мое имя пользователя; Пароль = мой пароль; Параметр = 3;

Локальная база данных

Driver = {MySQL ODBC 5.2 ANSI Driver}; Server = localhost; Database = myDataBase; User = myUsername; Password = myPassword; Option = 3;

На 64-битной машине

Похоже, нам нужно указать MSDASQL, чтобы (32-разрядный) драйвер ODBC работал на 64-разрядных машинах.

Provider=MSDASQL;Driver={MySQL ODBC 5.2 ANSI Driver};Server=localhost;Database=myDataBase;User=myUsername;Password=myPassword;Option=3;

Удаленная база данных

Driver = {MySQL ODBC 5.2 ANSI Driver}; Server = myServerAddress; Database = myDataBase; User = myUsername; Password = myPassword; Option = 3;

Указание порта TCP/IP

Driver = {MySQL ODBC 5. 2 ANSI Driver}; Server = myServerAddress; Port = 3306; Database = myDataBase; User = myUsername; Password = myPassword; Option = 3;

Указание набора символов

Driver = {MySQL ODBC 5.2 ANSI Driver}; Server = myServerAddress; charset = UTF8; Database = myDataBase; User = myUsername; Password = myPassword; Option = 3;

Указание розетки

Указывает файл сокета Unix или именованный канал Windows для подключения. Используется только для локальных клиентских подключений.

Driver={MySQL ODBC 5.2 ANSI Driver};Server=myServerAddress;Database=myDataBase;User=myUsername;Password=myPassword;Socket=MySQL;Option=3;

Использование SSL

Driver={MySQL ODBC 5.2 ANSI Driver};Server=myServerAddress;Database=myDataBase;User=myUsername;Password=myPassword;sslca=c:\cacert.pem;sslcert=c:\client-cert.pem;sslkey=c :\client-key.pem;sslverify=1;
Опция=3;

Локальная база данных

Driver={Драйвер MySQL ODBC 5. 1};Server=localhost;Database=myDataBase;User=myUsername;Password=myPassword;Option=3;

На 64-битной машине

Похоже, нам нужно указать MSDASQL, чтобы (32-разрядный) драйвер ODBC работал на 64-разрядных машинах.

Provider=MSDASQL;Driver={MySQL ODBC 5.1 Driver};Server=localhost;Database=myDataBase;User=myUsername;Password=myPassword;Option=3;

64-битная версия драйвера

Обратите внимание на букву «w» в имени драйвера.

Driver={MySQL ODBC 5.2w Driver};Server=localhost;Database=myDataBase;User=myUsername;Password=myPassword;Option=3;

Версия 5.2.5 новое имя

MySQL ODBC Connector версии 5.2.5 и выше регистрируется как «Драйвер MySQL ODBC 5.2 Unicode» и «Драйвер MySQL ODBC 5.2 ANSI».

Драйвер = {Драйвер MySQL ODBC 5.2 ANSI}; Сервер = локальный хост; База данных = myDataBase; Пользователь=myUsername;Пароль=myPassword;Option=3;

Удаленная база данных

Driver={Драйвер MySQL ODBC 5. 1};Server=myServerAddress;Database=myDataBase;User=myUsername;Password=myPassword;Option=3;

Указание порта TCP/IP

Driver={MySQL ODBC 5.1 Driver};Server=myServerAddress;Port=3306;Database=myDataBase;User=myUsername;Password=myPassword;Option=3;

Указание набора символов

Driver={MySQL ODBC 5.1 Driver};Server=myServerAddress;charset=UTF8;Database=myDataBase;User=myUsername;Password=myPassword;Option=3;

Указание розетки

Указывает файл сокета Unix или именованный канал Windows для подключения. Используется только для локальных клиентских подключений.

Driver={Драйвер MySQL ODBC 5.1};Server=myServerAddress;Database=myDataBase;User=myUsername;Password=myPassword;Socket=MySQL;Option=3;

Использование SSL

Driver={Драйвер MySQL ODBC 5.1};Server=myServerAddress;Database=myDataBase;User=myUsername;Password=myPassword;sslca=c:\cacert.pem;sslcert=c:\client-cert. pem;sslkey=c: \client-key.pem;sslverify=1;
Опция=3;

Локальная база данных

Driver={Драйвер MySQL ODBC 3.51};Server=localhost;Database=myDataBase;User=myUsername;Password=myPassword;Option=3;

Удаленная база данных

Driver={Драйвер MySQL ODBC 3.51};Server=myServerAddress;Database=myDataBase;User=myUsername;Password=myPassword;Option=3;

Указание порта TCP/IP

Driver={Драйвер MySQL ODBC 3.51};Server=myServerAddress;Port=3306;Database=myDataBase;User=myUsername;Password=myPassword;Option=3;

Указание набора символов

Driver={Драйвер MySQL ODBC 3.51};Server=myServerAddress;charset=UTF8;Database=myDataBase;User=myUsername;Password=myPassword;Option=3;

Указание розетки

Указывает файл сокета Unix или именованный канал Windows для подключения. Используется только для локальных клиентских подключений.

Driver={Драйвер MySQL ODBC 3.51};Server=myServerAddress;Database=myDataBase;User=myUsername;Password=myPassword;Socket=MySQL;Option=3;

Использование SSL

Driver={MySQL ODBC 3.51 Driver};Server=myServerAddress;Database=myDataBase;User=myUsername;Password=myPassword;sslca=c:\cacert.pem;sslcert=c:\client-cert.pem;sslkey=c: \client-key.pem;sslverify=1;
Опция=3;

Локальная база данных

Driver={mySQL};Server=localhost;Option=16834;Database=myDataBase;

Удаленная база данных

Driver={mySQL};Server=myServerAddress;Option=131072;Stmt=;Database=myDataBase;User=myUsername;Password=myPassword;

Указание порта TCP/IP

Driver={mySQL};Server=myServerAddress;Port=3306;Option=131072;Stmt=;Database=myDataBase;User=myUsername;Password=myPassword;

Используйте драйвер ODBC из .