当前位置: 首页 > news >正文

数据库之MySQL字符集与数据库操作

目录

字符集

CHRARCTER SET 与COLLATION的关联

CHRARCTER SET

定义

基础操作

        查看当前MySQL Server支持的 CHARACTER SET

        查看特定字符集信息(主要包含默认的COLLATION 与 MAXLEN)

COLLATION

定义

COLLATION后缀

基础操作

        查看MySQL Server支持的COLLATION

MySQL Server 默认的Charset和COLLATION

utf8和utf8mb4的区别

查看MySQL Server当前的Charset和COLLATION

修改MySQL Server默认的Charset和COLLATION

修改my.cnf配置文件,一般在/etc目录下的

        注意:如果出现my.cnf文件无内容解决方法

修改或添加以下内容到 [mysql] 字节中

修改或添加以下内容到 [client] 字节中

重启MySQL服务

登陆MySQL

查看当前的Charset和COLLATION

指定MySQL Server的Charset和Collation

MySQL数据库操作

查看

语法格式

功能

解析自带数据库

查看所创建的数据库

创建

语法格式

功能

案例

删除

语法格式

功能

案例

切换

语法格式

功能

案例

查看当前连接的数据库

查看数据库版本

查看当前用户

执行对应系统命令

语法格式

作用

案例


字符集

        MySQL字符集包括字符集(CHARACTER)和校对规则(COLLATION)

CHRARCTER SET 与COLLATION的关联

  • MySQL服务器支持多种字符集(Character Set)
  • 每个字符集至少有一个Collation
  • 大部分字符集都有多个Collation
  • 每个字符集都有一个默认的Collation
  • 两个不同的字符集不会有相同的Collation
  • MySQL可以在服务器、数据库、表或字段级别指定使用的字符集

CHRARCTER SET

定义

        Chrarcter set --- 一套字符及其编码,即字符集(一般也是用Charrset这一词)

基础操作

查看当前MySQL Server支持的 CHARACTER SET

mysql> show character set;mysql> show charset;mysql> show char set;mysql> select * from information_schema.character_sets;四种方法任意一种即可

查看特定字符集信息(主要包含默认的COLLATION 与 MAXLEN)

        此处查找所有关于utf的字符集

mysql> show character set like 'utf%';mysql> show charset like 'utf%';mysql> show char set like 'utf%';mysql> select * from information_schema.character_sets where CHARACTER_SET_NAME like 'utf%';四种方法任意一种即可

COLLATION

定义

      Collation --- 在字符集内用于比较排序字符的一套规则,即效验规则 

COLLATION后缀

SUFFIX(后缀)MEANING(意义)
_aiAccent-insensitive(不区分重音,相当于不知道关键字)
_asAccent-sensitive(区分重音)
_ciCase-insensitive(不区分大小写)
_csCase-sensitive(区分大小写)
_ksCase-sensitive(区分假名)
_binBinary(二进制)

基础操作

查看MySQL Server支持的COLLATION

mysql> SHOW COLLATION WHERE Charset = 'utf8mb4';

MySQL Server 默认的Charset和COLLATION

  • <=5.7 doc MySQL Server 5.7或之前版本默认的Charset和Collation是: latin1 和 latin1_swedish_ci
  • 8.x doc MySQL Server 8.x(当前版本)默认的Charset和Collation是: utf8mb4 和 utf8mb4_0900_ai_ci

utf8和utf8mb4的区别

        mb4 000 就是most bytes 4的意思,专门用来兼容四字节的unicode

        utf8 编码最大字符长度为 3 字节,如果遇到 4 字节的宽字符就会插入异常了,所以缺少 Emoji 表情,很多不常用的汉字,以及任何新增的 Unicode 字符

        也就相当于UTF8mb4是我们正常情况下所熟知的UTF-8

查看MySQL Server当前的Charset和COLLATION

mysql> show variables like 'character_set_server';mysql> show variables like 'collation_server';mysql> select @@character_set_server, @@collation_server;

修改MySQL Server默认的Charset和COLLATION

修改my.cnf配置文件,一般在/etc目录下的

[root@localhost ~]# vim /etc/my.cnf

注意:如果出现my.cnf文件无内容解决方法

        打开/etc/mysql/my.cnf 发现里面没有[mysql]、[mysqld]等内容 ,但却指向了其他地方的配置文件

        1.查找当前所指目录

[root@localhost /]# ls /etc/my.cnf.d/

        2.查看[MySQLD]字节所属地,我的在mysql-default-authentication-plugin.cnf 中

[root@localhost /]# vim /etc/my.cnf.d/mysql-server.cnf 

        3.查看[client]字节所属地,我的在client.cnf文件中

