在 MariaDB 上禁用严格模式

Dr.*_*ezo 5 mode strict mariadb disable

当我在 phpmyadmin 中运行这个 sql 时

SELECT @@SQL_MODE, @@GLOBAL.SQL_MODE; 
Run Code Online (Sandbox Code Playgroud)

表明

@@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 
Run Code Online (Sandbox Code Playgroud)

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

Dr.*_*ezo 9

通过 SSH 编辑

/etc/my.cnf 文件

添加

sql_mode=NO_ENGINE_SUBSTITUTION
Run Code Online (Sandbox Code Playgroud)

重启 MariaDB

它会解决这个问题

*edit - 如果您在重新启动 msyql 服务时出错,请尝试在 my.cnf 中添加上面的“[mysqld]”


小智 5

这对我有用:

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)
Run Code Online (Sandbox Code Playgroud)