Mysql表字符集更换

Mysql表字符集更换

字符集

1.系统默认设置字符集为 utf8mb4,校验规则为 utf8mb4_bin,但可根据应用需要在申请时选
择其他字符集。
2.绝大多数数据库产品 UTF8 字符集存储汉字占用 3 个字节(部分特殊汉字占用 4 个字节),存
储英文字符占用 1 个字节。而 MYSQL 默认按字符方式存储数据,对于汉字,例如 varchar(10)
可以存 10 个汉字。
在从其它数据库产品迁移到 MYSQL 数据库(UTF8 字符集)的情况下,无需担心字符集转
换问题。因为 utf8mb4 完全兼容 utf8,且支持 emoji 表情及更多的字符,唯一不足的是,
utf8mb4 会占用更多的空间,一个字符最多占用 4 个字节(部分特殊汉字,emoji 表情),存储
普通汉字和存储英文字符占用的字节和 UTF8 一样。

校验规则

字符集校验规则校验规则说明
utf8mb4utf8mb4_bin将字符串每个字符用二进制数据编译存储,区分大小写,而且可以存二进制的内容
utf8mb4utf8mb4_general_ ci不区分大小写。没有实现 Unicode 校验规则,在遇到某些特殊语言或者字符集,排序结果可能不一致,但是,在绝大多数情况下,这些特殊字符的顺序并不需要那么精确。
utf8mb4utf8mb4_general_ cs区分大小写
utf8mb4utf8mb4_unicode_ ci是基于标准的 Unicode 来排序和比较,能够在各种语言之间精确排序,Unicode 校验规则为了能够处理特殊字符的情况,实现了略微复杂的排序算法,仅部分支持 Unicode 校对规则算法,一些字符还是不能支持。

字符集级别

mysql数据库包含四种级别的字符集,分别是库实例,数据库、表、表字段,执行的优先级是从低到高,意思就是实例优先级低于数据库,数据库低于表,表低于表字段

查看方式

实例:show variables like ‘%char%’
数据库:show create database groupdb
表:show create table groupdb.gp_contact
表字段:show full columns from groupdb.gp_contact

小数据量表更换字符集

alter table `table_name` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

注意:命令只会对后续插入的数据生效。这意味着在执行此命令之前插入的所有数据都将保持原字符集,而新插入的数据将使用utf8mb4字符集。

大数据量表更换字符集

