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;

持续更新.....

相关推荐
Database_Cool_1 小时前
单机 MySQL 迁移到分布式数据库方便吗?阿里云 PolarDB-X 100% MySQL 协议兼容零改造平滑迁移
数据库·分布式·mysql
姜太小白2 小时前
【MySQL】 索引优化实战:解决 WHERE 等值 + IS NULL 查询,TEXT 字段报错 1167 的完整指南
数据库·mysql
a1117762 小时前
2FA 验证码生成器(github登录验证 app)
笔记·学习
我的xiaodoujiao3 小时前
API 接口自动化测试详细图文教程学习系列32--Allure测试报告2
python·学习·测试工具·pytest
liuxiaowei33 小时前
【绝版教程】新版MySQL DBA高级实战进阶班 MySQL8.0 姜承尧-腾讯数据库总监
数据库·mysql·dba
破碎的南瓜4 小时前
sqli--sql注入过关笔记(1,2,3,4,5,9)
数据库·笔记·sql
你想知道什么?4 小时前
线性回归-学习笔记
笔记·学习·线性回归
鱼毓屿御4 小时前
从「只会聊」到「边想边做」的跃迁
前端·学习·react.js
谙弆悕博士5 小时前
系统集成项目管理工程师教程(第3版)笔记——第17章:法律法规和标准规范
笔记·职场和发展·学习方法·业界资讯·软考·法律·法规
AOwhisky6 小时前
Python 学习笔记(第十五期)——运维自动化(下·后篇):堡垒机实战——paramiko高阶篇
运维·python·学习·云原生·自动化·运维开发