ubuntu

MySQL在Ubuntu上的字符集设置

小樊
45
2025-07-13 10:24:09
栏目: 云计算

在Ubuntu上设置MySQL的字符集,可以通过以下步骤进行:

1. 修改MySQL配置文件

方法一:使用my.cnfmy.ini

  1. 打开MySQL配置文件。通常位于/etc/mysql/my.cnf/etc/mysql/mysql.conf.d/mysqld.cnf
  2. [mysqld]部分添加或修改以下配置项:
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
  1. 保存并关闭文件。
  2. 重启MySQL服务以应用更改:
sudo systemctl restart mysql

方法二:使用mysql命令行工具

  1. 登录到MySQL命令行界面:
mysql -u root -p
  1. 执行以下SQL语句来设置字符集:
SET GLOBAL character_set_server = 'utf8mb4';
SET GLOBAL collation_server = 'utf8mb4_unicode_ci';
  1. 退出MySQL命令行界面:
EXIT;

2. 验证字符集设置

登录到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    |
+--------------------------+----------------------+---------------------------------+

3. 设置数据库和表的字符集

如果你需要为特定的数据库或表设置字符集,可以使用以下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的字符集。

0
看了该问题的人还看了