文档首页
MySQL 9.0 C API 开发者指南
下载本手册
PDF (US Ltr) - 1.4Mb
PDF (A4) - 1.4Mb


MySQL 9.0 C API 开发者指南  /  ...  /  mysql_reset_server_public_key()

5.4.66 mysql_reset_server_public_key()

void
mysql_reset_server_public_key(void)

描述

从客户端库中清除服务器基于 RSA 密钥对的密码交换所需的任何缓存公钥副本。当服务器在客户端程序调用 mysql_options() 并使用 MYSQL_SERVER_PUBLIC_KEY 选项指定 RSA 公钥后使用不同的 RSA 密钥对重新启动时,可能需要这样做。在这种情况下,由于密钥不匹配,可能会发生连接失败。要解决此问题,客户端可以使用以下任一方法:

  • 客户端可以调用 mysql_reset_server_public_key() 清除缓存的密钥并重试,前提是客户端上的公钥文件已替换为包含新公钥的文件。

  • 客户端可以调用 mysql_reset_server_public_key() 清除缓存的密钥,然后调用 mysql_options() 并使用 MYSQL_OPT_GET_SERVER_PUBLIC_KEY 选项(而不是 MYSQL_SERVER_PUBLIC_KEY)从服务器请求所需的公钥。不要同时使用 MYSQL_OPT_GET_SERVER_PUBLIC_KEYMYSQL_SERVER_PUBLIC_KEY,因为在这种情况下,MYSQL_SERVER_PUBLIC_KEY 优先。

返回值

无。

错误

无。