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;

持续更新.....

相关推荐
nbsaas-boot1 小时前
Java 正则表达式白皮书:语法详解、工程实践与常用表达式库
开发语言·python·mysql
数字芯片实验室2 小时前
分享一个可以学习正则表达式的网址:Pythex.org
学习·正则表达式
陈洪奇2 小时前
注册中心学习笔记整理
笔记·学习
光影少年2 小时前
从前端转go开发的学习路线
前端·学习·golang
sun0077004 小时前
mysql索引底层原理
数据库·mysql
程序员秘密基地4 小时前
基于html,css,vue,vscode,idea,,java,springboot,mysql数据库,在线旅游,景点管理系统
java·spring boot·mysql·spring·web3
兴趣使然_5 小时前
【笔记】使用 html 创建网址快捷方式
笔记·html·js
叁沐7 小时前
MySQL 11 怎么给字符串字段加索引?
mysql
aramae7 小时前
C++ -- STL -- vector
开发语言·c++·笔记·后端·visual studio
fen_fen7 小时前
学习笔记(32):matplotlib绘制简单图表-数据分布图
笔记·学习·matplotlib