一、介紹
MySQL是一個著名的開源關係型數據庫管理系統,它使用文本文件my.ini來配置數據庫的各種參數。my.ini文件中的參數對數據庫的性能、安全性、可用性非常重要。
二、文件位置
在Windows系統下,my.ini文件默認存放在MySQL安裝目錄下。在Linux系統下,my.cnf文件的位置可能會因髮型版本而不同,一般可以放在/etc/my.cnf或者/etc/mysql/my.cnf中。
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
port = 3306
socket = /tmp/mysql.sock
bind-address = 0.0.0.0
pid-file = /usr/local/mysql/data/mysql.pid
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/data/mysql.err
log-bin = /usr/local/mysql/data/mysql-bin
expire_logs_days= 7
max_binlog_size = 100M
default-storage-engine=MyISAM
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
[mysqldump]
quick
quote-names
max_allowed_packet = 16M
[mysql]
default-character-set=utf8mb4
三、參數說明
1、[client]
這個部分是MySQL客戶端的默認參數。這些參數將在客戶端使用MySQL時生效。
2、[mysqld]
這個部分包含了MySQL服務器的默認參數。這些參數將在運行MySQL服務器時生效。
3、[mysqldump]
這個部分是備份工具mysqldump的默認參數。當使用mysqldump命令備份MySQL數據庫時,將啟用這些參數。
4、[mysql]
這個部分包含了默認的MySQL客戶端參數。這些參數將在運行MySQL客戶端時生效。
四、常用參數說明
1、port
MySQL服務器監聽的端口號,默認為3306。可以在客戶端通過指定端口連接到MySQL服務。
port = 3306
2、socket
MySQL服務器的Unix socket文件路徑,用於本地進程之間的通信。默認值一般為/tmp/mysql.sock。
socket = /tmp/mysql.sock
3、bind-address
MySQL服務器綁定的IP地址,用於指定服務器可監聽的網絡接口。當指定為0.0.0.0時,服務器將監聽所有網絡接口,允許遠程客戶端連接。當指定為127.0.0.1時,服務器只監聽本地IP地址。
bind-address = 0.0.0.0
4、pid-file
MySQL服務器進程ID保存的文件路徑。默認為MySQL數據目錄下的mysql.pid。
pid-file = /usr/local/mysql/data/mysql.pid
5、datadir
MySQL數據庫文件保存的路徑。默認為MySQL安裝目錄下的data。
datadir = /usr/local/mysql/data
6、log-error
MySQL服務器錯誤日誌文件路徑。MySQL服務器將記錄所有的錯誤信息,包括警告和錯誤信息。
log-error = /usr/local/mysql/data/mysql.err
7、log-bin
MySQL二進制日誌文件的路徑。二進制日誌是MySQL服務器的一種日誌格式,用於記錄數據庫的修改操作。這個參數默認為空,表示關閉二進制日誌。
log-bin = /usr/local/mysql/data/mysql-bin
8、expire_logs_days
MySQL二進制日誌的過期時間,單位為天。在過期時間內,MySQL將保留所有的二進制日誌文件。當二進制日誌超過過期時間後,MySQL將刪除這些日誌文件。
expire_logs_days = 7
9、max_binlog_size
每個二進制日誌文件的最大大小,單位為位元組。當二進制日誌文件達到指定的最大值後,MySQL服務器將自動創建一個新的二進制日誌文件。
max_binlog_size = 100M
10、default-storage-engine
默認的存儲引擎。MySQL支持多種存儲引擎,如InnoDB、MyISAM等。這個參數可以指定MySQL新建表時所使用的存儲引擎類型。
default-storage-engine = MyISAM
11、character-set-server
MySQL服務器的默認字符集。
character-set-server = utf8mb4
12、collation-server
MySQL服務器的默認字符集排序規則。
collation-server = utf8mb4_unicode_ci
13、quick
mysqldump命令參數,強制mysqldump使用INSERT語句將數據導出到備份文件中。
quick
14、quote-names
mysqldump命令參數,轉義數據導出中的數據表或列名。
quote-names
15、max_allowed_packet
mysqldump命令參數,指定可以發送到MySQL服務器的最大數據包大小。
max_allowed_packet = 16M
16、default-character-set
MySQL客戶端的默認字符集。
default-character-set = utf8mb4
五、結語
my.ini文件中包含了許多MySQL服務器和客戶端的默認配置參數。這些參數可以通過修改my.ini文件來進行定製化配置。正確的參數配置可以顯著提升MySQL的性能、可用性和安全性。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/295299.html