Linux 通过RPM包安装 MySQL 8.0
Linux下卸载MySQL8.0版本
启动mysql服务:
service mysqld start
停止mysql服务:
service mysqld stop
重启mysql服务:
service mysqld restart
查看mysql服务:
service mysqld status
linux mysql8.0 this is incompatible with sql_mode=only_full_group_by
方式一:先执行select @@sql_mode,复制查询出来的值并将其中的NO_ZERO_IN_DATE,NO_ZERO_DATE删除,然后执行set sql_mode = '修改后的值’或者set session sql_mode=‘修改后的值’;,
例如:set session sql_mode=‘STRICT_TRANS_TABLES’;改为严格模式
只在当前会话中生效,关闭当前会话就不生效了。
set session sql_mode='STRICT_TRANS_TABLES';
方式二:先执行select @@global.sql_mode,复制查询出来的值并将其中的NO_ZERO_IN_DATE,NO_ZERO_DATE删除,然后执行set global sql_mode = ‘修改后的值’。
在当前服务中生效,重新MySQL服务后失效
set global sql_mode = 'STRICT_TRANS_TABLES'
方法三:(这个没有测试成功,总是报错)在mysql的安装目录下,或my.cnf文件(windows系统是my.ini文件),新增 sql_mode = ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,
添加my.cnf如下:
[mysqld]
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER
然后重启mysql。