MYSQL 学习笔记

一 数据库备份恢复(导出/导入)

备份命令

命令 解释
mysqldump -u <username> -p <database-name> > <backup-file>.sql 备份指定数据库为 SQL 文件。<br>使用 -u 指定用户名,-p 提示输入密码。
mysqldump -u <username> -p --all-databases > <backup-file>.sql 备份所有数据库。
mysqldump -u <username> -p --databases <database1> <database2> > <backup-file>.sql 备份多个指定的数据库。
mysqldump -u <username> -p --single-transaction --quick <database-name> > <backup-file>.sql 使用单一事务和快速模式进行备份,适用于大型数据库。<br>保证备份时不锁定表。

恢复命令

命令 解释
mysql -u <username> -p <database-name] < <backup-file>.sql 恢复 SQL 备份文件到指定的数据库。<br>使用 -u 指定用户名,-p 提示输入密码。
mysql -u <username> -p < <backup-file>.sql 恢复到默认数据库,适用于备份整个数据库。
mysql -u <username> -p --database=<database-name> < <backup-file>.sql 恢复备份文件到指定的数据库。

导出数据到 CSV 文件

将表格数据导出到 CSV 文件:

SELECT * FROM <table-name> INTO OUTFILE '/path/to/output.csv' FIELDS TERMINATED BY ','

ENCLOSED BY '"'

LINES TERMINATED BY '\n';

导入 CSV 数据

将 CSV 文件数据导入到表:

LOAD DATA INFILE '/path/to/input.csv' INTO TABLE <table-name> FIELDS TERMINATED BY ','

ENCLOSED BY '"'

LINES TERMINATED BY '\n';

表关联

用于查询多个表中的数据,关联的表中必须有相同的字段。

inner join :仅仅返回2个表中都有的数据。

left join :返回左表中的所有数据+ 右表中匹配的数据 ,右表中没有匹配的数据,用null填充。

right join:返回右表中的所有数据+ 左表中匹配的数据 ,左表中没有匹配的数据,用null填充。

select * from player

inner join equip

on

pleary.id = equip.pleary_id;

索引index

用来提高查询速率的数据结构,帮助用户快速地定位到想要查询的数据。

可以在建表时创建索引,也可以修改表结构的时候创建索引。

复制代码
select * from pleary;
# 创建索引的语法:
# unique 唯一索引
# fulltext 全文索引
# spatial 空间索引
# (index_col_name, ...) 对那些字段创建索引


create [unique|fulltext|spatial] index index_name 
    on tbl_name (index_col_name, ...)


#eg:
creat index email_index on fast (email) 为fast表的email列创建索引
show index from fast  查看索引
drop index email_index on fast/表名   删除索引

#修改表结构时创建索引:
alter table fast index email_index (email/name字段)

fast的由于添加了索引,查询特别快。

创建视图

使用creat view命令创建视图。

create view top10

AS

select * from player order by level desc limit 10;

select * from top10;

持续更新.....

相关推荐
廿一夏5 小时前
MySql存储引擎与索引
数据库·sql·mysql
辰海Coding5 小时前
MiniSpring框架学习笔记-解决循环依赖的简化IoC容器
笔记·学习
晓梦林6 小时前
cp520靶场学习笔记
android·笔记·学习
心中有国也有家7 小时前
cann-recipes-infer:昇腾 NPU 推理的“菜谱集合”
经验分享·笔记·学习·算法
玄米乌龙茶1237 小时前
LLM成长笔记(三):API 开发基础
笔记
Upsy-Daisy7 小时前
AI Agent 项目学习笔记(八):Tool Calling 工具调用机制总览
人工智能·笔记·学习
敲个大西瓜8 小时前
Java项目常用数据归档方式
mysql
LuminousCPP8 小时前
数据结构 - 线性表第四篇:C 语言通讯录优化升级全记录(踩坑 + 思考)
c语言·开发语言·数据结构·经验分享·笔记·学习
魔法阵维护师8 小时前
从零开发游戏需要学习的c#模块,第十四章(保存和加载)
学习·游戏·c#
_李小白9 小时前
【android opencv学习笔记】Day 17: 目标追踪(MeanShift)
android·opencv·学习