MySQL数据库操作

上篇专栏博客我们讲解了MySQL的基础概念,这篇博客我们将学习MySQL的指令啦~~

1.登陆与查看数据库内容

登录我们用最简单的 : mysql -u root;

查看数据库 : show databases;

2.创建数据库

1.创建不加条件的数据库

创建数据库 : create database [数据库名字];

2.创建带[IF NOT EXISTS]的数据库

这个的意思是如果存在该数据库就不要创建了,如果不存在就可以创建

创建数据库 : create database if not exists [数据库名字];

3.创建字符集和校验规则的数据库

在数据库(如 MySQL)中,字符集校验规则是两个核心概念:

  • 字符集(Character Set) :定义了数据库可以存储哪些字符,以及这些字符如何被编码为二进制数据。例如,utf8mb4 字符集支持存储几乎所有的 Unicode 字符(包括表情符号),而 latin1 只支持西欧字母。

  • 校验规则(Collation) :在同一个字符集内,定义了字符之间如何比较和排序的规则。例如,是否区分大小写、是否区分重音等。常见的如 utf8mb4_general_cici 表示 case-insensitive,不区分大小写),utf8mb4_bin 则按二进制值严格比较。

简言之:字符集决定"能存什么",校验规则决定"怎么比较和排序"。创建数据库时可以同时指定两者

设置字符集 :charset=utf8
设置校验规则 :collate utf8_general_ci
查看系统默认字符集以及校验规则
show variables like 'character_set_database';
show variables like 'collation_database';

查看数据库支持的字符集
show charset;

查看数据库支持的字符集校验规则
show collation;

4.字符集和校验规则不同的数据库产生的不同效果

创建一个读取时不区分大小写的数据库test1

创建一个读取时区分大小写的数据库test2

3.删除数据库

drop database [数据库名字]


执行删除之后的结果:
数据库内部看不到对应的数据库
对应的数据库文件夹被删除,级联删除,里面的数据表全部被删
***注意:不要随意删除数据库

4.查看所在数据库以及所在数据库里面的table信息

查看所在数据库 :select database();
table信息 :show tables;

5.数据库的修改

目前我们没什么好修改的内容,那么我们这里只简绍一下如何修改字符集与校验集

alter database [数据库名字] charset=[...] collate [...]

6.数据库的备份与恢复

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

恢复 : source 数据库备份存储的文件路径/要恢复的数据库名字;

备份

恢复


注意事项
1.如果备份的不是整个数据库,而是其中的一张表,怎么做?

mysqldump -u root -p 数据库名 表名1 表名2 > D:/mytest.sql

2.如何同时备份多个数据库

mysqldump -u root -p -B 数据库名1 数据库名2 ... > 数据库存放路径

3.如果备份一个数据库时,没有带上-B参数,在恢复数据库时,需要先创建空数据库,然后使用数据库,再使用source来还原

7.查看连接情况

show processlist;


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

好啦,这就是关于数据库的操作命令啦,注意哦,只针对数据库的,下篇博客我们将讲解数据库里面的表(table)操作,敬请期待啦~~

相关推荐
Aision_1 小时前
从工具调用到 MCP、Skill完整学习记录
java·python·gpt·学习·langchain·prompt·agi
剑飞的编程思维1 小时前
真实学习本质-坚持思考的人
学习
AI浩1 小时前
学习嵌入位置:面向小目标检测查询检索的噪声感知位置编码
人工智能·学习·目标检测
辞旧 lekkk5 小时前
【Qt】信号和槽
linux·开发语言·数据库·qt·学习·mysql·萌新
2301_809204706 小时前
JavaScript中严格模式use-strict对引擎解析的辅助.txt
jvm·数据库·python
zjy277776 小时前
mysql如何选择合适的索引类型_mysql索引设计实战
jvm·数据库·python
笨蛋不要掉眼泪7 小时前
Mysql架构揭秘:update语句的执行流程
数据库·mysql·架构
万邦科技Lafite7 小时前
京东item_get接口实战案例:实时商品价格监控全流程解析
java·开发语言·数据库·python·开放api·淘宝开放平台
liuhuizuikeai8 小时前
可视化门禁---Linux/Qt+SqLite篇
linux·运维·qt
秋98 小时前
ruoyi项目更换为mysql9.7.0数据库
数据库