zoukankan      html  css  js  c++  java
  • MySQL中SQL Mode的查看与设置

    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权限,且可将相关路径添加到环境变量,可简化书写,至于如何添加是不做介绍了。

  • 相关阅读:
    linux 安装 apache2.2.31
    如何在高并发环境下设计出无锁的数据库操作(Java版本) 转载
    一些需要注意的点
    一些卡常技巧
    【CF809E】Surprise me! 树形DP 虚树 数学
    ISAP算法
    【AGC013C】Ants on a Circle 弹性碰撞
    【CF768G】The Winds of Winter 可持久化线段树 DFS序
    【CF633D】Fibonacci-ish
    【BZOJ4042】【CERC2014】parades 状压DP
  • 原文地址:https://www.cnblogs.com/jiaoran/p/12500544.html
Copyright © 2011-2022 走看看