【MySQL】库的操作
🌠 作者:@阿亮joy.
🎆专栏:《零基础入门MySQL》
🎇 座右铭:每个优秀的人都有一段沉默的时光,那段时光是付出了很多努力却得不到结果的日子,我们把它叫做扎根
目录
- 👉库的操作👈
- 查看数据库
- 删除数据库
- 创建数据库
- 修改数据库
- 备份和恢复数据库
- 查看连接情况
- 👉字符集和校验规则👈
- 查看系统默认字符集以及校验规则
- 校验规则对数据库的影响
- 👉总结👈
👉库的操作👈
查看数据库
show databases;#执行结果
+--------------------+
| Database |
+--------------------+
| information_schema |
| 105_db |
| my_db |
| mysql |
| performance_schema |
| sys |
+--------------------+
6 rows in set (0.00 sec)
如果在/var/ib/mysql路径下创建一个目录文件,那么这个目录文件也会被当成数据库的,但是不建议这么做!

删除数据库
drop database [if exists] db_name;
其中,db_name是要删除的数据库名称。if exists 是一个可选的关键字,如果使用它,当数据库不存在时不会抛出错误。
使用该语句将彻底删除整个数据库,包括其中的所有表、索引、视图、存储过程、触发器等对象,所以在使用之前需要非常谨慎。通常情况下,要先备份要删除的数据库,以防意外发生。
需要注意的是,只有拥有 drop 权限的用户才能执行该语句。

创建数据库
create database [if not exists] db_name
[create_specification [, create_specification ...]]create_specification:[default] character set charset_name[default] collate collation_name
注:
- [] 为可选项
- character set 指定数据库采用的字符集
- collate 指定数据库字符集的校验规则
- 如果没有指定字符集和校验规则,则会使用 MySQL 默认的字符集和校验规则。
查看创建数据库的详细信息
show create database db_name;


