在linux系统上发布项目时,遇到点问题。安装的mysql默认配置和windows系统下有点不同。须要对配置文件进行修改下。html
linux下的mysql配置可能须要调整下:
配置sql_mode是由于默认配置的查询结果排序时报错。查资料是因为sql_mode默认配置引发的。
[mysqld]
sql_mode='STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
lower_case_table_names=1
修改操做命令:
//1.查看文件
cat /etc/my.cnf (mysql 5.7版本和以上版本 vi /etc/mysql/my.cnf )
//2.vi编辑配置文件
vi /etc/my.cnf
//3.进入命令状态
//4.输入a命令进入编辑状态
进入编辑状态后,添加以下配置内容
[mysqld]
sql_mode='STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
mysql
lower_case_table_names=1linux
//5.移动光标修改文件,把上面那段内容添加进去。sql
//6.按esc键退出编辑状态,进入命令状态。
//7.输入:wq 保存退出。
//8.输入 cat /etc/my.cnf 查看文件数据库
//9.修改配置文件后重启mysql服务windows
service mysql restart
spa
lower_case_table_names参数详解:
.net
其中 0:区分大小写,1:不区分大小写rest
MySQL在Windows下都不区分大小写。
htmMySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:
一、数据库名与表名是严格区分大小写的;
二、表的别名是严格区分大小写的;
三、列名与列的别名在全部的状况下均是忽略大小写的;
四、变量名也是严格区分大小写的;
参考资料:https://blog.csdn.net/da_keng/article/details/49945893
参考资料:https://www.cnblogs.com/jun1019/p/7073227.html