解决Mysql搭建成功后执行sql语句报错以及区分大小写问题
刚搭建完mysql 8.0以后会:
一、表区分大小写,
二、执行正确的sql语句成功且会报:[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and 。。。。错误。
版本是mysql 5.6或 myql 8.0以下方案解决 :
1.安装完后,执行sql语句没问题,但是会报错;在/etc/my.cnf数据库的配置文件加上下面这段配置然后重启mysql服务
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USE
2.mysql设置不区分表名的大小写
在/etc/my.cnf数据库的配置文件加上下面这段配置然后重启mysql服务
lower_case_table_names=1
3.mysql设置新建数据库默认编码为utf8
在/etc/my.cnf数据库的配置文件加上下面这段配置然后重启mysql服务 character_set_server=utf8
版本8.0及以上版本解决以上问题:
如果安装成功,并已经启动mysql (配置不区分表格大小写相对会麻烦一些,不要怕,跟着我的思路来准成功)
1、停止数据库服务
systemctl stop mysqld
2、备份数据(或者使用mv直接进行更改名称,直接改名后不用执行3、的操作,本人热衷于mv操作)
cp /var/lib/mysql/ /var/lib/mysql_sql/
3、删除 /var/lib/mysql/ 文件
rm -rf /var/lib/mysql/
4、在文件 my.cnf 中添加下面的一句话(编辑my.cnf文件 vi /etc/my.cnf):
lower_case_table_names=1 ( 说明 0:区分大小写,1:不区分大小写效果如下)
5、初始化密码设计
mysql --initialize
6、改变属主
chown -R mysql:mysql /var/lib/mysql/
7、启动mysql
systemctl start mysqld
8、进入Mysql (如果mysql报错没有发现《则需要执行本人安装mysql8.0博客的https://www.cnblogs.com/ganfd/p/15175458.html 6-10命令再次赋权设置》)
9、设置密码等级
mysql> set global validate_password.policy=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password.length=1;
Query OK, 0 rows affected (0.00 sec)
10、修改密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';(密码要记牢)
Query OK, 0 rows affected (0.00 sec)
11、远程控制要操作
### 授予远程连接权限
create user 'root'@'%' identified by '123123';
grant all on *.* to `root`@`%` WITH GRANT OPTION;
ALTER USER 'root'@'%' IDENTIFIED with mysql_native_password by '123123';
flush privileges;
解决安装成功mysql8.0执行正确sql语句报错问题:(依次执行下面语句,更改 sql_mode 值便能够 成功解决)
show variables like "sql_mode";
set sql_mode='';
set sql_mode='no_engine_substitution,strict_trans_tables';
解决Mysql搭建成功后执行sql语句报错以及区分大小写问题的更多相关文章
- mysql5.7执行sql语句报错:In aggregated query without GROUP BY, expression #1 of SELECT list contains nonagg
mysql5.7执行sql语句报错:In aggregated query without GROUP BY, expression #1 of SELECT list contains nonagg ...
- sql无效字符 执行sql语句报错解决方案
以为是sql中参数赋值有问题,但是将sql语句直接copy到PLSQL中执行,却没问题,纠结了好久,原来是 insert语句多了:唉,坑爹 http://www.jb51.net/article/32 ...
- SQL语句报错(一)
SQL语句报错(一) 1.具体报错如下: ORA-01861:文字格式字符串不匹配 01861. 00000 - "literal does not match format string& ...
- Python3安装Celery模块后执行Celery命令报错
1 Python3安装Celery模块后执行Celery命令报错 pip3 install celery # 安装正常,但是执行celery 命令的时候提示没有_ssl模块什么的 手动在Python解 ...
- mysql执行SQL语句时报错:[Err] 3 - Error writing file '/tmp/MYP0G1B8' (Errcode: 28 - No space left on device)
问题描述: 今天一同事在mysql中执行SQL语句的时候,报了/tmp空间不足的问题,报错如下: [SQL] SELECT f.prov as 字段1, MAX( CASE f.flag_name W ...
- cmd连接Oracle数据库成功后输入sql语句返回 2
解决办法 : sql语句后一定要跟分号 .
- MySQL导入SQL语句报错 : MySQL server has gone away (已解决)
MySQL server has gone away 解决的方法其实很简单,我相信也有很多人遇到了这个问题.比如DZ论坛,安装好服务器,但是清空缓存等操作数据库的动作,运行时间稍长就会出现 MySQL ...
- Mysql查看优化后的SQL 语句
EXPLAIN EXTENDED 1先执行 EXPLAIN EXTENDED 2 show warnings: EXPLAIN EXTENDED SELECT * FROM `receivable ...
- kettle用mysql创建资源库执行sql代码报错
一.原因: sql语句里边使用 'Y' 'N' 给boolean类型的赋值产生sql失败 二.解决方法:将insert语句中‘Y’或‘N’ 改成TRUE或FALSE即可,共两张表3个地方 ...
随机推荐
- mysql8.0.13本地安装忘记密码解决办法
之前一直用图形化界面,加上考研期间也没动,竟然把我的数据库密码给忘了,无地自容....... 找了找教程,问题如下: MySQL从低版本向高版本迭代变化的过程,越来越严谨的安全性是其一大特点之一,在版 ...
- Input框搜索关键字高亮显示
ruleTitle(text, val) { if (!val) return text; const result = text.replace( new RegExp(val, "g&q ...
- 在ios里面返回上一级报错问题
$("#backPrev").attr("href","javascript:void(0);").click(function(){ ...
- LC-349
Given two integer arrays nums1 and nums2, return an array of their intersection. Each element in the ...
- 为vscode开发一款svn右键菜单扩展
在我平时的工作中会经常用到svn blame这个命令,但是vscode现有的svn扩展普遍都不能自定义右键菜单. 所以我产生一个想法:自己动手为vscode开发一款svn的扩展来定制右键菜单,本文记录 ...
- golang-grpc
目录 1. 什么是grpc和protobuf 1.1 grpc 1.2 protobuf 2.go下grpc 2.1官网下载protobuf工具 2.2 下载go的依赖包 2.3 编写proto文件 ...
- OpenHarmony 3.1 Beta 版本关键特性解析——ArkUI canvas组件
(以下内容来自开发者分享,不代表 OpenHarmony 项目群工作委员会观点) 江英杰 华为技术有限公司 canvas 是 ArkUI 开发框架里的画布组件,常用于自定义绘制图形.因为其轻量.灵活. ...
- canvas 隐藏 踩坑
当我在把canvas绘制完成时,要把canvas隐藏起来.试了display 和 opacity 都不行. 然后我用了 position: absolute; left:1000px; top:0; ...
- 有关JavaScript事件循环的若干疑问探究
起因 即使我完全没有系统学习过JavaScript的事件循环机制,在经过一定时间的经验积累后,也听过一些诸如宏任务和微任务.JavaScript是单线程的.Ajax和Promise是一种异步操作.se ...
- 比 Navicat 还要好用、功能更强大的工具!
DBeaver 是一个基于 Java 开发,免费开源的通用数据库管理和开发工具,使用非常友好的 ASL 协议.可以通过官方网站或者 Github 进行下载. 由于 DBeaver 基于 Java 开发 ...