[root@localhost /]# vim etc/my.cnf.d/client.cnf 

修改或添加以下内容到 [mysql] 字节中

default_character_set=utf8

 

修改或添加以下内容到 [client] 字节中

default-character-set=utf8

重启MySQL服务

[root@localhost /]# systemctl restart mysqld.service 

 未出现报错,则表示重启成功

登陆MySQL

[root@localhost /]# mysql -uroot -p

查看当前的Charset和COLLATION

mysql> select @@character_set_server, @@collation_server;

指定MySQL Server的Charset和Collation

创建一个指定Charset和Collation的数据库
create database 数据库名 default character set 字符集 collate collation;mysql> CREATE DATABASE SECOND_DB DEFAULT CHARACTER SET GBK COLLATE  GBK_CHINESE_CI;

修改一个指定Charset和Collation的数据库
alter database 数据库名 character set 字符集 collate collation;mysql> ALTER DATABASE FIRST_DB CHARACTER SET GBK COLLATE GBK_CHINESSE_CI;

MySQL数据库操作

查看

语法格式

SHOW DATABASES [LIKE wild];

功能

        列出在MySql服务器主机上的数据库

解析自带数据库

Information_schema --- 主要存储了系统中的一些数据库对象信息:如用户表信息、列信息、权限信

performance_schema --- 主要存储数据库服务器的性能参数

mysql --- 存储了系统的用户权限信息帮助信息

sys ---5.7新增,之前版本需要手工导入。这个库是通过视图的形式把information_schema 和performance_schema结合起来,查询出更加令人容易理解的数据 

查看所创建的数据库

SHOW CREATE DATABASE <数据库名>;

解析:

       CREATE DATABASE `FIRST_DB` --- 代表数据库名字为 FIRST_DB

       /*!40100 DEFAULT CHARACTER SET gbk */  --- 代表其默认的字符集为GBK

       /*!80016 DEFAULT ENCRYPTION='N' */ ---  默认加密为 N

/*!  数字    代码  */  --- 可以跨行注释,但是一定要闭合,不然出错

创建

语法格式

CREATE DATABASE [IF NOT EXISTS]数据库名;

功能

        用给定的名字创建一个数据库

注意:

          如果数据库已经存在,发生一个错误。

案例

        创建数据库 test1

mysql> CREATE DATABASE test1;

删除

语法格式

 DROP DATABASE [IF EXISTS]数据库名;

功能

        删除数据库中得所有和数据库

注意:

        要小心使用这个命令(慎用)

案例

        删除所创建的test1

mysql> DROP DATABASE test1;

切换

语法格式

 USE 数据库名;

功能

        把指定数据库作为默认(当前)数据库使用,用于后续语句

案例

        将当前数据库切换到SECOND_DB

mysql> USE SECOND_DB;

查看当前连接的数据库

mysql> SELECT DATABASE();

查看数据库版本

mysql> SELECT VERSION();

查看当前用户

mysql> SELECT USER();

执行对应系统命令

语法格式

SYSTEM <命令>

作用

        在mysql中执行一些Linux上的操作命令

案例

mysql> system ls 

mysql> system date

mysql> system cls | clear

 注意:

        可以使用管道符“ | ”,在mysql也生效

相关文章:

数据库之MySQL字符集与数据库操作

目录 字符集 CHRARCTER SET 与COLLATION的关联 CHRARCTER SET 定义 基础操作 查看当前MySQL Server支持的 CHARACTER SET 查看特定字符集信息&#xff08;主要包含默认的COLLATION 与 MAXLEN&#xff09; COLLATION 定义 COLLATION后缀 基础操作 查看MySQL Server支持的…...

搜索引擎概念解析

搜索引擎概念解析 什么是搜索引擎 MySQL搜索引擎举例 搜索引擎是一种用于在互联网上搜索并呈现相关信息的工具。它通过自动扫描和索引大量网页内容&#xff0c;并根据用户提供的关键词或查询条件&#xff0c;返回与之相关的网页链接和摘要。 当用户在搜索引擎中输入关键词或…...

网页链接投票链接步骤公众号投票链接制作制作投票

大家在选择投票小程序之前&#xff0c;可以先梳理一下自己的投票评选活动是哪种类型&#xff0c;目前有匿名投票、图文投票、视频投票、赛事征集投票等。 我们现在要以“笛乐悠扬”为主题进行一次投票活动&#xff0c;我们可以在在微信小程序搜索&#xff0c;“活动星”投票小程…...

【通信安全CACE-管理类基础级】第7章 安全运维

