扣子(coze)接入mysql需确保远程访问开通、账号权限正确、网络连通:修改bind-address为0.0.0.0,授权用户@'%'并flush privileges,开放3306端口及安全组,填写公网ip、库名、账号密码后测试连接成功方可使用。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在扣子(Coze)平台中接入外部MySQL数据库,是实现Bot数据持久化、动态内容生成或用户行为分析的关键一步。你需要提供可公网访问的MySQL服务地址、具备远程连接权限的账号,且该账号必须拥有目标数据库的读写权限。本地部署的MySQL默认禁止远程连接,直接填localhost或127.0.0.1必然失败。
确认MySQL服务已开放远程访问
登录MySQL服务器所在机器,用root账号执行:mysql -u root -p → 输入密码进入命令行。
执行SELECT host, user FROM mysql.user WHERE user = 'your_username';,检查返回结果中是否存在%或具体IP(如192.168.1.100),而非仅localhost。若只有localhost,说明该账号无法从外部连接。
执行GRANT ALL PRIVILEGES ON your_db_name.* TO 'your_username'@'%' IDENTIFIED BY 'your_password';,然后运行FLUSH PRIVILEGES;使权限生效。这一步必须做,否则扣子发起连接时会提示Access denied。
检查MySQL配置文件my.cnf或mysqld.cnf,确认bind-address未被设为127.0.0.1。如果是,改为0.0.0.0或注释掉该行。
重启MySQL服务:sudo systemctl restart mysql(Ubuntu)或net stop mysql && net start mysql(Windows)。
获取MySQL连接参数并填写到扣子平台
打开Coze Bot编辑页 → 左侧导航栏点击「数据源」→ 右上角「+ 添加数据源」→ 选择「MySQL」。
MySQL 9.6.0是面向Linux平台的2026年创新版本,核心架构迎来重大革新。其将外键约束与级联操作从InnoDB引擎层上移至SQL层,确保所有数据变更均被完整记录至Binlog,彻底解决了CDC(变更数据捕获)与主从复制中的数据不一致难题。此外,该版本引入container_aware启动选项以原生适配容器环境,并对审计日志进行了组件化重构,为追求极致数据一致性与云原生体验的开发者提供了全新选择。
填写以下字段:
【Host】填服务器公网IP或域名,不是localhost;【Port】默认3306,若修改过需同步填写;【Database】填已有数据库名(不能填不存在的库名,扣子不会自动创建);【Username】和【Password】填上一步授权的账号凭证。
勾选「SSL连接」:若你的MySQL启用了强制SSL(如云厂商RDS默认开启),必须勾选并上传CA证书;否则留空即可。不匹配会导致连接超时或握手失败。
点击「测试连接」——成功后显示绿色对勾,方可保存。
验证SQL查询是否可用
在Bot工作流中添加「SQL查询」插件节点,输入简单语句如SELECT 1;,运行调试。
若报错Access denied for user,说明账号权限不足或密码错误;报错Can't connect to MySQL server,大概率是防火墙未放行3306端口或云服务器安全组未配置入站规则。
Linux服务器执行sudo ufw status查看防火墙状态,如启用则运行sudo ufw allow 3306;阿里云/腾讯云控制台中,进入「安全组」→ 编辑入站规则 → 添加端口3306,协议TCP,授权对象0.0.0.0/0(或限制为Coze出口IP段更安全)。










