修改MySQL字符编码

修改编码其实是为了支持中文~

1. 编译级别。由于缺乏大量自己去编译MySQL的经验,所以对具体的编译优化不太熟悉,可参考简朝阳的《MySQL性能调优与架构设计》。以下内容来自《MySQL 5.1参考手册》2.8.2. 典型配置选项:

  • 默认地,MySQL使用latin1(cp1252)字符集。为了改变 默认设置,使用--with-charset选项:
  • shell> ./configure -- with-charset=CHARSET

警告: 如果你在创建了任何数据库表之后改变字符集,你将必须对每个表运行myisamchk -r -q --set-character-set= charset ,否则索引可能不正确地排序。

2. 启动参数。启动参数可以直接加在启动服务的命令后面,也可以加在配置文件中。如:

(1)mysqld --defaults-file="my-small.ini" --console --character-set-server=utf8 --basedir="C:\mysql-5.5.21-win32" --datadir="C:\mysql-5.5.21-win32\data"

(2)在配置文件的[mysqld]节点中添加:character-set-server = "utf8"

  • --character-set-server=charset

该启动参数在MySQL的各版本中可能有差异,具体参见文档。

注意: default-character-set这个参数已经在新版的MySQL中取消使用,在部分旧版中也已经deprecated而不起作用。 使用配置变量“character_set”(低于4.1.0的服务器版本)和“character_set_server”(4.1.0和更高的服务器版本)指定。

我测试的版本是5.5.21,查看版本号的方式,以下内容来自:查看mysql版本的四种方法

1 select version();
2 status;

3. 查看编码。

1 show variables like '%char%' ;

 

| character_set_client        | gbk
| character_set_connection | gbk
| character_set_database   | utf8
| character_set_filesystem  | binary
| character_set_results       | gbk
| character_set_server       | utf8
| character_set_system      | utf8

得到类似这样的结果,可以使用下面的方法修改编码(该方法仅对当前连接生效,并且不会改变已存储的数据的编码):

1 SET character_set_client = utf8;
2 SET character_set_results = utf8;
3 SET character_set_connection = utf8;

4. 内部编码。指数据库、表、字段的编码。以下内容来自:mysql修改表、字段、库的字符集

修改数据库字符集:

ALTER
 DATABASE
 db_name DEFAULT
 CHARACTER
 SET
 character_name [
COLLATE
 ...
]
;

把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:

ALTER
 TABLE
 tbl_name CONVERT
 TO
 CHARACTER
 SET
 character_name [
COLLATE
 ...
]
 如:ALTER
 TABLE
 logtest CONVERT
 TO
 CHARACTER
 SET
 utf8 COLLATE
 utf8_general_ci;

只是修改表的默认字符集:

ALTER
 TABLE
 tbl_name DEFAULT
 CHARACTER
 SET
 character_name [
COLLATE
...
]
;
如:ALTER
 TABLE
 logtest DEFAULT
 CHARACTER
 SET
 utf8 COLLATE
 utf8_general_ci;

修改字段的字符集:

ALTER
 TABLE
 tbl_name CHANGE
 c_name c_name CHARACTER
 SET
 character_name [
COLLATE
 ...
]
;
如:ALTER
 TABLE
 logtest CHANGE
 title title VARCHAR
(
100
)
 CHARACTER
 SET
 utf8 COLLATE
 utf8_general_ci;

查看数据库编码:

SHOW
 CREATE
 DATABASE
 db_name;

查看表编码:

SHOW
 CREATE
 TABLE
 tbl_name;

查看字段编码:

SHOW
 FULL
 COLUMNS
 FROM
 tbl_name;

5. 连接方式。对于MySQL Connector/J方式,可以使用如下设置,来自“26.3.3.4. 使用字符集和Unicode”:

在MySQL服务器4.1之前,Connector/J支持每连接单一字符编码,能够从服务器配置自动检测到它,也能由用户通过使用useUnicode 和characterEncoding 属性配置它。

从MySQL服务器4.1版起,Connector/J支持客户端和服务器之间的单一字符编码,以及针对结果集中从服务器返回至客户端的数据的任意数目字符编码。

具体的连接示例:jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8&autoReconnect=true

 

END. 以下内容来自:MYSQL 字符集问题

 MySQL对于字符集的指定可以细化到一个数据库,一张表,一列,应该用什么字符集。

