要在windows(10)中永久更改它,请编辑 my.ini 文件。要查找my.ini文件,请查看windows服务器中的路径。e、 g.对于我的MySQL5.7示例,服务是 MYSQL57 ,在此服务的属性中,可执行文件的路径为: “c:\program files\mysql\mysql server 5.7\bin\mysqld.exe”--默认文件=“c:\programdata\mysql\mysql server 5.7\my.ini”mysql57 i、 e.编辑 my.ini 文件输入 C:\ProgramData\MySQL\MySQL Server 5.7\ . 请注意 C:\ProgramData\ 是windows(10)中的隐藏文件夹。我的文件有以下感兴趣的行:
# Set the SQL mode to strict
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
删除 STRICT_TRANS_TABLES, 在此sql模式行中,保存文件并重新启动mysql57服务。通过执行 SHOW VARIABLES LIKE 'sql_mode'; 在(新的)mysql命令行客户端窗口中。 (我发现web上的其他答案和文档很有用,但它们似乎都没有告诉您在windows中从何处找到my.ini文件。)
11条答案
按热度按时间ktecyv1j1#
用检查值
然后使用以下命令清除@@global.sql\u模式:
gzjq41n42#
->strict\u trans\u tables负责设置mysql strict模式。
->要检查是否启用了严格模式,请运行以下sql:
如果其中一个值是strict\u trans\u tables,则启用严格模式,否则不启用。在我的情况下
因此,在我的例子中启用了严格模式,因为其中一个值是strict\u trans\u表。
->要禁用严格模式,请运行以下sql:
[或除严格转换表以外的任何模式。例如:set global sql_mode='no_engine_substitution';]
->要再次启用严格模式,请运行以下sql:
osh3o9ms3#
对于ubuntu:
一旦您通过ssh连接到vps,请尝试使用“root”连接到mysql
用户:mysql-u root-p
输入“root”用户密码,您将进入mysql环境(mysql>),然后只需检查什么是sql\u模式,使用以下命令:
显示变量,如'sql_mode';
基本上,如果表的值为
STRICT_TRANS_TABLES
,表示此选项已启用,因此需要使用以下命令从此表中删除值:这会将表的值设置为空并禁用此设置。这样地:
请确保在mysql环境中执行这些命令,而不是简单地通过ssh。我认为这一点在下面的文章中被遗漏了,作者认为读者是凭直觉理解的。
ijxebb2r4#
在服务器控制台上:
r1zhe5dt5#
我想知道如何在localhost(xampp)中检查mysql严格模式是开还是关。
如果结果有“strict\u trans\u tables”,那么它是打开的。否则,它就关闭了。
如果打开,那么什么模式以及如何关闭。
如果关闭,那么如何打开。
对于windows,
去
C:\Program Files\MariaDB XX.X\data
打开my.ini
文件。保存文件
**重新启动mysql服务
跑
SHOW VARIABLES LIKE 'sql_mode'
再看看是否有效;STRICT_TRANS_TABLES
在这条线上:sql_mode=STRICT_TRANS_TABLES
. *如果已经有其他值,请在后面加一个逗号,然后与其余的值连接。STRICT_TRANS_TABLES
来自价值*如果有逗号的话,也去掉它。**6. 要重新启动计算机上的mysql服务,
打开“运行命令”窗口(按windows+r按钮)。
类型
services.msc
点击OK
右键单击名称MySQL
点击Restart
a14dhokn6#
首先,使用以下命令检查mysql中是否启用了严格模式:
如果要禁用它:
也可以设置除以下以外的任何其他模式。要启用严格模式:
您可以检查第一个mysql查询的结果。
4ioopgfo7#
要在windows(10)中永久更改它,请编辑
my.ini
文件。要查找my.ini文件,请查看windows服务器中的路径。e、 g.对于我的MySQL5.7示例,服务是MYSQL57
,在此服务的属性中,可执行文件的路径为:“c:\program files\mysql\mysql server 5.7\bin\mysqld.exe”--默认文件=“c:\programdata\mysql\mysql server 5.7\my.ini”mysql57
i、 e.编辑
my.ini
文件输入C:\ProgramData\MySQL\MySQL Server 5.7\
. 请注意C:\ProgramData\
是windows(10)中的隐藏文件夹。我的文件有以下感兴趣的行:删除
STRICT_TRANS_TABLES,
在此sql模式行中,保存文件并重新启动mysql57服务。通过执行SHOW VARIABLES LIKE 'sql_mode';
在(新的)mysql命令行客户端窗口中。(我发现web上的其他答案和文档很有用,但它们似乎都没有告诉您在windows中从何处找到my.ini文件。)
js5cn81o8#
您可以使用以下方法检查它的局部值和全局值:
20jt8wwn9#
在Debian10上,我从
./opt/lampp/xampp start
我愿意strace ./opt/lampp/sbin/mysqld
看看我的.cnf在那里:因此,我将sql\u mode config添加到
/opt/lampp/etc/my.cnf
而不是/etc/mysql/my.cnf
f8rj6qna10#
要在ubuntu中永久更改它,请执行以下操作
在ubuntu命令行中
然后添加以下内容
lxkprmvk11#
就我而言,我需要补充:
低于
[mysqld]
在文件中my.ini
位于C:\xampp\mysql\bin
.