MySQL报错1055解决办法

MySQL报错1055翻译为“无法给包含一个非聚合的列进行分组,这个功能不再依赖分组,且与新的规则不兼容sql_mode=only_full_group_by”

此时将select字段全部修改为聚合函数即可。但这不满足很多时候的需求,因此可以修改配置文件。

第一步:查看现在的规则

select @@sql_mode;

发现里面有only_full_group_by。

第二步:找到配置文件,修改sql_mode

①电脑搜索服务,找到MySQL,鼠标右键查看属性 

②找到默认配置文件路径

③在文件资源管理器输入路径,找到配置文件

④建议以管理员方式打开记事本,在记事本中文件--打开--输入路径--右下角选择全部文件,选中my.ini这个配置文件,打开。此时可以编辑配置文件了。

 

 ⑤Ctrl+F快捷键查找sql_mode,如果没有,就查找sql或者mode一个一个找,可能被换行书写了,注意眼睛仔细找。

 ⑥删除only_full_group_by,保存。

三、重启数据库服务

 四、再次执行select @@sql_mode;此时已经没有only_full_group_by

 

 

### 错误分析 当遇到 `ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061 "Unknown error")` 的情况时,通常意味着客户端无法建立到MySQL服务器的TCP/IP连接[^1]。 ### 可能原因及解决方案 #### 原因一:MySQL服务未启动 如果XAMPP安装完成后并未正确启动MySQL服务,则会出现此错误。确保MySQL服务已成功启动并运行正常。 #### 方案验证: 尝试通过命令行工具或其他方式确认MySQL进程是否存在以及监听状态: ```bash netstat -an | findstr 3306 ``` 上述命令用于Windows环境,在Linux下可替换为`ss -tulnp | grep 3306`来查看是否有程序正在监听3306端口(默认情况下MySQL使用的端口号)。如果没有输出结果则表示MySQL可能尚未开启或配置了其他端口。 #### 原因二:防火墙阻止连接请求 本地计算机上的防火墙可能会拦截来自应用程序对于MySQL数据库的服务请求。检查操作系统自带的安全防护软件设置,允许MySQL的相关流量通行[^4]。 #### 配置调整建议: 编辑my.ini/my.cnf文件中的bind-address参数,将其设为本机IP地址而非仅限于127.0.0.1(即localhost),从而使得外部也能访问该实例;不过出于安全考虑一般不推荐这样做除非确实有远程管理需求。 #### 原因三:Node.js应用层面上的问题 考虑到使用基于Node.js的应用作为客户端去链接MySQL的情况,需注意版本兼容性和驱动加载等问题。比如Nacos项目里提到自v1.3起支持MySQL8+,因此应当按照最新文档指引来进行适配工作而不是沿用旧版做法[^3]。 针对Node.js代码片段而言,可以先简化测试逻辑排除业务复杂度干扰因素: ```javascript const mysql = require('mysql'); let conn = mysql.createConnection({ host : '127.0.0.1', port : 3306, user : 'root', password : '', }); conn.connect((err)=>{ if(err){ console.error("Error connecting:", err.stack); return; } console.log("Connected as id "+conn.threadId); // 执行简单查询操作检验连通性 conn.query('SELECT DATABASE() AS current_db',function(error,results){ if(error){console.error(error);} else{console.log(results[0]);} conn.end(); }); }); ``` 以上脚本将帮助快速定位是否是因为编程接口调用不当所引起的异常状况。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值