但是,传统的 程序在创建数据库和数据表时并没有使用那么复杂的配置,它们用的是默认的配置,那么,默认的配置从何而来呢?

    (1)编译MySQL 时,指定了一个默认的字符集,这个字符集是 latin1;
    (2)安装MySQL 时,可以在配置文件 (my.ini) 中指定一个默认的的字符集,如果没指定,这个值继承自编译时指定的;
    (3)启动mysqld 时,可以在命令行参数中指定一个默认的的字符集,如果没指定,这个值继承自配置文件中的配置,此时  character_set_server  被设定为这个默认的字符集;
    (4)当创建一个新的数据库时,除非明确指定,这个数据库的字符集被缺省设定为 character_set_server ;
    (5)当选定了一个数据库时, character_set_database  被设定为这个数据库默认的字符集;
    (6)在这个数据库里创建一张表时,表默认的字符集被设定为 character_set_database ,也就是这个数据库默认的字符集;
    (7)当在表内设置一栏时,除非明确指定,否则此栏缺省的字符集就是表默认的字符集;

简单的总结一下,如果什么地方都不修改,那么所有的数据库的所有表的所有栏位的都用 latin1 存储,不过我们如果安装 MySQL,一般都会选择多语言支持,也就是说,安装程序会自动在配置文件中把 default_character_set 设置为 UTF-8,这保证了缺省情况下,所有的数据库的所有表的所有栏位的都用 UTF-8 存储。

微信小程序 - 实现人脸识别对比+人脸相似度数据,用户从相册选择或拍照上传两张图片进行人脸对比得到人脸相似度及判断是否是同一个人,微信小程序检测人脸相似度(免费纯前端方案+调用第三方API接口方案) 微信小程序实现人脸识别对比,微信小程序人脸对比 人脸对比识别 人脸对比相似度,实现获取手机摄像头权限,调用相机拍照实现人脸识别相似度对比,小程序人脸相似度对比,快速识别两张照片的相似程度(用百分比)图片相似度对比在线测试,图片相似度对比,微信小程序人脸相似度对比分析,计算两张人脸的相似度,从而判断是否同一个人,并给出相似度评分。小程序如何实现人脸相似度比对,小程序纯前端怎么对比两张图片的相似度,计算两幅图像的相似度,图像相似度对比方法,调用百度AI的人脸识别,微信小程序中实现人脸识别认证,实现人脸检测、人脸 阅读详情

相关推荐

汽车诊断服务(UDS——0x11服务解析)

ECU复位服务(0x11)详解:该服务支持硬件/钥匙开关/软件三种复位类型(0x01-0x03),复位前需发送肯定响应。请求格式为11+子功能,响应含51+子功能。典型应用需配合安全访问流程,测试时需监控CAN总线通信及DTC状态。复位后ECU将返回默认会话,期间不处理任何诊断请求。服务在编程会话且安全解锁后执行,硬复位会初始化存储数据。

从事汽车行业 979

MySQL字符编码的修改及查看

MySQL字符编码的修改及查看 1、修改MySQL的默认编码集(也称全局编码集) 修改MySQL的全局配置文件/etc/my.cnf,在其中添加 character_set_server=utf8 编码格式 collation-server=utf8_general_ci 编码的规则 写完配置文件需重启服务 注意:全局编码是在局部编码失效的时候才生效,如:创建了A数据库但是没有给定编码格式。这时就会采用全局的编码格式。 2、查看和修改某个数据库的编码集 查看 show create database 数

yunwanjiayhb的博客 4449

【NLP】文献翻译4——CH-SIMS:中文多模态情感分析数据集与细粒度的模态注释

CH-SIMS: A Chinese Multimodal Sentiment Analysis Dataset with Fine-grained Annotations of Modality摘要1. 介绍2. 相关工作2.1 多模态数据集2.2 多模态情感分析2.3 多任务学习3. CH-SIMS 数据集3.1 数据获取3.2 标注3.3 特征提取4. 多模式多任务学习框架4.1 单模态子网4.2 特征融合网络4.3 优化目标5. 实验5.1 基准5.2 实验的细节5.3 结果和讨论5.3.1 与

YoungSeng's Blog 1万+

MySQL设置字符集编码

这里设置的是服务器的默认字符集为 `utf8mb4`(推荐使用 `utf8mb4` 而非 `utf8`,因为它能完全支持Unicode,包括表情符号和某些特殊字符),默认校对规则为 `utf8mb4_unicode_ci`。修改后,重启MySQL服务使配置生效。### **1. ** **服务器全局级别设置**### **2. ** **数据库级别设置**### **5. ** **客户端连接设置**### **3. ** **表级别设置**### **4. ** **列级别设置**### **总结**

weixin_43803780的博客 2236

Cesium实战:5分钟搞定离线地图与地形加载(附避坑指南)

