MySQL中SQL Mode的查看与设置

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

MySQL中SQL Mode的查看与设置

皎然   2020-03-15 我要评论
MySQL可以运行在不同的模式下,而且可以在不同的场景下运行不同的模式,这主要取决于系统变量 ***sql_mode*** 的值。本文主要介绍一下这个值的查看与设置,主要在Mac系统下。 对于每个模式的意义和作用,网上很容易找到,本文不做介绍。 按作用区域和时间可分为3个级别,分别是会话级别,全局级别,配置(永久生效)级别。 ## 会话级别: 查看- ``` select @@session.sql_mode; ``` 修改- ``` set @@session.sql_mode='xx_mode' set session sql_mode='xx_mode' ``` session均可省略,默认session,仅对当前会话有效 ## 全局级别: 查看- ``` select @@global.sql_mode; ``` 修改- ``` set global sql_mode='xx_mode'; set @@global.sql_mode='xx_mode'; ``` 需高级权限,仅对下次连接生效,不影响当前会话(亲测过),且MySQL重启后失效,因为MySQL重启时会重新读取配置文件里对应值,如果需永久生效需要修改配置文件里的值。 ## 配置修改(永久生效): 打开 vi /etc/my.cnf 在下面添加 ``` [mysqld] sql-mode = "xx_mode" ``` *注意*:[mysqld]必须加,且sql-mode中间是“-”,而不是下划线。 保存退出,重启服务器,即可永久生效。 因为Mac下安装MySQL没有配置文件,所以需要自己手动添加。 ## ps 最后额外加一点东西,就是Mac下MySQL的启动、停止、重启等操作。 主要有两种方式, 一是点击”系统偏好设置“对应的MySQL面板,可实现管理。 二是命令行方式。 MySQL相关的执行脚本,常用的主要是下面两个: ``` /usr/local/mysql/support-files/mysql.server /usr/local/mysql/bin/mysql ``` mysql.server是控制服务器的启停等操作。 ``` mysql.server start|stop|restart|status ``` mysql主要用于连接服务器。 ``` mysql -uroot -p **** -h **** -D ** ``` 有些需要sudo权限,且可将相关路径添加到环境变量,可简化书写,至于如何添加是不做介绍了。

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们