怎么关闭mysql的严格模式

文 / @WordPress主题

在开始本文之前,先介绍一下什么是MySQL的严格模式。MySQL的严格模式是一种数据库设置,可以使MySQL在执行操作时对数据类型、数据长度和日期格式进行更严格的检查,以确保数据完整性。

但是,在某些情况下,严格模式可能会带来一些麻烦。例如,在数据插入时,如果数据类型不匹配,MySQL会拒绝插入数据。这可能会导致一些不必要的问题。因此,关闭MySQL的严格模式并不是一个坏主意。

下面就是关闭MySQL的严格模式的步骤。

第一步,使用如下命令登录到MySQL服务器:

mysql -u root -p

第二步,输入MySQL管理员密码以进行进一步的操作。

第三步,查看当前MySQL服务器是否开启了严格模式。输入以下命令:

SELECT @@sql_mode;

如果您看到以下输出,请注意其中是否包含“STRICT_TRANS_TABLES”、“STRICT_ALL_TABLES”和“NO_ZERO_IN_DATE”等参数。

+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| @@sql_mode |
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

如果存在这些参数,则说明MySQL服务器开启了严格模式。接下来,就可以通过以下步骤关闭它。

第四步,打开my.cnf文件。 my.cnf文件存放在MySQL服务器的安装目录下。可以使用vim或nano编辑器打开该文件。

sudo vim /etc/mysql/my.cnf

第五步,查找如下行:

# sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

取消注释,并把后面的参数修改为空。

sql_mode=""

第六步,保存文件并退出编辑器。

第七步,重启MySQL服务器。重新启动MySQL服务器可以确保变更生效。您可以使用以下命令重启MySQL服务器。

sudo systemctl restart mysql

现在,您已经成功关闭了MySQL的严格模式。您可以再次登录到MySQL服务器并运行以下命令来检查是否已成功关闭:

SELECT @@sql_mode;

现在,输出将不再包含任何严格模式参数。

本文介绍了如何关闭MySQL的严格模式。关闭严格模式可能会带来一些好处,但也可能会带来一些问题。因此,在考虑关闭MySQL的严格模式之前,请仔细衡量其利弊,并确保自己知道自己在做什么。

添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。