本文详细介绍了Cesium在内网环境下的离线部署实战方案,重点解决了影像与地形数据的本地加载问题。通过逐步指导项目配置、本地瓦片与自定义地形数据的处理,并优化相机控制体验,帮助开发者快速构建安全、高效的三维地球应用,避免常见的401错误与加载失败陷阱。

weixin_30632089的博客 281

Vue Vben Admin 登录页修改全攻略:从登录界面定制到接口对接全流程配置

方式一:修改国际化文件找到对应的语言包文件,修改和的值。方式二:直接传递文本page-description="现代化的后台管理系统模板"page-title="欢迎使用 Vue Vben Admin"从上面的代码可以看出,登录表单使用了的方式来定义表单字段,这种方式提供了极大的灵活性。如果你想要自定义表单,可以修改formSchema数组。如果你的登录需求非常特殊,现有的组件无法满足,你可以完全自定义表单。只需在login.vue中替换<template><h2>自定义登录</h2>

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 479

MySQL基础配置之mysql的默认字符编码的设置(my.ini设置字符编码)

MySQL基础配置之mysql的默认字符编码的设置(my.ini设置字符编码) MySQL的默认编码是Latin1,不支持中文,那么如何修改MySQL的默认编码呢,下面以设置UTF-8为例来说明. MySQL的默认编码是Latin1,不支持中文,那么如何修改MySQL的默认编码呢,下面以UTF-8为例来说明 需要注意的是,要修改的地方非常多,相应的修改方法也很多。下面是一种最简单

zhuoxiong的专栏 3万+

AM芯片性能测试

目前车载FM&AM没有明确的国标,因此各家测试项目可能不同,最主要测试标准比较混乱,多是根据具体芯片的规格书以及与芯片厂商协商。信号发生器:R&S SMCV100B音频分析仪:R&S UPV AUDIO AYALYZER DC 250KHZ(AP的也可以)专用USB-I2C控制模块(不同芯片控制模块不同,例如SPI或UART的控制模块)卡农线(针对模拟声道输出,+接左/右声道,-接GND,地可接GND也可悬空)

qflook的博客 902

MySQL内如何改变编码格式

character_set_database可以改变,具体内容都是第一个查询出来的。

2401_84246493的博客 578

OpenCV实现文档扫描OCR识别(基于Python + OpenCV,含完整代码)

在当今数字化时代,文档处理的自动化需求日益增长。文档扫描OCR(Optical Character Recognition,光学字符识别)技术成为了将纸质文档转换为可编辑电子文本的关键手段。通过Python与OpenCV库的结合,我们能够实现高效、准确的文档扫描OCR识别。这一技术在办公自动化、数字图书馆、档案管理等众多领域都有着广泛的应用。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 2031

基于STM32L4XX、HAL库的ESP32-C3-WROOM-02-N4 WIFI模块驱动程序设计

支持802.11 b/g/n Wi-Fi (2.4GHz)RISC-V 32位单核处理器,主频高达160MHz。封装尺寸:18mm × 20mm × 3mm。工作温度范围:-40°C ~ 85°C。// 设置WiFi模式为STA。支持Bluetooth 5 (LE)// 发送AT指令测试通信。// 检查响应是否包含OK。内置4MB SPI Flash。// 连接TCP服务器。// 发送HTTP请求。// 初始化UART。// 建立TCP连接。低功耗设计,适合IoT应用。

zhusl6688的博客 384

彻底解决:MySQL字符编码报错问题

彻底解决:MySQL字符编码报错问题

南国以南i的博客 1050

【论文解读--Xdog】新型电驱式四足机器人研制与测试

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录系列文章目录前言一、四足机器人体型大小和驱动方式的比较二、四足机器人设计一些重要的结论三、系统控制框架四、系统硬件框架五、力位混合控制(阻抗控制)六、侧向平衡控制(和VMC如出一辙)七、电机驱动系统研制(FOC磁场定向控制)总结 前言 认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长! 本文先对新型电驱式四足机器人研制与测试做个简单的介绍,具体内容后续再更,其他模块可以参

qq_35635374的博客 3726

mysql修改客户端编码命令_mysql命令行修改字符编码

1、修改数据库字符编码mysql> alter database mydb character set utf8 ;2、创建数据库时,指定数据库的字符编码mysql> create database mydb character set utf8 ;3、查看mysql数据库的字符编码mysql> show variables like 'character%';//查询当前my...

weixin_42138703的博客 1157

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

MySql修改默认字符编码

1:windows下 在命令行下,查看当前数据库编码 show variables like '%char%'; mysql> show variables like '%char%';+--------------------------+---------------------------------------------------------+| Variable_name...

weixin_30294021的博客 134

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

mysql产看字符编码并修改_mysql字符编码查看修改实例

