Инструмент SSL недоступен для рабочей среды MySQL.

Мне нужно установить SSL-соединение с моим веб-приложением PHP-PDO. У меня есть MySQL workbench 5.7, и я не знаю, как и с чего начать.

Я видел в Интернете разные сообщения, объясняющие, как это сделать с помощью mysqld и shell>, например 6.4.4 Настройка MySQL для использования безопасных соединений и 5.3.4 Мастер SSL (сертификаты) в руководстве.

Я изменил соединение на:

$conn = new PDO("mysql:host=$dbhost;dbname=$dbname",$dbuser,$dbpass, array(
    PDO::MYSQL_ATTR_SSL_KEY    =>'/etc/mysql/ssl/client-key.pem',
    PDO::MYSQL_ATTR_SSL_CERT=>'/etc/mysql/ssl/client-cert.pem',
    PDO::MYSQL_ATTR_SSL_CA    =>'/etc/mysql/ssl/ca-cert.pem'
    ));
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$conn->exec("SET CHARACTER SET utf8mb4");

Затем я перешел к рабочей среде MySQL и щелкнул База данных → Подключиться к базе данных → Вкладка SSL → Мастер SSL. Я проверил Use default Parameters, и у меня есть эта ошибка:

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

OpenSSL Win64 установлен в C:\OpenSSL-Win64.

В чем проблема и как ее исправить?


person alim1990    schedule 21.07.2017    source источник
comment
C:\OpenSSL-Win64\bin должен быть на пути. Это делает C:\OpenSSL-Win64\bin\openssl.exe доступным для программ, использующих имя команды (openssl.exe), а не полный путь (C:\OpenSSL-Win64\bin\openssl.exe). Или вам нужно сообщить рабочей среде местонахождение двоичного файла OpenSSL.   -  person jww    schedule 21.07.2017
comment
можете ли вы быть более конкретным или, по крайней мере, дать мне ссылку на оригинальный пост   -  person alim1990    schedule 21.07.2017
comment
что должно быть на пути. Где определить путь в mysql workbench. Я думаю, что в моем вопросе нет дублирования, потому что я не видел никакого вспомогательного ресурса по ссылке, упомянутой выше.   -  person alim1990    schedule 21.07.2017
comment
Попробуйте 'openssl' не распознается как внутренняя или внешняя команда. В Интернете есть вопросы и ответы о добавлении каталогов в %PATH% в Windows. Для этого вам не нужен пост Stack Overflow.   -  person jww    schedule 21.07.2017
comment
Я добавил путь к системным переменным и все та же ошибка. Переоткройте пост, пожалуйста   -  person alim1990    schedule 21.07.2017
comment
Это менее чем полезное утверждение: Я добавил путь к системным переменным и все та же ошибка... - Вы не сказали, какое значение вы добавили, вы не сказали, как вы его добавили, и вы не указали, перезагружались ли вы. Чтобы быть педантичным, %PATH% уже является системной переменной, поэтому вам не нужно было ее добавлять. Обновите свой вопрос, включив в него значение %PATH% (распечатайте его из командной строки и вставьте в вопрос) и укажите, что вы сделали, чтобы внести изменения в системные компоненты, которые могут зависеть от него.   -  person jww    schedule 21.07.2017


Ответы (1)


Для Windows

Сначала убедитесь, что openssl загружается, вот ссылки для загрузки.

Затем вам нужно добавить его в системные переменные среды. В строке поиска меню «Пуск» введите «Переменные среды» и нажмите «Изменить системные переменные среды».

Затем нажмите кнопку «Переменные среды».

Затем в ваших пользовательских или системных переменных найдите переменную Path и нажмите кнопку «Изменить».

Если вы использовали установщик openssl x64 и использовали путь по умолчанию, это будет C:\Program Files\OpenSSL-Win64\bin, если вы этого не сделали, найдите путь, содержащий openssl.exe. Скопируйте путь без openssl.exe.

Затем в окне «Редактировать переменную среды» нажмите кнопку «Создать», вставьте в нее этот путь и сохраните изменения.

Теперь все, что вам нужно сделать, это убедиться, что вы запускаете MySql Workbench от имени Администратора. Я предполагаю, что это то, что вы забыли сделать.

person Addio    schedule 06.08.2020