注:MySQL 是大小写不敏感的,所以 SQL 语句中的关键字可以大写,也可以小写。如果要创建的数据库与关键字冲突,可以给数据库名带上反引号 `。

修改数据库
alter database db_name
[alter_spacification [,alter_spacification]...]alter_spacification:
[default] character set charset_name
[default] collate collation_name
注:对数据库的修改主要指的是修改数据库的字符集,校验规则,并不允许修改数据库的名字。

备份和恢复数据库
mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径
示例:
mysqldump -P3306 -uroot -p -B bin_db > bin.db.sql


注:bin_db.sql 中的内容都是该数据库使用过的 SQL 语句(创建数据库,建表,导入数据),将这些 SQL 语句全部执行一次就恢复出原来的数据库。除了备份 SQL 语句,还可以直接备份数据库的数据。但是备份 SQL 语句更好,这样可以知道使用数据库时的上下文。
source /var/lib/mysql/bin_db.sql; #还原数据库



如果备份的不是整个数据库,而是其中一张表或者多个数据库,可以采用下面的语句:
#备份多张表
mysqldump -uroot -p 数据库名 表名1 表名2 > D:/mytest.sql
#备份多个数据库
mysqldump -uroot -p -B 数据库名1 数据库名2 ... > 数据库存放路径
注:如果备份一个数据库时,没有带上 -B 选项, 在恢复数据库时,需要先创建空数据库,然后使用数据库,再使用 source 来还原。
查看连接情况
show processlist;

可以告诉我们当前有哪些用户连接到我们的 MySQL,如果查出某个用户不是你正常登陆的,很有可能你的数据库被人入侵了。以后大家发现自己数据库比较慢时,可以用这个指令来查看数据库连接情况。
👉字符集和校验规则👈
MySQL 的字符集是用于定义数据库中存储和操作字符数据的规则集。MySQL 支持多种字符集,如 ASCII、Latin1、UTF-8等。
每个字符集都有一套校验规则,用于定义在特定字符集中哪些字符是有效的,哪些是无效的。MySQL 的校验规则是以校验字符集的方式实现的,即当存储或操作字符数据时,MySQL 将根据所选字符集的校验规则进行验证。校验规则还定义了如何排序和比较字符数据。
注:一般字符集和校验规则是匹配的!设置数据库的字符集和校验规则本质是影响对应数据库内部的表所对应的编码和校验规则。
查看系统默认字符集以及校验规则
variables 是指系统或用户可配置的变量,它们可以在运行时控制 MySQL 的行为和性能。MySQL 中的变量可以分为全局变量和会话变量。
全局变量是在 MySQL 服务器启动时初始化的,并且在整个 MySQL 进程的生命周期中保持不变。例如,可以使用 global 前缀来设置或获取全局变量:
set globalvariable_name = value;
select @@global.variable_name;
会话变量则只与当前会话相关,会话在连接到服务器时启动并在断开连接时结束。可以使用 session 前缀来设置或获取会话变量:
set sessionn variable_name = value;
select @@session.variable_name;
可以通过 show variables 命令来查看当前 MySQL 服务器中所有可配置变量的值和状态。
show variables like 'character_set_database';
show variables like 'collation_database';
show charset; #查看MySQL支持的字符集
show collation; #查看MySQL支持的校验规则



一个字符串可能有多种校验规则,Default collation 是该字符集对应的默认校验规则。
创建数据库时可以指定数据库的字符集和校验规则。如果没有指定字符集和校验规则,则会使用 MySQL 默认的字符集和校验规则;如果指定字符集和校验规则,就会使用指定的字符集和校验规则。

校验规则对数据库的影响
- 创建一个数据库,校验规则使用不区分大小写的 utf8_ general_ci




- 创建一个数据库,校验规则使用 区分大小写的 utf8_bin



👉总结👈
本篇博客主要讲解了数据库的查看、删除、创建、修改、备份和恢复、查看数据库连接情况以及字符集和校验规则等等。以上就是本篇博客的全部内容了,如果大家觉得有收获的话,可以点个三连支持一下!谢谢大家啦!💖💝❣️
相关文章:
【MySQL】库的操作
🌠 作者:阿亮joy. 🎆专栏:《零基础入门MySQL》 🎇 座右铭:每个优秀的人都有一段沉默的时光,那段时光是付出了很多努力却得不到结果的日子,我们把它叫做扎根 目录 👉库…...
Java设计模式之工厂模式
什么是工厂模式 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 工厂模式提供了一种将对象的实例化过程封装在工厂类中的方式。通过使用工厂模式ÿ…...
正则表达式-速成教程
正则表达式-速成教程 今天遇到一枚程序媛在群里吐槽,并附了截图;然后无意中看到她的一个正则与她的注释描述不一致,就提醒了一下。顺带着给了个速成教程,在这里把这个速成教程贴出来,一是为了自己备份;二是…...
C语言中的数组(详解)
C语言中的数组(详解) 一、一维数组1.一维数组的创建2.数组的初始化3.一维数组的使用4.一维数组在内存中的存储二、二维数组1.二维数组的创建2.二维数组的初始化3.二维数组的使用4.二维数组在内存中的存储三、数组越界四、数组作为函数参数1.冒泡排序2.数…...
【App管理04-Bug修正 Objective-C语言】
一、咱们刚才已经把这个给大家做完了吧 1.这个Label怎么显示到上面去了, 我们现在是把它加到我们的控制器的View里面吧 我们看一下这个坐标是怎么算的,来,我们找一个坐标, 咱们的坐标,是不是用这个View的frame,减的吧 来,咱们在这里,输出一下这个Frame,看一下吧 在…...
黑客自学笔记(网络安全)
一、黑客是什么 原是指热心于计算机技术,水平高超的电脑专家,尤其是程序设计人员。但后来,黑客一词已被用于泛指那些专门利用电脑网络搞破坏或者恶作剧的家伙。 二、学习黑客技术的原因 其实,网络信息空间安全已经成为海陆空之…...
action=store_true和store_false理解及实战测试
store_true 是指带触发 action 时为真,不触发则为假, 即默认 False ,传参 则 设置为 True store_false 则与之相反 以代码为例: import sys import argparse def parse_args():parser argparse.ArgumentParser(descriptionrun …...
Android 通用带箭头提示窗
简介 自定义PopupWindow, 适用于提示类弹窗。 使用自定义Drawable设置带箭头的背景,测试控件和弹窗的尺寸,自动设置弹窗的显示位置,让箭头指向锚点控件的中间位置,且根据锚点控件在屏幕的位置,自动适配弹窗显示位置。…...
隧道安全监测解决方案
隧道安全监测 解决方案 一、监测目的 通过监控量测,实现信息化施工,不仅能及时掌握隧道实际的地质情况,掌握隧道围岩、支护衬砌结构的受力特征和变形情况,据此可以尽早发现塌方、大变形等灾害征兆,及时采取措施&…...
3 Linux基础篇-VMware和Linux的安装
3 Linux基础篇-VMware和Linux的安装 文章目录 3 Linux基础篇-VMware和Linux的安装3.1 安装VMware和CentOS3.1.1 VM安装3.1.2 Centos7.6的安装步骤 3.3 虚拟机基本操作3.4 安装VMtools3.5 设置共享文件夹 学习视频来自于B站【小白入门 通俗易懂】2021韩顺平 一周学会Linux。可能…...
什么是预处理器指令,常用的预处理器指令有哪些?什么是运算符,C 语言中的运算符有哪些?
1.什么是预处理器指令,常用的预处理器指令有哪些? 预处理器指令是一种用于在源代码编译之前进行预处理的特殊指令。它们通过在程序编译之前对源代码进行处理,可以在编译阶段之前进行一些文本替换、条件编译等操作,从而对源代码进…...
新功能 – Cloud WAN:托管 WAN 服务
我很高兴地宣布,我们推出了 Amazon Cloud WAN,这是一项新的网络服务,它可以轻松构建和运营连接您的数据中心和分支机构以及多个 Amazon 区域中的多个 VPC 的广域网(WAN)。 亚马逊云科技开发者社区为开发者们提供全球的…...
FPGA_学习_13_方差计算小模块
测距器件APD的性能与器件本身的温度、施加在APD的偏置电压息息相关。 在不同的温度下,APD的偏压对测距性能的影响非常大。 要确定一个合适的APD的偏压Vopt,首先你要知道当前温度下,APD的击穿电压Vbr,一般来讲,Vopt Vb…...
如何安装多个版本的python,python可以装两个版本吗
这篇文章主要介绍了可不可以在同一台计算机上安装多个python版本,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。 1、不同版本的python不能安装到同一台计算机上 可以的&#…...
深入理解JVM:Java使用new创建对象的流程
1、创建对象的几种方式 ①new 对象 ②反射 ③对象的复制 ④反序列化 2、创建对象流程 先看看常量池里面有没有,如果有,就用常量池的看这个类有没有被加载过,如果没有,就执行类加载以及类的初始化。(对象的大小&#…...
【MySQL】索引与B+树
【MySQL】索引与B树 索引概念前导硬件软件方面 索引的理解单个page多个page引入B树B树的特征为什么B树做索引优于其他数据结构?聚簇索引与非聚簇索引辅助索引 索引的创建主键索引的创建和查看唯一键索引的创建和查看普通索引的创建和查看复合索引全文索引索引的其他…...
“使用Spring Boot快速构建Java Web应用“
标题:使用Spring Boot快速构建Java Web应用 摘要:本文介绍了如何使用Spring Boot快速构建Java Web应用。通过Spring Boot的自动配置和约定优于配置的特性,开发人员可以轻松地搭建一个简单且高效的Web应用。本文将通过一个示例代码详细演示Sp…...
面试题汇总——设计模式
简单介绍 设计模式共有23种,创建型模式5种,结构型模式7种,行为型模式11种 创建型: 关注对象的创建过程,将对象的创建和使用分开,在使用对象时无须知道对象的创建细节。对象实例化的模式,创建型模式用于解耦对象的实例化过程。单例模式、工厂方法模式、抽象工厂模式、建造…...
Java SpringMvc
0目录 java SpringMvc拓展 1.SpringMvc 创建工程,导入依赖 配置 web.xml文件 配置Spring配置文件,resources目录下新建applicationContext.xml 控制层配置 新建list.jsp并测试 Web.xml详解 如果required是true必须要传参 设置默…...
JVM运行时区域——对象创建内存分配过程
新创建的对象,都存放在伊甸园区域,当垃圾回收时,将伊甸园区域的垃圾数据销毁,然后将存活的对象转移到幸存者0区域,之后创建的新的对象还是存放在伊甸园区域,等到再次垃圾回收后,将伊甸园区域和幸…...
C++初阶-list的底层
目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...
css实现圆环展示百分比,根据值动态展示所占比例
代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...
VB.net复制Ntag213卡写入UID
本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...
微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...
MySQL账号权限管理指南:安全创建账户与精细授权技巧
在MySQL数据库管理中,合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号? 最小权限原则…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...
人机融合智能 | “人智交互”跨学科新领域
本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...
CRMEB 中 PHP 短信扩展开发:涵盖一号通、阿里云、腾讯云、创蓝
目前已有一号通短信、阿里云短信、腾讯云短信扩展 扩展入口文件 文件目录 crmeb\services\sms\Sms.php 默认驱动类型为:一号通 namespace crmeb\services\sms;use crmeb\basic\BaseManager; use crmeb\services\AccessTokenServeService; use crmeb\services\sms\…...
Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成
一个面向 Java 开发者的 Sring-Ai 示例工程项目,该项目是一个 Spring AI 快速入门的样例工程项目,旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计,每个模块都专注于特定的功能领域,便于学习和…...
【无标题】湖北理元理律师事务所:债务优化中的生活保障与法律平衡之道
文/法律实务观察组 在债务重组领域,专业机构的核心价值不仅在于减轻债务数字,更在于帮助债务人在履行义务的同时维持基本生活尊严。湖北理元理律师事务所的服务实践表明,合法债务优化需同步实现三重平衡: 法律刚性(债…...

