關於MySQL中SQL Mode的檢視與設定

藏色散人
發布: 2020-03-17 08:54:49
轉載
2677 人瀏覽過

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權限,且可將相關路徑新增至環境變量,可簡化書寫,至於如何新增是不做介紹了。

推薦mysql影片教學,網址:https://www.php.cn/course/list/51.html

以上是關於MySQL中SQL Mode的檢視與設定的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:cnblogs.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板