mysql如何修改 SQL 模式,禁用 only_full_group_by
时间: 2023-07-05 08:27:23 浏览: 174
要修改 MySQL 的 SQL 模式,禁用 only_full_group_by,可以按照以下步骤操作:
1. 登录 MySQL,可以使用以下命令登录:
```
mysql -u username -p
```
其中,username 是你的 MySQL 用户名,按下回车后会提示输入密码。
2. 查看当前的 SQL 模式,可以使用以下命令:
```
SELECT @@sql_mode;
```
这会返回当前的 SQL 模式设置,其中包含了多个选项,用逗号分隔。
3. 修改 SQL 模式,在 MySQL 命令行中执行以下命令:
```
SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
```
这会将 SQL 模式设置为去掉 ONLY_FULL_GROUP_BY 选项的模式。
4. 重新查看 SQL 模式,确认是否修改成功,可以再次执行以下命令:
```
SELECT @@sql_mode;
```
这时应该会显示修改后的 SQL 模式。
需要注意的是,如果 MySQL 服务重启,SQL 模式会恢复到默认设置,需要重新修改。为了永久禁用 only_full_group_by,可以修改 MySQL 配置文件,在 [mysqld] 段中添加以下设置:
```
[mysqld]
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
```
其中,sql_mode 的值为去掉 ONLY_FULL_GROUP_BY 选项的模式,多个选项之间用逗号分隔。修改完配置文件后,需要重启 MySQL 服务才能生效。
阅读全文