在 MariaDB 上禁用严格模式

Disable strict mode on MariaDB

当我在 phpmyadmin 运行 这个 sql

SELECT @@SQL_MODE, @@GLOBAL.SQL_MODE; 

显示

@@SQL_MODE STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 

@@GLOBAL.SQL_MODE STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 

如何使用 phpmydmin 在 MariaDB 上禁用严格模式?

通过 SSH 编辑

/etc/my.cnf文件

添加

sql_mode=NO_ENGINE_SUBSTITUTION

重新启动 MariaDB

它会解决问题

*edit - 如果您在重新启动 msyql 服务时遇到错误,请尝试在 my.cnf

中添加上面的“[mysqld]”

这对我有用:

root@MaRs:/etc/mysql# cat my.cnf|grep -v \#

[client-server]

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mariadb.conf.d/

[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION
root@MaRs:/etc/mysql# 

MariaDB [(none)]> SELECT @@SQL_MODE, @@GLOBAL.SQL_MODE; 
+------------------------+------------------------+
| @@SQL_MODE             | @@GLOBAL.SQL_MODE      |
+------------------------+------------------------+
| NO_ENGINE_SUBSTITUTION | NO_ENGINE_SUBSTITUTION |
+------------------------+------------------------+
1 row in set (0.000 sec)