本节内容:有关mysql字符编码的查看与修改方法。说明:mysql默认编码是latin1,不支持中文,要支持中午需要把数据库的默认编码修改为gbk或utf8。下面通过实例,学习下mysql字符编码的查看与修改方法,大家做个参考。1、以root用户身份登陆,查看数据库编码方式(以root用户身份登陆的命令为:>mysql -u root –p,之后两次输入root用户的密码),查看数据库的编码...

weixin_39943926的博客 111

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

mysql如何字符编码,如何修改MYSQL的字符编码

如何修改MYSQL的字符编码查看字符集设置mysql> show variables like 'collation_%';+----------------------+-----------------+| Variable_name | Value |+----------------------+-----------------+| colla...

weixin_39676021的博客 184

如何修改mysql字符编码

如何修改mysql字符编码说明:mysql字符编码修改有几种方法,直接修改配置文件,也可以通过命令的方式,此处只介绍修改配置文件的方法。一. 检查mysql数据库的编码输入如下sql语句执行,并得到结果mysql> show variables like 'character\_set\_%';+--------------------------+--------+...

weixin_33725722的博客 238

mysql命令行修改字符编码_mysql字符编码修改方法 命令行修改mysql字符编码

1、修改数据库字符编码 代码示例:mysql> alter database mydb character set utf8 ;2、创建数据库时,指定数据库的字符编码 代码示例:mysql> create database mydb character set utf8 ;3、查看mysql数据库的字符编码 代码示例:mysql> show variables like 'cha...

weixin_35377249的博客 2243

修改Linux Mysql字符编码

修改MySQL字符编码 1.登录数据库,查看数据库字符编码表 (SHOW VARIABLES LIKE 'character%';)2.退出数据库,修改mysql配置文件,改变数据库字符编码 (vi /etc/my.cnf)4.进入配置文件后增加如下代码,然后保存退出[client]default-character-set=utf8character-set-server=utf8collati...

bopao4335的博客 239

修改 mysql 的字符编码

之前没有研究过相关问题,无意间扫了官方文档,小编查看得到修改mysql 的字符编码的方法: 链接本机mysql客户端,之后键入:show variables like 'charac%'; 然后键入需要修改的字符集格式: set character_set_client=utf8; 可以继续使用show variables like 'charac%';查看

xue_tech的博客 447

mysql设置字符的命令_mysql字符编码修改方法 命令行修改mysql字符编码

1、修改数据库字符编码复制代码 代码示例:mysql> alter database mydb character set utf8 ;2、创建数据库时,指定数据库的字符编码复制代码 代码示例:mysql> create database mydb character set utf8 ;3、查看mysql数据库的字符编码复制代码 代码示例:mysql> show variabl...

weixin_33304777的博客 174

永久修改MySQL字符编码

当我们使用set命令例如:set character_set_client = utf8的时候,字符编码会临时更改为utf8但当关掉MySQL重新登录的时候再次查看数据库字符编码,就会发现字符编码重新更改回去了。更改完之后win + R输入services.msc打开服务,将MySQL服务重新启动即可永久修改所需要的字符编码。在MySQL的bin目录的同级目录可以找到,只需要更改两处。这时候我们需要去更改MySQL的配置文件 : my.ini。第一处:图中标识位置更改为所需要的字符编码。

cyy147852369的博客 511

【MySQL】修改表的字符编码

目录 1、创建表的时候指定编码形式 2、在数据类型之后 + CHARACTER SET 编码 3、改变Mysql的配置文件 4、使用nchar和nvarchar 5、通过语句来修改此表的编码形式 有时候MySQL中的表需要存储中文,需要设置表的字符编码为utf8,否则默认的字符编码有可能不能正确处理中文,那么在MySQL中,如何设置表的字符编码呢? 1、创建表的时候指定编码形式 改变整张表的编码 mysql> CREATE TABLE `stu_test` ( -&gt

迷途书生的博客 1154

mysql命令 字符编码_mysql命令行修改字符编码

1、修改数据库字符编码mysql> alter database mydb character set utf8 ;2、创建数据库时,指定数据库的字符编码mysql> create database mydb character set utf8 ;3、查看mysql数据库的字符编码mysql> show variables like 'character%';//查询当前my...

weixin_32956805的博客 314

linux下修改mysql的默认字符编码

ubuntu下修改mysql的默认字符编码

gwq5210的专栏 1228
上一篇: Jquery 将表单序列化为Json对象
下一篇: Illegal mix of collations (utf8_general_ci,COERCIBLE) and (latin1_swedish_ci,NUM
Snoopy7713
博客等级 码龄21年 17粉丝 681原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值