什么是MySQL的位數(shù)
MySQL的位數(shù)指的是服務(wù)器端和客戶(hù)端連接時(shí)使用的協(xié)議版本和加密方式,與操作系統(tǒng)的位數(shù)無(wú)關(guān),常見(jiàn)的有32位和64位。在MySQL5.5之前,默認(rèn)使用32位協(xié)議。
如何查看MySQL的位數(shù)
可以通過(guò)MySQL客戶(hù)端命令行查看當(dāng)前連接的協(xié)議版本,命令為status
。例如:
mysql> status
--------------
mysql Ver 14.14 Distrib 5.7.19, for macos10.12 (x86_64) using EditLine wrapper
Connection id: 19
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.7.19 MySQL Community Server (GPL)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: utf8mb4
Conn. characterset: utf8mb4
UNIX socket: /tmp/mysql.sock
Uptime: 1 hour 2 min 2 sec
Threads: 4 Questions: 53 Slow queries: 0 Opens: 163 Flush tables: 1 Open tables: 67 Queries per second avg: 0.014
--------------
其中Protocol version
就是協(xié)議版本編號(hào),如果是10
,則使用的是32位協(xié)議;如果是9
,則使用的是16位協(xié)議。
如何切換MySQL的位數(shù)
可以通過(guò)修改MySQL配置文件來(lái)切換位數(shù)。在MySQL5.6及以上版本,可以通過(guò)設(shè)置max_allowed_packet
參數(shù)來(lái)控制協(xié)議版本。具體步驟如下:
- 打開(kāi)MySQL配置文件
/etc/my.cnf
; - 添加以下配置信息(以64位協(xié)議為例):
- 保存并退出配置文件;
- 重啟MySQL服務(wù)
sudo systemctl restart mysql
; - 使用
status
命令確認(rèn)協(xié)議版本是否已切換。
[mysqld]
max_allowed_packet=64M