资源 中国通信企业协会网络安全人员能力认证考试知识点大纲 中国通信企业协会网络安全人员能力认证管理类基础级考试课件 中国通信企业协会网络安全人员能力认证考试管理类基础级复习资料 中国通信企业协会网络安全人员能力认证考试管理类基础级模拟题 系列文章 【通信安全CAC…...

随手笔记——将ROS图像话题转为OpenCV图像格式处理后再转为ROS图像话题发布(Python版)

随手笔记——将ROS图像话题转为OpenCV图像格式处理后再转为ROS图像话题发布&#xff08;Python版&#xff09; 说明关键函数代码 说明 将ROS图像话题转为OpenCV图像格式处理后再转为ROS图像话题发布&#xff0c;主要通过CvBridge的cv2_to_imgmsg和imgmsg_to_cv2函数&#xff0…...

Win11系统如何安装Oracle数据库(超级详细)

前言&#xff1a;在我们安装Oracle之前我们得理解Oracle数据库的优点是什么&#xff1a; Oracle是一个功能强大、可扩展和全面的数据库平台&#xff0c;具有广泛的功能和企业级能力&#xff0c;适用于处理复杂的企业级应用和大型数据集。 目录 一.下载Oracle数据库软件&…...

【代理服务器】Squid 反向代理与Nginx缓存代理

目录 一、Squid 反向代理1.1工作机制1.2反向代理实验1.3清空iptables规则&#xff0c;关闭防火墙1.4验证 二、使用Nginx做反向代理缓存服务器三CDN简介3.1什么是CDN3.1CDN工作原理 一、Squid 反向代理 如果 Squid 反向代理服务器中缓存了该请求的资源&#xff0c;则将该请求的…...

目标检测之遮挡物体检测

一、遮挡的类别 类内遮挡&#xff0c;目标被同一类别的目标遮挡类间遮挡&#xff0c;目标被其它类别的目标遮挡 二、解决方法 数据标注 精调遮挡目标的GT边界框 数据增强 cutout&#xff1a;在训练时&#xff0c;随机mask目标&#xff0c;提升模型对遮挡的应对能力mosaic…...

Vim 命令大全

文章目录 Vim 命令大全移动光标编辑文本查找和替换保存和退出打开多个文件&#xff1a;在文件之间切换&#xff1a;打开新窗口切换窗口其他常用命令 Vim 命令大全 移动光标 h: 左移光标j: 下移光标k: 上移光标l: 右移光标0: 移动光标到行首$: 移动光标到行末G: 移动光标到文件…...

【Visual Studio】printf() 函数无输出显示问题。使用 C++ 语言,配合 Qt 开发串口通信界面

使用 C 语言&#xff0c;配合 Qt 开发串口通信界面时&#xff0c;遇到 printf() 函数无输出显示。 在工程属性的对应位置添加 editbin /SUBSYSTEM:CONSOLE $(OUTDIR)\$(ProjectName).exe 即可&#xff0c;如下图所示。 成功运行的截图如下&#xff1a; Ref. Visual Studio 20…...

Linux安装配置Oracle+plsql安装配置(详细)

如果觉得本文不够详细&#xff0c;没有效果图&#xff0c;可移步详细版&#xff1a; Linux安装配置Oracleplsql安装配置&#xff08;超详细&#xff09;_超爱慢的博客-CSDN博客 目录 1.安装虚拟机系统 1.安装虚拟机 2.配置虚拟机 1.设置机器名 2.修改域名映射 3.固定IP…...

软件UI工程师的职责模板

软件UI工程师的职责模板1 职责&#xff1a; 1.负责产品的UI视觉设计(手机软件界面 网站界面 图标设计产品广告及 企业文化的创意设计等); 2.负责公司各种客户端软件客户端的UI界面及相关图标制作; 3.设定产品界面的整体视觉风格; 4.为开发工程师创建详细的界面说明文档&…...

【Python】Selenium操作cookie实现免登录

文章目录 一、查看浏览器cookie二、获取cookie基本操作三、获取cookie并实现免登录四、封装成函数 一、查看浏览器cookie cookie、session、token的区别&#xff1a; cookie存储在浏览器本地客户端&#xff0c;发送的请求携带cookie时可以实现登录操作。session存放在服务器。…...

【数据结构与算法篇】之时间复杂度与空间复杂度

【数据结构与算法篇】之时间复杂度与空间复杂度 一、时间复杂度1.1时间复杂度的定义1.2 常见的时间复杂度的计算1.2.1 常数时间复杂度&#xff08; O ( 1 ) ) O(1)) O(1))1.2.2 线性时间复杂度&#xff08; O ( N ) O(N) O(N)&#xff09;1.2.3 对数时间复杂度&#xff08; O (…...

