我正在將一個站點移動到另一台伺服器。兩者都在運行瑪麗亞資料庫。舊的是:
mysql Ver 15.1 Distrib 10.5.8-MariaDB
新的那一個:
mysql Ver 15.1 Distrib 10.6.11-MariaDB
在 my.cnf 的舊伺服器上,我輸入:
[mysqld]
...otherlines
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
這使我能夠運行我想要的命令。所以我試著在新伺服器上做同樣的事情,但它一直在抱怨:
Field 'shipping_name' doesn't have a default value
如果我從腳本運行此命令來查看其運行的 sql_mode,我會得到:
SELECT @@SQL_MODE, @@GLOBAL.SQL_MODE;
我缺什麼?有什麼改變從10.5.8-MariaDB到10.6.11-MariaDB圍繞這個?