如何设置MySQL 数据库的默认字符集和默认排序规则

在 MySQL 中,设置数据库的默认字符集和默认排序规则可以通过以下步骤来实现。你可以在创建数据库时指定这些设置,或者使用 ALTER 命令修改现有数据库的设置。

1. 创建数据库时设置字符集和排序规则

在创建新的数据库时,你可以直接在 CREATE DATABASE 语句中设置默认字符集和排序规则:

sql

复制代码
CREATE DATABASE db01 
CHARACTER SET utf8mb4 
COLLATE utf8mb4_general_ci;

在这个例子中:

  • CHARACTER SET utf8mb4 :设置数据库的默认字符集为 utf8mb4
  • COLLATE utf8mb4_general_ci :设置数据库的默认排序规则为 utf8mb4_general_ci

2. 修改现有数据库的字符集和排序规则

如果你需要修改已经存在的数据库,可以使用 ALTER DATABASE 命令:

sql

复制代码
ALTER DATABASE db01 
CHARACTER SET utf8mb4 
COLLATE utf8mb4_general_ci;

3. 查看当前数据库的字符集和排序规则

你可以通过查询 information_schema.SCHEMATA 来查看当前数据库的默认字符集和排序规则:

sql

复制代码
SELECT DEFAULT_CHARACTER_SET_NAME, DEFAULT_COLLATION_NAME 
FROM information_schema.SCHEMATA 
WHERE SCHEMA_NAME = 'db01';

注意事项

  • 影响范围:设置的字符集和排序规则将影响数据库中所有表的默认字符集和排序规则,但 individual tables 和 columns 也可以单独设置不同的字符集和排序规则。
  • 字符集兼容性:确保选择的字符集和排序规则适合你的应用需求,特别是如果你的应用需要支持多种语言或特殊字符。
相关推荐
ClouGence6 分钟前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
云技纵横2 小时前
Gap Lock 死锁实战:5 秒在本地复现 MySQL 间隙锁死锁
后端·mysql
无响应de神2 小时前
三、用户与权限管理
数据库·mysql
摇滚侠18 小时前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
麦聪聊数据20 小时前
数据服务化时代:企业数据能力输出的核心路径
数据库
ApacheSeaTunnel20 小时前
实战演示 | 基于 Apache SeaTunnel 与 Apache DolphinScheduler 实现 MySQL 到 Doris 离线定时增量同步
大数据·mysql·开源·doris·数据集成·seatunnel·数据同步
shushangyun_20 小时前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
DARLING Zero two♡20 小时前
【MySQL数据库】数据类型与表约束
数据库·mysql
曹牧21 小时前
Oracle EXPLAIN PLAN
数据库·oracle