【MySQL】MySQL库的操作

> 作者:დ旧言~

> 座右铭:松树千年终是朽,槿花一日自为荣。

> 目标:掌握对库操作的语句并能熟练掌握。

> 毒鸡汤:有些事情,总是不明白,所以我不会坚持。早安!

> 专栏选自:带你玩转MySQL

> 望小伙伴们点赞👍收藏✨加关注哟💕💕

​​

一、前言

想必大家在学校也学习过MySQL,可能学的懵懵懂懂,这个板块我们从入门开始,从最新的安装MySQL到学习MySQL语句,一步一步开始,一切都是新的,新的板块新的开始,大家一起努力,一起进步!!!

主体

学习【MySQL】MySQL库的操作咱们按照下面的图解:

2.1创建数据库

语法使用:

cpp 复制代码
CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [,
create_specification] ...]
create_specification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name

讲解说明:

  • **create database:**表示为 固定用法
  • **db_name:**表示为数据库名称
  • **[IF NOT EXISTS]:**表示可选项
  • **CHARACTER SET:**指定数据库采用的字符集
  • **COLLATE:**指定数据库字符集的校验规则

创建数据库:

语句:

cpp 复制代码
create database if not exists test1;

效果:

解释:

IF NOT EXISTS 表示:当前数据库不存在 test1,则创建数据库。

2.2数据库编码问题

创建数据库时,有两个编码集:

  1. 数据库的字符集
  2. 数据库的校验集

创建一个使用utf8字符集的 db2 数据库:

cpp 复制代码
create database db2 charset=utf8;

创建一个使用utf字符集,并带校对规则的 db3 数据库:

cpp 复制代码
create database db3 charset=utf8 collate utf8_general_ci;

2.2.1查看系统默认支持的字符集

系统默认支持的字符集:

cpp 复制代码
show variables like 'character_set_database';

系统默认支持的字符集校验规则:

cpp 复制代码
show variables like 'collation_database';

2.2.2查看数据库支持的字符集

语法:

cpp 复制代码
show charset;

结果:

分析:

字符集主要是控制用什么语言,例如:utf8 就可以使用中文。

2.2.3查看数据库支持的字符集校验规则

语法:

cpp 复制代码
show collation;

结果:

2.2.4校验规则对数据库的影响

字符集编码格式和字符集校验规则的区别:

  • 字符集编码格式指的是在存储数据时各个字符的底层编码,用于指定数据的存储格式。
  • 字符集校验规则是在字符集内用于比较字符的一套规则,用于对数据进行对比。

校验规则对数据库的影响:

字符集编码格式和校验规则必须是对应的,但实际上同一种字符集编码格式一般会有多种可选择的校验规则,比如 utf8编码格式的校验规则有 utf8_general_ci、utf8_bin、utf8_unicode_ci等校验规则。使用不同的校验规则操作数据库中的数据可能会得到不同的结果。例如:utf8_general_ci校验规则在进行比对数据时是不区分大小写的,而utf8_bin校验规则在对比数据时是区分大小写的。

2.3操作数据库


2.3.1查看数据库

语法:

cpp 复制代码
show databases;

效果:

解释:

使用 show databases 可以查看系统中所有的数据库。

2.3.2显示创建语句

语法:

cpp 复制代码
show create database test1;

效果:

解释:

  • 使用 show create database + 数据库名 可以查看对应数据库的创建语句。
  • /*!40100 DEFAULT CHARACTER SET utf8 */ 不是表示注释,而是表示当前MySQL的版本如果大于 4.10,则执行后面的SQL语句。

2.3.3修改数据库

语法:

cpp 复制代码
ALTER DATABASE db_name [[DEFAULT] CHARSET=character_name] [[DEFAULT] COLLATE=collation_name];

效果:

解释:

这里的修改数据库指的是修改数据库的字符集或校验规则。

2.3.4删除数据库

语法:

cpp 复制代码
DROP DATABASE [IF EXISTS] db_name;

效果:

解释:

删除数据库后该数据库对应的文件夹就被删除了。

解释:

这里需要说明的是,删除数据库后,该数据库下的所有表也会都被级联删除,因此不要随便删除数据库。

2.4数据库的备份和恢复


2.4.1数据库的备份

语法:

cpp 复制代码
mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径

使用:

cpp 复制代码
mysqldump -P3306 -u root -p123456 -B mytest > D:/mytest.sql

解释:

这时,可以打开看看 mytest.sql 文件里的内容,其实把我们整个创建数据库,建表,导入数据的语句 都装载这个文件中。

2.4.2数据库的恢复

语法:

cpp 复制代码
source 数据库备份存储的文件路径

使用:

cpp 复制代码
mysql> source D:/mysql-5.7.22/mytest.sql;

2.4.3表的删除与恢复

表备份:

cpp 复制代码
mysqldump -P3306 -u root -p Test student > /root/MySQL/table.sql

使用:

删表:

表恢复:

cpp 复制代码
source /root/MySQL/table.sql;

效果:

2.5查看连接情况

语法:

cpp 复制代码
show processlist;

效果:

解释:

可以告诉我们当前有哪些用户连接到我们的MySQL,如果查出某个用户不是你正常登陆的,很有可能你 的数据库被人入侵了。以后大家发现自己数据库比较慢时,可以用这个指令来查看数据库连接情况。

三、结束语

今天内容就到这里啦,时间过得很快,大家沉下心来好好学习,会有一定的收获的,大家多多坚持,嘻嘻,成功路上注定孤独,因为坚持的人不多。那请大家举起自己的小手给博主一键三连,有你们的支持是我最大的动力💞💞💞,回见。

​​ 、

相关推荐
小蜜蜂嗡嗡15 分钟前
Android Studio flutter项目运行、打包时间太长
android·flutter·android studio
aqi0021 分钟前
FFmpeg开发笔记(七十一)使用国产的QPlayer2实现双播放器观看视频
android·ffmpeg·音视频·流媒体
zhangphil2 小时前
Android理解onTrimMemory中ComponentCallbacks2的内存警戒水位线值
android
你过来啊你2 小时前
Android View的绘制原理详解
android
移动开发者1号5 小时前
使用 Android App Bundle 极致压缩应用体积
android·kotlin
移动开发者1号5 小时前
构建高可用线上性能监控体系:从原理到实战
android·kotlin
ii_best10 小时前
按键精灵支持安卓14、15系统,兼容64位环境开发辅助工具
android
美狐美颜sdk10 小时前
跨平台直播美颜SDK集成实录:Android/iOS如何适配贴纸功能
android·人工智能·ios·架构·音视频·美颜sdk·第三方美颜sdk
恋猫de小郭15 小时前
Meta 宣布加入 Kotlin 基金会,将为 Kotlin 和 Android 生态提供全新支持
android·开发语言·ios·kotlin
aqi0015 小时前
FFmpeg开发笔记(七十七)Android的开源音视频剪辑框架RxFFmpeg
android·ffmpeg·音视频·流媒体