我正在尝试通过引用thisssl
来进行设置。
我能够完成前 3 个步骤,但第 4 个步骤有问题,如下所示:mysql
GRANT ALL PRIVILEGES ON *.* TO 'ssluser'@'localhost' IDENTIFIED BY 'ssluser' REQUIRE SSL;
FLUSH PRIVILEGES;
然后我重新启动mysql服务器。
在我尝试运行时执行此语句后mysql -ussluser -pssluser -P3306 --ssl-key="C:\Program Files\MySQL\MySQL Server 5.5\certs\ca-cert.pem"
,
它显示以下错误:用户'ssluser'@'localhost'的访问被拒绝(使用密码:YES)
我在这里使用3306,因为它是我的默认端口。
当我已经执行了GRANT语句时,它怎么能说拒绝访问。
注意
我在使用GRANT语句
mysql -ussluser -pssluser
之前执行了并且我能够连接到.REQUIRE SSL
mysql
如果我尝试
SHOW GRANTS FOR 'ssluser'@'localhost';
我得到GRANT ALL PRIVILEGES ON *.* TO \'ssluser\'@\'localhost\' IDENTIFIED BY PASSWORD \'*C56A6573BEE146CB8243543295FD80ADCE588EFF\' REQUIRE SSL WITH GRANT OPTION
在执行GRANT语句之前,我能够通过ssluser连接到工作台。但现在它拒绝访问错误。
当我使用
show global variables like 'have_%ssl';
我得到have_openssl 已禁用 have_ssl 已禁用
当我使用它时,
SHOW STATUS LIKE 'Ssl_cipher';
我得到ssl_cipher _________
我已经创建了所有服务器和客户端证书并将它们放在根目录
certs
内的目录中。mysql server
我从几天开始尝试,但一无所获。任何帮助表示赞赏。
我是第一次这样做。谁能指导我完成详细的程序来做到这一点?