方法:1、利用“set GLOBAL|SESSION 需要設(shè)置的variables”語(yǔ)句修改;2、利用“set @用戶variables”或者“set @@系統(tǒng)variables”語(yǔ)句修改。variables指的就是影響數(shù)據(jù)資源的參數(shù)變量。
本教程操作環(huán)境:windows10系統(tǒng)、mysql8.0.22版本、Dell G3電腦。
mysql中variables怎么修改
MySQL Variables
MySQL Variables在這里實(shí)際上指的是一些參數(shù),用于初始化或設(shè)定數(shù)據(jù)庫(kù)對(duì)系統(tǒng)資源的占用,文件存放位置等。在新安裝好系統(tǒng)后,就已經(jīng)被初始化好了。但是我們有時(shí)候不想采取默認(rèn)值,所以就需要對(duì)這些值做出改變。
MySQL的變量分為兩種:
-
系統(tǒng)變量: 配置MySQL服務(wù)器的運(yùn)行環(huán)境,可以用show variables查看
按其作用域的不同可以分為以下兩種:
-
分為全局(GLOBAL)級(jí):對(duì)整個(gè)MySQL服務(wù)器有效
-
會(huì)話(SESSION或LOCAL)級(jí):只影響當(dāng)前會(huì)話
有些變量同時(shí)擁有以上兩個(gè)級(jí)別,MySQL將在建立連接時(shí)用全局級(jí)變量初始化會(huì)話級(jí)變量,但一旦連接建立之后,全局級(jí)變量的改變不會(huì)影響到會(huì)話級(jí)變量。
-
-
狀態(tài)變量: 監(jiān)控MySQL服務(wù)器的運(yùn)行狀態(tài),可以用show status查看,不可以被修改。
修改系統(tǒng)變量的值
1、修改變量值的語(yǔ)法:
set [GLOBAL | SESSION] 需要設(shè)置的變量
mysql> set global log_queries_not_using_indexes=ON; Query OK, 0 rows affected (0.00 sec)
2、還有另外的一種寫法:@@
mysql> set @@global.log_queries_not_using_indexes=ON; Query OK, 0 rows affected (0.00 sec)
@: 代表是用戶變量
@@:代表系統(tǒng)變量
查看系統(tǒng)變量的值(show)
查看方法一: 系統(tǒng)變量存放在performance_schema
數(shù)據(jù)庫(kù)里的GLOBAL_VARIABLES
和SESSION_VARIABLES
表中,可以直接通過(guò)查看表的內(nèi)容獲得。
mysql> use performance_schema Database changed mysql> show tables like '%variables'; +-------------------------------------------+ | Tables_in_performance_schema (%variables) | +-------------------------------------------+ | global_variables | | persisted_variables | | session_variables | +-------------------------------------------+ 3 rows in set (0.00 sec)
查看方法二: 使用show variables語(yǔ)法
SHOW [GLOBAL | SESSION] VARIABLES [LIKE 'pattern' | WHERE expr]
-
精準(zhǔn)查詢:
mysql> show variables like 'slow_query_log'; +----------------+-------+ | Variable_name | Value | +----------------+-------+ | slow_query_log | ON | +----------------+-------+ 1 row in set, 1 warning (0.00 sec)
-
通配符查詢(%)
mysql> show variables like '%log'; +----------------------------------+---------------------------+ | Variable_name | Value | +----------------------------------+---------------------------+ | back_log | 80 | | general_log | OFF | | innodb_api_enable_binlog | OFF | | log_statements_unsafe_for_binlog | ON | | relay_log | DESKTOP-Q8KGU39-relay-bin | | slow_query_log | ON | | sync_binlog | 1 | | sync_relay_log | 10000 | +----------------------------------+---------------------------+ 8 rows in set, 1 warning (0.00 sec)
-
單個(gè)字符匹配查詢( _ )
mysql> show variables like 'log_b__'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | log_bin | ON | +---------------+-------+ 1 row in set, 1 warning (0.01 sec)
-
where 語(yǔ)句查詢(語(yǔ)法參看sql where 語(yǔ)句)
mysql> show variables where variable_name = 'version'; +---------------+--------+ | Variable_name | Value | +---------------+--------+ | version | 8.0.13 | +---------------+--------+ 1 row in set, 1 warning (0.00 sec) mysql> show variables where value like '8.%'; +----------------+--------+ | Variable_name | Value | +----------------+--------+ | innodb_version | 8.0.13 | | version | 8.0.13 | +----------------+--------+ 2 rows in set, 1 warning (0.00 sec)
推薦學(xué)習(xí):mysql視頻教程