mysql安装运行在linux环境遇到的问题总结

@[TOC]mysql安装运行在linux遇到的问题总结

1、外网navicat连接问题

配置防火墙端口:
启动防火墙:systemctl start firewalld
停止防火墙: systemctl stop firewalld
检查防火墙状态: systemctl status firewalld
在开启防火墙的状态下配置开放端口:
firewall-cmd --permanent --add-port=3306/tcp
重新加载使配置生效:firewall-cmd --reload

2、项目运行order by 和group by 问题

mysql不同的版本,配置文件不一样。在mysql5.7版本以上,mysql默认开启了only_full_group_by sql模式,在该模式下,我们使用groupby查询和orderby 查询会报错,报错信息如下:

报错信息在这里插入图片描述
解决办法:
1、命令修改:
通过命令直接关闭only_full_group_by sql模式,通过命令关闭只是暂时生效,mysql重启之后模式还是恢复到默认值。

2、修改配置文件:
修改mysql的配置文件my.cnf,永久关闭only_full_group_by 模式。
配置命令:sql_mode=‘STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION’

配置如图所示:
一定要在mysqld下面添加,然后保存重启数据库就可以了。
在这里插入图片描述

3、忽略mysql查询语法表名大小写问题

mysql默认情况下表名是大小写敏感的,需要通过配置来实现忽略表明的大小写。
1、命令修改:
动态配置,当前是临时生效的,MySQL重启之后就会失效,除非再次设置;
命令:set global lower_case_table_names = 1;

2、配置文件修改:
修改mysql的配置文件my.cnf,在mysqld 下面添加以下命令:
lower_case_table_names = 1
然后保存重启MySQL服务就可以了。
当前值设置为0,表名大小写敏感(默认);
当前值设置为1,将表名存储为小写,并在比较表名时不区分大小写;
当前值设置为2,将表名存储为小写,并在比较表名时区分大小写(仅在非windows环境下使用)。

配置如图所示:
在这里插入图片描述

以上是项目运行中遇到的一些问题总结,仅当学习交流,后期持续更新!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值