You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置MySQL Connector/Python X DevAPI连接选项及--local-infile参数

MySQL Connector/Python X DevAPI 连接选项设置指南

我来一步步帮你解决这两个关于MySQL X DevAPI连接配置的问题:

1. 如何为MySQL Connector/Python X DevAPI连接设置选项?

MySQL Connector/Python的X DevAPI提供了两种直观的方式来配置连接选项:

  • 配置字典方式:直接在mysqlx.get_session()中传入键值对组成的字典,每个键对应一个连接参数。
  • 连接URL方式:把所有参数编码到符合MySQL X协议的URL里,格式为mysqlx://[user[:password]@]host[:port][?option1=value1&option2=value2...]

常见可用选项示例

不管用哪种方式,你都可以设置这些常用参数:

  • host:数据库服务器地址
  • port:X DevAPI默认端口是33060
  • user/password:认证凭据
  • ssl-mode:SSL连接模式(比如REQUIRED强制SSL、DISABLED禁用SSL等)
  • connect-timeout:连接超时时间(单位秒)
  • local_infile:控制是否允许加载本地文件(对应你第二个问题的选项)

字典配置示例

import mysqlx
session = mysqlx.get_session({
    'host': 'localhost',
    'port': 33060,
    'user': 'root',
    'password': 'your_password',
    'ssl-mode': 'REQUIRED',
    'connect-timeout': 10
})

URL配置示例

import mysqlx
session = mysqlx.get_session("mysqlx://root:your_password@localhost:33060?ssl-mode=REQUIRED&connect-timeout=10")

2. 如何为mysqlx连接设置--local-infile[={0|1}]选项?

--local-infile是MySQL客户端用来控制LOAD DATA LOCAL INFILE语句是否能加载本地文件的开关,在X DevAPI中,你只需要在连接配置字典里添加local_infile参数并设为1(或True)就能启用它。

修改你的代码如下:

import mysqlx
# 连接到本地服务器并启用local_infile
session = mysqlx.get_session({
    'host': 'localhost',
    'port': 33060,
    'user': 'root',
    'password': '12345678',
    'local_infile': 1  # 设置为1启用,0禁用
})

额外注意事项

仅仅客户端开启还不够,你得确保MySQL服务器端的local_infile参数也已经启用:

  1. 登录MySQL服务器执行SHOW VARIABLES LIKE 'local_infile';查看当前值
  2. 如果值为OFF,需要在MySQL配置文件(my.cnf/my.ini)中添加local_infile=1,然后重启MySQL服务

这样客户端和服务器端都开启后,你就能正常使用LOAD DATA LOCAL INFILE相关功能了。

内容的提问来源于stack exchange,提问作者lucasahli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 19:28:11