创建Azure Cognitive Search MySQL索引器时connectionString未保存问题
解决Azure Cognitive Search索引器MySQL数据源连接字符串丢失及预览版注册问题
一、连接字符串不保存的修复方法
2020-06-30预览版API对MySQL灵活服务器数据源的连接字符串格式要求严格,门户复制的ADO.NET格式直接使用会出现异常,按以下方式调整:
- 移除所有单引号:比如把
Server='mysql-shared.mysql.database.azure.com'改成Server=mysql-shared.mysql.database.azure.com,UserID、Password字段的引号也一并删除 - 统一参数命名:使用
Uid和Pwd替代UserID和Password,预览版API对参数别名的兼容度较低 - 强制SSL连接:将
SslMode=Preferred修改为SslMode=Required,避免因SSL协商失败引发连接问题 - 正确格式示例:
Server=mysql-shared.mysql.database.azure.com;Port=3306;Database=mydb;Uid=admin;Pwd=admin;SslMode=Required;
创建数据源后,通过带includeConnectionString=true参数的API请求验证,确认连接字符串不再显示为null。若问题仍存在,检查请求体中connectionString字段是否正确嵌套,以及请求头是否携带api-version=2020-06-30-Preview。
二、预览版注册的必要性说明
该预览版的MySQL索引器功能必须完成注册才能正常使用,官方文档中提到的“反馈和获取帮助”仅为附加用途,核心的连接信息存储、数据源校验逻辑均依赖预览版注册权限:
- 未注册状态下,部分功能看似可用,但连接字符串这类敏感信息的存储逻辑会被限制,直接导致索引器无法连接MySQL
- 注册审批时长通常为1-3个工作日,若超过3天未收到审批通知,可通过Azure支持渠道查询进度
内容的提问来源于stack exchange,提问作者Gotem
相关产品推荐
相关产品推荐

