1.查看mysql的所有全局變量的值
SHOW GLOBAL VARIABLES
或者
SHOW VARIABLES
mysql有很多全局變量,包括系統的一些基本信息,以及mysql的一些基本配置都可以在全局變量中查到。
2.查看mysql的單個全局變量的值
SHOW GLOBAL VARIABLES LIKE 'wait_timeout'
或者
SELECT @@wait_timeout
上面的查詢也可以用模糊查詢,與上面結果一樣的模糊查詢語句
SHOW GLOBAL VARIABLES LIKE 'wait_time%' SHOW GLOBAL VARIABLES LIKE '%wait%'
注意:查看mysql的全局變量也可以不加global關鍵字,例如
SHOW VARIABLES SHOW VARIABLES LIKE '%wait%' SHOW VARIABLES LIKE 'wait_timeout' SHOW VARIABLES LIKE '%wait%'
3.設置全局變量的值
SET GLOBAL wait_timeout = 604800; SET @@GLOBAL.wait_timeout = 604800
SET GLOBAL event_scheduler = ON; SET @@global.event_scheduler = ON; SET GLOBAL event_scheduler = 1; SET @@global.event_scheduler = 1;
注意:有的時候發現修改不生效,需要關閉會話重新啟動,也就是退出一下重新登錄。但是發現重新啟動mysql服務器變量又不生效,最好的辦法就是修改mysql啟動的默認值。
(1)windows下C:\ProgramData\MySQL\MySQL Server 5.7\my.ini,在[mysqld]棧下寫下這個變量,例如修改mysql啟動后默認開啟任務調度(windows是修改my.ini文件)
修改:C:\ProgramData\MySQL\MySQL Server 5.7\my.ini (注意是ProgramData目錄下的my.ini文件才能生效,如果修改C:\Program Files\MySQL\MySQL Server 5.7\my-default.ini不會生效)
[mysqld] # Remove leading # and set to the amount of RAM for the most important data # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. # innodb_buffer_pool_size = 128M # Remove leading # to turn on a very important data integrity option: logging # changes to the binary log between backups. # log_bin # These are commonly set, remove the # and set as required. # basedir = ..... # datadir = ..... # port = ..... # server_id = ..... # Remove leading # to set options mainly useful for reporting servers. # The server defaults are faster for transactions and fast SELECTs. # Adjust sizes as needed, experiment to find the optimal values. # join_buffer_size = 128M # sort_buffer_size = 2M # read_rnd_buffer_size = 2M sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES event_scheduler = 1
如果權限不夠不能修改參考解決辦法:http://www.cnblogs.com/qlqwjy/p/7989293.html
(2)linux下修改/etc/my.cnf,例如修改mysql默認任務調度開啟和會話時長為7天
[root@iz2ze46xi6pjjj69ailg9lz ~]# vim /etc/my.cnf