mysql乱码问题
一.登录mysql先做 set names latinl; 然后在执行跟新或者执行语句
前提是查好库和表都是latinl的然后执行以上操作,不过是临时的
二 在sql文件中指定 set names latinl;然后登录mysql,通过如下命令执行。 mysql > source test.sql
三,.通过指定mysql命令的字符集参数实现--default-character-set=latinl;
mysql -uroot -p '123456' --default-character-set=latinl test < test.sql 导入sql直接输入字符集 也就不乱码了
四。在配置文件里设置客户端及服务端参数
1 2 3 4 5 | [client] character- set -server = utf8 [mysql] character- set -server = utf8 |
不乱码的思想,客户端,服务器,库,表,程序字符集统一
###如何更改生产mysql数据库库表的字符集
对于已有的数据库想修改字符集不能直接通过 “alter database character set”或 “alter table tablename character set”
这两个命令都没有跟新已有记录的字符集,而只是对新创建的表或者记录生效。
已经有记录的字符集的调整,必须先将数据导出,经过修改字符集后重新导入后才可以,
总结: 例如目前是latinl >修改完utf-8
1.建库及建表的语句导出,sed 批量修改为utf-8.
2.导出所有数据
3.修改mysql服务器和客户端编码为utf-8
4.删除原有的库表及数据
5.导入新的建库建表的语句
6.导入mysql的数据
[client]character-set-server = utf8
[mysql]character-set-server = utf8
[mysqld]#bind-address=127.0.0.1character-set-server = utf8datadir=/data/ops/app/mysql-5.6.23/standardsocket=/data/ops/app/mysql-5.6.23/standard/standard.sockuser=mysqlskip-grant-tables
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构