av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

MySQL 參數相關概念及查詢更改方法

瀏覽:176日期:2023-10-11 19:56:48

前言:

在前面一些文章中,經常能看到介紹某某參數的作用,可能有些小伙伴仍搞不清楚 MySQL 參數是啥。本篇文章我們來聊聊 MySQL 參數,學習下如何管理維護 MySQL 參數。

1.MySQL參數概念

我們所說的參數在官方文檔中稱為 系統變量 (system variable),不同的變量有著不同的作用。 MySQL 服務端維護了許多表示其配置的系統變量,所有變量均有默認值。一般可以在啟動命令行中或配置文件中對它們進行設置。

系統變量分為全局系統變量(global)和會話系統變量(session)。有些變量既有全局變量又有會話變量,有些變量只有全局變量。全局變量影響服務器的全局操作,會話變量只影響具體客戶端連接相關操作。若會話變量未單獨設置,則繼承自相應全局變量。

MySQL 服務啟動時,會按照配置文件或命令行中指定的選項來給全局變量賦值,沒有指定則按默認值處理。服務啟動后,通過連接服務器并執行 SET GLOBAL var_name 語句可以動態更改部分全局變量的值。要想更改全局變量,必須具有 SUPER 權限。 MySQL 還為每個客戶端連接維護會話變量,連接時使用相應全局變量的當前值對客戶端會話變量進行初始化。客戶端可以通過 SET SESSION var_name 語句來動態更改會話變量。設置會話變量不需要特殊權限,但會話變量只作用于當前連接。

2.參數查詢與變更示例

這里也要說明下,并不是所有的參數都可以動態修改,某些參數只能寫入配置文件然后重啟數據庫才能生效。下面我們來展示下 MySQL 參數的查詢與修改。

# 參數查詢show global variables like ’var_name’; //查看全局系統變量的值,可使用%通配符show session variables like ’var_name’; //查看會話系統變量的值show variables like ’var_name’; //優先返回會話系統變量,若會話系統變量不存在,則返回全局系統變量。# 也可用select查詢某個特定參數select @@global.var_name; //全局系統變量select @@session.var_name; //會話系統變量select @@var_name; //優先會話系統變量# 查詢示例mysql> show global variables like ’server_id’;+---------------+---------+| Variable_name | Value |+---------------+---------+| server_id | 1003306 |+---------------+---------+1 row in set (0.00 sec)mysql> show global variables like ’log_bin%’;+---------------------------------+-------------------------------+| Variable_name | Value |+---------------------------------+-------------------------------+| log_bin | ON || log_bin_basename| /data/mysql/logs/binlog || log_bin_index | /data/mysql/logs/binlog.index || log_bin_trust_function_creators | ON || log_bin_use_v1_row_events | OFF |+---------------------------------+-------------------------------+5 rows in set (0.00 sec)mysql> select @@server_id;+-------------+| @@server_id |+-------------+| 1003306 |+-------------+1 row in set (0.00 sec)# 動態修改參數set global var_name = value;set session var_name = value;set var_name = value;set @@global.var_name = value;set @@session.var_name = value;set @@var_name = value;# 參數修改示例mysql> set global sort_buffer_size = 2097152;Query OK, 0 rows affected (0.00 sec)mysql> set session sort_buffer_size = 4194304;Query OK, 0 rows affected (0.00 sec)mysql> select @@global.sort_buffer_size,@@session.sort_buffer_size;+---------------------------+----------------------------+| @@global.sort_buffer_size | @@session.sort_buffer_size |+---------------------------+----------------------------+| 2097152 | 4194304 |+---------------------------+----------------------------+1 row in set (0.00 sec)

參數動態修改后,建議將其寫入配置文件。因為動態修改的參數在 MySQL 服務重啟后會失效,只有寫入配置文件才能夠重啟后仍有效。對于一些無法動態修改的參數,我們只能通過修改配置文件,然后重啟來使之生效。這里所說的配置文件就是 my.cnf 文件了,Linux 系統一般在 /etc 目錄下;Windows 系統一般在 basedir 目錄下,名稱可命名為 my.ini 。大部分參數需要配置在 [mysqld] 下,一份簡單的配置文件示例如下:

vi /etc/my.cnf# 簡單模板如下:[mysqld]user = mysql datadir = /data/mysql/datasocket = /data/mysql/tmp/mysql.sockpid-file = /data/mysql/tmp/mysqld.pid skip_name_resolve = 1max_connections = 2000lower_case_table_names = 1log_timestamps=SYSTEMmax_allowed_packet = 32M...

MySQL 參數一般由 DBA 或運維來維護,可能有些同學對這些參數還比較陌生。建議在數據庫初始化時,根據服務器規格設置對應的數據庫參數。對于不清楚作用的參數,建議保持默認值即可。關于更多參數相關的內容,可以參考官方文檔:

https://dev.mysql.com/doc/refman/5.7/en/server-system-variable-reference.html

總結:

本篇文章詳細講述了 MySQL 參數相關概念及查詢更改方法,希望各位小伙伴能學到相關知識。

以上就是MySQL 參數相關概念及查詢更改方法的詳細內容,更多關于MySQL 參數的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 国产一区欧美 | 91影片 | 亚洲品质自拍视频网站 | 一区二区三区韩国 | 一区免费观看 | 日韩精品一区二区三区在线 | 91久久精品一区二区三区 | 特黄色一级毛片 | 午夜精品一区二区三区在线观看 | 精品国产乱码久久久久久a丨 | 中文字字幕在线中文乱码范文 | 日韩精品一区二区三区中文字幕 | 国产一级片91 | 日中文字幕在线 | 成人妇女免费播放久久久 | 一区二区影院 | 国产色 | 国产一区二区久久久 | 毛片在线免费 | 欧美国产91 | 97国产爽爽爽久久久 | 日本91av视频| 国产成人精品久久二区二区91 | 精品成人69xx.xyz| 激情av| 亚洲精品一区二区在线 | 欧美日韩亚洲一区二区 | 久久99久久99 | 国产精品久久久久久久久久免费看 | 欧美成人免费在线视频 | 免费日韩av网站 | 精品一区二区三区不卡 | 国产特黄一级 | 亚洲第一视频网 | 国产特级毛片 | 在线一区视频 | 99久久婷婷国产精品综合 | 亚洲影音先锋 | 精品在线观看一区二区 | 精品久久久久久久久久久久久久 | 99爱在线免费观看 |