美文网首页程序员@产品
Mysql 学习过程踩的编码坑

Mysql 学习过程踩的编码坑

作者: 秋男Zzz | 来源:发表于2018-09-15 12:11 被阅读0次

日常使用数据是通过数据后台导出的数据,彼时没有编码格式的概念。

开始学习mysql的时候,稀里糊涂安装了mysql,也没有设置默认的编码方式。
打开默认的数据库,导入数据的时候,即使指定了导入方式,也发现都是乱码,如果打开csv格式数据源,另存为excel格式,导入就可以。

但是百M级别的数据库,用excel打开,那是可怕的慢。为了解决这个问题,进一步学习了非常多非常多的知识。
安装mysql的时候,数据库的默认编码格式是Latin1,而导出数据编码格式是gbk,导入数据库自然是乱码,但为何excel编辑另存为后的数据源就正常了我也不知道。

解决办法1️⃣
使用其他工具将文件转码,我写了一个PYTHON小程序,将文件改变为指定编码格式,导入就不会乱码了;

使用到python pandas read_csv()的函数,数据源太多的时候需要用到分块读取再写入。

解决办法2️⃣
新建一个数据库,制定数据库的编码格式与源数据的编码格式一致。

'''创建指定编码格式的数据库,指定编码为gbk'''

create database test2 DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;

'''创建指定编码格式的数据库,指定编码为utf-8'''

CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

补充知识,如何查询文件编码格式;
MACOS 有个命令行工具:enca 可以查看编码格式,也可以修改编码,有兴趣可以进一步学习下;


image.png

相关文章

  • Mysql 学习过程踩的编码坑

    日常使用数据是通过数据后台导出的数据,彼时没有编码格式的概念。 开始学习mysql的时候,稀里糊涂安装了mysql...

  • k8s中将mysql运行在容器内

    将mysql镜像运行在k8s集群内,记录下踩坑过程。 mysql镜像 mysql镜像地址这里我使用的是mysql5...

  • Mac数据库管理工具——MySQL Workbench的安装及使

    从搭建jira中学习中摘出来的MySQL Workbench相关内容,用于mysql管理,方便查看,【踩坑】Mac...

  • Windows 安装mysql 8.0 &采坑总结

    记录个人安装Mysql8.0.13的过程,以及踩过的坑一、安装1.从网上下载MySQL8.0.12版本,[下载地址...

  • WebView踩坑指南

    今天学习了下WebView这个控件,但是在学习的过程踩坑不断,不过也多亏了踩坑无数,才大致了解到这个控件怎么用,废...

  • 巧用sql事半功倍

    在mybatis里,曾经踩过几次坑,也用了一些mysql的技巧来应用数据库的功能减少编码的复杂性,尤其是批量操作,...

  • 2019-08-14

    docker 搭建 gogs,drone , mysql 踩坑记录,防止以后再踩啊 docker 创建 桥接网络...

  • MYSQL踩坑记录:You have an error in y

    MYSQL踩坑记录:You have an error in your SQL syntax; check the...

  • 大数据爬坑收录

    爬出过的坑 大数据运维过程就是一个踩坑的过程。如下分享一些踩过的坑,以供参考。 Hive Spark Flink ...

  • Html/Css总结

    h5和css的学习到这里就告一段落了,基本上是从踩坑,脱坑,再踩坑,再脱坑……这样的过程过来的。写一点自己的经验,...

网友评论

    本文标题:Mysql 学习过程踩的编码坑

    本文链接:https://www.haomeiwen.com/subject/kvbzgftx.html