-- 建表
CREATE TABLE `table_name_20230605` (`id` CHAR(32)  NOT NULL,`name` CHAR(32)  NOT NULL,PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci-- 替换
RENAME TABLE table_name to table_name_backup_20230605, table_name_20230605 to table_name;-- 插入热点数据
INSERT INTO table_name (SELECT * FROM table_name_backup_20230605 WHERE createtime >= '2023-06-05 19:30:00');

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/694323.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ubuntu 22.04 图文安装

ubuntu 22.04.3 live server图文安装 一、在Vmware里安装ubuntu 22.04.3 live server操作系统 选择第一个选项开始安装 选择English语言 选择中间选项不更新安装,这是因为后续通过更换源之后再更新会比较快 键盘设计继续选择英文,可以通过语言选择…

如何实现两个电脑之间通过以太网(网线)实现文件互传

如何实现两个电脑之间通过以太网(网线)实现文件互传 本帖目的:介绍如何通过以太网(网线)连接两台电脑,通过文件夹共享的方式,实现两台电脑之间的文件互传。 本帖以笔者实际工作上遇到的场景为例…

Python Paramiko模块-SSH远程连接服务器操作

前言 Paramiko 是 Python 语言的一个 SSH 客户端。可以远程连接Linux服务器,通过 python 对 Linux 进行操作,可以实现进行对远程服务器进行下载和上传文件操作。 简介 Paramiko的特点: 支持SSHv2协议和SFTP协议支持密码和密钥认证提供高级…

c编译器学习03:chibicc的win10 vs 编译、调试环境设置

虚拟机 用VMware Workstation 17 Player,安装centos7,安装gcc等开发工具 设置虚拟机的共享文件夹,将win10下下载的chibicc拷贝到/home/a下 直接make编译 用ip addr查询得到虚拟机的ip地址,后面vs远程开放时使用。 vs设置 vs毕…

2.20号qt

1.Qt中的信息调试类 &#xff08;输出类&#xff09; QDebug //1.类似与printf qDebug("%s","hello kittiy"); //2. 类似与cout 默认有换行 比较常用的方式 qDebug() << "你好" ; //1.类似与printf qDebug("%s",&q…

redis最佳实践

原则&#xff1a;redis希望存储的是热点数据&#xff0c;尽量可以在一天内访问到。 最佳实践 选择合适的数据结构 redis有String、Hash、Set、SortedSet、List等结构&#xff0c;主要依据业务需要进行选择 string:几乎所有数据都可以用string存储&#xff0c;但是最好适用于…

JS基础之函数

js基础之函数 目录 js基础之函数什么是函数&#xff1f;函数的语法无参函数有参函数&#xff1a;函数表达式函数的返回值returnarguments 什么是函数&#xff1f; 函数的作用就是将一段代码块封装打包到一起&#xff0c;方便后期重复使用 函数的语法 function 函数名(参数1,…

使用elasticsearch 8.4.3 的管道解析日志(kibana操作)

使用elasticsearch的管道解析日志&#xff08;kibana操作&#xff09; 一. 什么是 pipeline二. 案例 前言 这是我在这个网站整理的笔记,有错误的地方请指出&#xff0c;关注我&#xff0c;接下来还会持续更新。 作者&#xff1a;神的孩子都在歌唱 以下是一个简单的文档解析案例…

Project_Euler-15 题解

Project_Euler-15 题解 题目 思路 一眼背包问题&#xff0c;再看一眼广度优先搜索&#xff0c;再看一眼排列组合&#xff0c;这里讲一讲排列组合的解法吧&#xff1a; 以 2 ∗ 2 2*2 2∗2的组合为例可以发现&#xff1a; 无论哪一种方法&#xff0c;从左上角到右下角总共需要…

【LeetCode】递归精选8题——基础递归、链表递归

目录 基础递归问题&#xff1a; 1. 斐波那契数&#xff08;简单&#xff09; 1.1 递归求解 1.2 迭代求解 2. 爬楼梯&#xff08;简单&#xff09; 2.1 递归求解 2.2 迭代求解 3. 汉诺塔问题&#xff08;简单&#xff09; 3.1 递归求解 4. Pow(x, n)&#xff08;中等&…

论文精读--Noisy Student

一个 EfficientNet 模型首先作为教师模型在标记图像上进行训练&#xff0c;为 300M 未标记图像生成伪标签。然后将相同或更大的 EfficientNet 作为学生模型并结合标记图像和伪标签图像进行训练。学生网络训练完成后变为教师再次训练下一个学生网络&#xff0c;并迭代重复此过程…

强化学习入门(Matlab2021b)-定义奖励和观察【1】

目录 1 前言2 Continuous Rewards 连续奖励3 Discrete Rewards 离散奖励4 Mixed Rewards 混合奖励5 Observation Signals 观测信号参考链接1 前言 为了指导学习过程,强化学习使用从环境生成的标量奖励信号。该信号衡量agent相对于任务目标的性能。换句话说,对于给定的观察(…

来看看投资界最关心的 Sora 几大问题

作者&#xff1a;苍何&#xff0c;前大厂高级 Java 工程师&#xff0c;阿里云专家博主&#xff0c;CSDN 2023 年 实力新星&#xff0c;土木转码&#xff0c;现任部门技术 leader&#xff0c;专注于互联网技术分享&#xff0c;职场经验分享。 &#x1f525;热门文章推荐&#xf…

如何查看 CPU 占用高的进程

1、使用 top 命令&#xff0c;查看 cpu 占用超过 100% 2、查看哪个进程占用 cpu 最高&#xff08;该案例使用阿里的 arthas 来查看&#xff09; 2.1 下载&#xff1a;curl -O https://arthas.aliyun.com/arthas-boot.jar 2.2 启动命令&#xff1a;java -jar arthas-boot.jar …

OpenAI 发布文生视频模型 Sora,普通人应该怎么做才能利益最大化?

原文链接&#xff1a; OpenAI 发布文生视频模型 Sora&#xff0c;普通人应该怎么做才能利益最大化&#xff1f; 自从 2022 年 11 月 30 日 ChatGPT 发布之后&#xff0c;每次 OpenAI 再发布新功能都跟过年一样&#xff0c;那叫一个热闹。 包括 GPT 4.0&#xff0c;GPT Store&…

深入浅出JVM(一)之Hotspot虚拟机中的对象

本篇文章思维导图 对象的创建 对象的创建可以分为五个步骤:检查类加载,分配内存,初始化零值,设置对象头,执行实例构造器 类加载检查 HotSpot虚拟机遇到一条new指令,会先检查能否在常量池中定位到这个类的符号引用,检查这个类是否类加载过 没有类加载过就去类加载类加载过就进…

LeetCode15.三数之和

题目 给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请 你返回所有和为 0 且不重复的三元组。 注意&#xff1a;答案中不可以包含重复的三元组。 …

LeetCode646. Maximum Length of Pair Chain——动态规划

文章目录 一、题目二、题解 一、题目 You are given an array of n pairs pairs where pairs[i] [lefti, righti] and lefti < righti. A pair p2 [c, d] follows a pair p1 [a, b] if b < c. A chain of pairs can be formed in this fashion. Return the length …

粉丝2000 啦,选对赛道,做正确的事情,粉丝涨到2000说明大家对我做的事情还是非常的认可的,继续坚持中,将相关资料做了视频整理

1&#xff0c;见证历史成长&#xff0c;粉丝涨到 2000 啦 2&#xff0c;把视频进行分类&#xff0c;研究xinference相关视频 【xinference】&#xff08;1&#xff09;&#xff1a;在autodl上&#xff0c;使用xinference部署chatglm3大模型&#xff0c;支持函数调用&#xff0…

网站常见的攻击类型有什么,如何针对性防护

在互联网时代&#xff0c;几乎每个网站都存在着潜在的安全威胁。这些威胁可能来自人为失误&#xff0c;也可能源自网络犯罪团伙所发起的复杂攻击。无论攻击的本质如何&#xff0c;网络攻击者的主要动机通常是谋求经济利益。这意味着不管是什么网站类型潜在的威胁一直都存在。 在…