硬件性能 - 网络瓶颈分析

简介 本文章主要通过Linux命令查看网络信息、判断是否出现网络瓶颈等简单分析方法。其他硬件性能分析如下&#xff1a; 1. 硬件性能 - CPU瓶颈分析 2. 硬件性能 - 掌握内存知识 3. 硬件性能 - 磁盘瓶颈分析 目录 1. 监控命令 sar 2. 带宽利用率 3. 网络延迟 4. 网络连接数 …...

stm32驱动MCP2515芯片,项目已通过测试

最近公司做一个项目&#xff0c;需要3路can通道&#xff0c;但是stm32看了很久&#xff0c;最多也就只有2个can&#xff0c;所以找到了一款MCP2515芯片&#xff0c;可以用spi驱动can。 已经实现了can的发送和接收&#xff0c;接收采用的是外部中断接收的方式。和单片机本身带的…...

Nginx部署前后端分离项目

dev.env.js解释 //此文件时开发环境配置文件 use strice//使用严格模式 const merge require(webpacl-merge)//合并对象 const prodEnv require(./prod.env)//导出 module.exports merge(prodEnv,{//合并两个配置文件对象并生成一个新的配置文件&#xff0c;如果合并的过程…...

pytorch多分类问题 CrossEntropyLoss()函数的输入size/shape不一致问题

在使用pytorch实现一个多分类任务的时候&#xff0c;许多多分类任务在训练过程中都会有如下的代码&#xff1a; criterion nn.CrossEntropyLoss() loss criterion(output, target) # output.size : [batch_size, class_num] # target.size : [batch_size]许多的初学者会卡在…...

硬盘或者U盘提示需要格式化的解决办法

插入硬盘之后提示&#xff1a; 使用驱动器 G:中的光盘之前需要将其格式化 是否要将其格式化? 如下图所示 顿时慌了啊&#xff0c;里面还有比较重要的东西呢&#xff0c;这一下子完蛋&#xff1f; 遇事找某宝&#xff0c;上面估计有这种技术服务。果然有这一类的技术服务&…...

Clip-Path

前言 借助clip-path,我们可以实现一些复杂的animation动画效果,我们先来简单概述一下它的特性,如MDN所描述的。 The clip-path CSS property creates a clipping region that sets what part of an element should be shown. Parts that are inside the region are shown, whi…...

从WWDC看苹果产品发展的规律

WWDC 是苹果公司一年一度面向全球开发者的盛会&#xff0c;其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具&#xff0c;对过去十年 WWDC 主题演讲内容进行了系统化分析&#xff0c;形成了这份…...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表&#xff0c;若其中包含环&#xff0c;则输出环的入口节点。 若其中不包含环&#xff0c;则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX&#xff08;不访问内存&#xff09;XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存

文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版

7种色调职场工作汇报PPT&#xff0c;橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版&#xff1a;职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...

短视频矩阵系统文案创作功能开发实践,定制化开发

在短视频行业迅猛发展的当下&#xff0c;企业和个人创作者为了扩大影响力、提升传播效果&#xff0c;纷纷采用短视频矩阵运营策略&#xff0c;同时管理多个平台、多个账号的内容发布。然而&#xff0c;频繁的文案创作需求让运营者疲于应对&#xff0c;如何高效产出高质量文案成…...

基于 TAPD 进行项目管理

起因 自己写了个小工具&#xff0c;仓库用的Github。之前在用markdown进行需求管理&#xff0c;现在随着功能的增加&#xff0c;感觉有点难以管理了&#xff0c;所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD&#xff0c;需要提供一个企业名新建一个项目&#…...

【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制

使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下&#xff0c;限制某个 IP 的访问频率是非常重要的&#xff0c;可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案&#xff0c;使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...

js 设置3秒后执行

如何在JavaScript中延迟3秒执行操作 在JavaScript中&#xff0c;要设置一个操作在指定延迟后&#xff08;例如3秒&#xff09;执行&#xff0c;可以使用 setTimeout 函数。setTimeout 是JavaScript的核心计时器方法&#xff0c;它接受两个参数&#xff1a; 要执行的函数&…...

【版本控制】GitHub Desktop 入门教程与开源协作全流程解析

目录 0 引言1 GitHub Desktop 入门教程1.1 安装与基础配置1.2 核心功能使用指南仓库管理日常开发流程分支管理 2 GitHub 开源协作流程详解2.1 Fork & Pull Request 模型2.2 完整协作流程步骤步骤 1: Fork&#xff08;创建个人副本&#xff09;步骤 2: Clone&#xff08;克隆…...