MySQL是一種常用的關系型數據庫,與之交互的客戶端也有很多種,比如使用命令行的MySQL Shell或者是其他語言的MySQL庫等等。在使用MySQL客戶端進行數據操作時,我們有時候需要設置字符集編碼,以保證存儲、讀取、顯示的數據都是正確、清晰、完整的。
在MySQL客戶端中,我們可以通過以下兩種方式來設置編碼:
1. 使用命令行選項
mysql -u username -p --default-character-set=utf8mb4 databasename
在連接MySQL服務器時,我們可以通過--default-character-set
選項來設置字符集編碼,上面的例子就是設置為utf8mb4
。
2. 在MySQL配置文件中設置
[client] default-character-set=utf8mb4
找到MySQL客戶端的配置文件(在Linux中通常是/etc/mysql/mysql.conf.d/mysqld.cnf
),在[client]
段落下添加default-character-set
選項,并設置為我們需要的字符集編碼。
無論是哪種方式,我們都可以通過MySQL客戶端的status
命令來查看當前連接的字符集編碼:
mysql>status -------------- mysql Ver 14.14 Distrib 5.7.33, for Linux (x86_64) using EditLine wrapper Connection id: 7 Current database: databasename Current user: username@localhost SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.7.33-0ubuntu0.16.04.1 (Ubuntu) Protocol version: 10 Connection: Localhost via UNIX socket Server characterset: latin1 Db characterset: utf8mb4 Client characterset: utf8mb4 Conn. characterset: utf8mb4 UNIX socket: /var/run/mysqld/mysqld.sock Uptime: 9 min 8 sec Threads: 1 Questions: 6 Slow queries: 0 Opens: 129 Flush tables: 1 Open tables: 51 Queries per second avg: 0.011 --------------
其中Client characterset
就是我們設置的字符集編碼。