在Ubuntu上设置MySQL的字符集,可以通过以下步骤进行:
my.cnf
或my.ini
/etc/mysql/my.cnf
或/etc/mysql/mysql.conf.d/mysqld.cnf
。[mysqld]
部分添加或修改以下配置项:[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
sudo systemctl restart mysql
mysql
命令行工具mysql -u root -p
SET GLOBAL character_set_server = 'utf8mb4';
SET GLOBAL collation_server = 'utf8mb4_unicode_ci';
EXIT;
登录到MySQL命令行界面并执行以下查询来验证字符集设置:
SHOW VARIABLES LIKE 'character_set_%';
SHOW VARIABLES LIKE 'collation_%';
你应该看到类似以下的输出:
+--------------------------+--------+
| Variable_name | Value |
+--------------------------+--------+
| character_set_client | utf8mb4|
| character_set_connection | utf8mb4|
| character_set_database | utf8mb4|
| character_set_filesystem | binary |
| character_set_results | utf8mb4|
| character_set_server | utf8mb4|
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+--------+
+--------------------------+----------------------+---------------------------------+
| Variable_name | Value | Comment |
+--------------------------+----------------------+---------------------------------+
| collation_connection | utf8mb4_unicode_ci | Default collation for connection|
| collation_database | utf8mb4_unicode_ci | Default collation for database |
| collation_server | utf8mb4_unicode_ci | Default collation for server |
+--------------------------+----------------------+---------------------------------+
如果你需要为特定的数据库或表设置字符集,可以使用以下SQL语句:
CREATE DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
或者修改现有数据库的字符集:
ALTER DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE TABLE mytable (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci
);
或者修改现有表的字符集:
ALTER TABLE mytable CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
通过以上步骤,你可以在Ubuntu上成功设置MySQL的字符集。