从 MySQL 客户端连接
您可以使用命令行 MySQL 客户端,连接 MongoDB Connector for BI。
无需进行身份验证或 TLS/SSL 即可从 MySQL 进行连接
要连接到侦听MySQL默认端口3307
的 mongosqld
实例,请运行以下命令:
通过身份验证从 MySQL 连接
按照 C 身份验证插件中的说明,安装 C 身份验证插件。
重要
C 身份验证插件是针对 MySQL 5.7.X 社区版(64 位)开发的,并使用 MySQL 5.7.X 社区版和最新版本的 MongoDB Connector for BI 进行了测试。该插件与 MySQL 服务器或 Connector/ODBC 驱动程序版本 8 及更高版本不兼容。
以下示例使用 C 身份验证插件,以用户 reportsUser
的身份连接到侦听端口 3307
的 mongosqld
实例。输入命令后,MySQL Shell 将提示输入密码。
32 位 Windows
"C:\Program Files (x86)\MySQL\MySQL Server 5.7\bin\mysql.exe" ^ --user='reportsUser?source=admin' ^ --default-auth=mongosql_auth -p
64 位 Windows
"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysql.exe" ^ --user='reportsUser?source=admin' ^ --default-auth=mongosql_auth -p
注意
此示例假定身份验证插件文件 mongosql_auth.so
位于默认的 MySQL 插件文件夹:
平台 | 默认位置 |
---|---|
32 位 Windows | C:\Program Files (x86)\MySQL\MySQL Server 5.7\lib\plugin |
64 位 Windows | C:\Program Files\MySQL\MySQL Server 5.7\lib\plugin |
mysql --user='reportsUser?source=admin' --default-auth=mongosql_auth -p
注意
此示例假定身份验证插件文件mongosql_auth.so
位于默认MySQL插件文件夹中。 插件文件夹的位置因平台而异,但您可以通过运行以下命令来找到它:
mysql_config --plugindir
mysql_config.pl
只能在 macOS 和 Linux 主机上找到插件目录。
mysql --user='reportsUser?source=admin' --default-auth=mongosql_auth -p
注意
此示例假定身份验证插件文件mongosql_auth.so
位于默认MySQL插件文件夹中。 插件文件夹的位置因平台而异,但您可以通过运行以下命令来找到它:
mysql_config --plugindir
mysql_config.pl
只能在 macOS 和 Linux 主机上找到插件目录。
有关其他选项,请参阅 MySQL 命令。
使用身份验证和 TLS/SSL 从 MySQL 进行连接
重要
MySQL Community 的 发行版 使用 yaSSL SSL 库,用于加密连接。MySQLEnterprise 使用 OpenSSL 与适用于MongoDBconnector 的BI 兼容。使用 MySQL Enterprise 通过TLS / SSL连接 BI Connector。
要以 grace
用户身份使用身份验证机制 PLAIN
以及特定的 TLS/SSL CA 和 x.509 证书连接到侦听端口 3307
的 mongosqld
实例,请运行如下命令:
32 位 Windows
"C:\Program Files (x86)\MySQL\MySQL Server 5.7\bin\mysql.exe" ^ --enable-cleartext-plugin --protocol tcp --port 3307 ^ --user='grace?mechanism=PLAIN&source=$external' ^ --ssl-ca=X:\path_to_the_CAcert\ca.crt ^ --ssl-key=X:\path_to_my_certificate_key\mysql.key ^ --ssl-cert=X:\path_to_my_client_certificate\mysql.crt ^ -p
64 位 Windows
"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysql.exe" ^ --enable-cleartext-plugin --protocol tcp --port 3307 ^ --user='grace?mechanism=PLAIN&source=$external' ^ --ssl-ca=X:\path_to_the_CAcert\ca.crt ^ --ssl-key=X:\path_to_my_certificate_key\mysql.key ^ --ssl-cert=X:\path_to_my_client_certificate\mysql.crt ^ -p
mysql --enable-cleartext-plugin --protocol tcp --port 3307 \ --user='grace?mechanism=PLAIN&source=$external' \ --ssl-ca=/path_to_the_CAcert/ca.crt \ --ssl-key=/path_to_my_certificate_key/mysql.key \ --ssl-cert=/path_to_my_client_certificate/mysql.crt \ -p
mysql --enable-cleartext-plugin --protocol tcp --port 3307 \ --user='grace?mechanism=PLAIN&source=$external' \ --ssl-ca=/path_to_the_CAcert/ca.crt \ --ssl-key=/path_to_my_certificate_key/mysql.key \ --ssl-cert=/path_to_my_client_certificate/mysql.crt \ -p
如果使用 $external
身份验证源,请将用户名用单引号括起来,或使用反斜杠将 $
字符转义,防止 Shell 执行插值。
身份验证要求客户端以纯文本格式发送密码。 要以纯文本格式发送密码,请执行以下任一操作:
使用上例所示的
--enable-cleartext-plugin
选项,或者设置环境变量
LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN=1
。
有关其他选项,请参阅 MySQL 命令。
有关如何启用 MySQL 明文插件的更多详细信息,请参阅 MySQL 文档。