MysqL进阶 - 易错知识点整理(待更新)
本文根据CSDN MySQL进阶技能树整理的易错知识点,参考资料MySQL八股文连环45问,你能坚持第几问?
文章目录
一、MysqL日志
-
通用查询日志(记录MySQL的所有连接和语句,默认是关闭;设置
general_log = 1
, 配置general_log_file
路径),可参考MySQL 数据库管理之 — 日志查询 -
慢查询日志(记录所有执行时间超过
long_query_time
秒的语句,可以找到哪些查询语句执行时间长,以便提醒优化;设置slow_log = 1
, 配置slow_log_file
路径),可参考MySQL 慢查询,MySQL 数据库管理之 — 日志查询 -
错误日志(记录当MySQL启动、停止或运行时发生的错误信息;配置
log_error
路径),可参考MySQL 数据库管理之 — 日志查询 -
二进制日志(记录了数据的更改,可用于数据恢复;配置
log_bin
路径),可参考MySQL 数据库管理之 — 日志查询,MySQL二进制日志 - 恢复数据
二、备份与恢复
-
备份和恢复(数据库备份可以分为物理备份和逻辑备份),可参考MYSQL的备份和恢复,MySQL 数据库管理之 — 备份与恢复
Note:- 造成数据丢失的原因:程序错误;人为操作错误;运算错误磁盘故障;灾难(如火灾、地震)和盗窃。
-
物理备份是对数据库操作系统的物理文件(如数据文件、日志文件等)的备份。这种类型的备份适用于在出现问题的时候需要快速恢复的大型重要数据库。
物理备份又可以成为冷备份(脱机备份)、热备份(连接备份)和温备份
① 冷备份 (脱机备份) :是在关闭数据库的时候进行的(tar)
② 热备份 (联机备份) :数据库处于运行状态,依赖于数据库的日志文件(MysqLhotcopy MysqLbackup)
③ 温备份 :数据库锁定表格(不可写入但可读)的状态下进行备份操作(MysqLdump
) -
逻辑备份是对数据库逻辑组件的备份,表示为逻辑数据库结构。这种类型的备份适用于可以编辑数据值或表结构。可分为完全备份、差异备份和增量备份。
①完全备份:每次对数据库进行完整的备份
②差异备份:备份自从上次完全备份之后被修改过的文件
③增量备份:只有在上次完全备份或者增量备份后被修改的文件才会被备份
-
灾难恢复,可参考MYSQL的备份和恢复,MySQL 数据库管理之 — 备份与恢复,MySQL之—崩溃-修复损坏的innodb: innodb_force_recovery
Note:
增量恢复类型
三、用户和权限
-
创建用户1(
GRANT
可创建带有明文密码的用户,可赋予用户在某表上的增/删/查的权限),创建用户2,可参考详细介绍MySQL中的用户与权限管理
Note:-
CREATE USER 'kangshifu'@'localhost' IDENTIFIED BY '123456';
,主机名为localhost
,密码为123456
-
GRANT ALL PRIVILEGES ON *.* TO joe@'%' IDENTIFIED BY '123';
-
ALL PRIVILEGES
:赋予所有权限 -
ON *.*
:指定权限针对所有库和表 -
joe@'localhost’
表示joe用户,@
后面接跟制的主机(比如192.168.136.128
),可以是P、P段、域名以及%,%
表示任何地方。
-
-
-
用户授权(
grant select on table employee to joe
),可参考详细介绍MySQL中的用户与权限管理 -
创建角色(
create role
:为相同权限的用户统一用一个角色来管理),可参考详细介绍MySQL中的用户与权限管理
Note:-
引入角色的目的是方便管理拥有相同权限的用户,比如:
#Joe 现在是团队的 DBA,公司数据分析组有 Fred、Alice、James、Jone 四位成员,现在Joe需要给数据分析组授权,允许他们 查询 MysqL 8 服务器 goods 数据库中的所有表 create role analysis; grant analysis to fred, alice, james, jone; grant select on goods.* to analysis; flush privileges;
- 当我们需要对业务重新整合的时候,可能就需要对之前创建的角色进行清理,删除一些不会再使用的角色,比如
DROP ROLE analysis, manager
。
-
引入角色的目的是方便管理拥有相同权限的用户,比如:
四、深入索引
五、sql高级技巧
六、过程化编程
七、设计优化
八、运维与架构
九、查询优化
十、写优化
十一、命令行工具
十二、服务器优化
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。