![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mysql
飞飞羽毛球
这个作者很懒,什么都没留下…
展开
-
mysql笔记-索引
1. 聚集索引InnoDB存储引擎表是索引组织表,即数据按照主键顺序存放。聚集索引是按照每张表的主键构造B+树。叶子节点存放行记录数据同时每张表只有能一个聚集索引。2.辅助索引叶子节点不包含行记录的所有数据。叶节点包含键值和一个书签,通过书签可以找到索引相对应的行数据。每张表可以有多个辅助索引3.联合索引指对表上的多个列进行索引。联合索引也是一颗B+树.联合索引的好处: a. where同时查多个列 b.联合索引对第二个键进行了排序,索引 where查询第一个键,用第二个键进行排原创 2020-07-26 23:52:22 · 61 阅读 · 0 评论 -
mysql笔记-文件
1. 参数文件: mysql实例启动时会读取配置参数文件。2. 日志文件: a. 错误日志: 错误日志文件对mysql的启动、运行、关闭过程进行记录 b. 慢查询日志 在mysql启动时设定一个阀值如1s, sql运行时间超过该值(是大于,不是大于等于)会记录到慢查询日志 c. 二进制日志 记录对mysql数据库执行更改的所有操作 住:binglog_format: 1.statement 逻...原创 2020-07-15 17:10:23 · 80 阅读 · 0 评论 -
mysql笔记-插入缓冲
1. 为什么需要插入缓冲 在表中聚集索引一般是递增的,插入时不需要磁盘的随机读取速度很快,但是表中可能还存有其他非聚集索引,直接插入就需要查找索引页,在查找索引页时,会很影响性能。所以就需要了插入缓冲,插入直接在缓冲池中操作,在以一定的频率进行merge操作,可以将多个操作合并为一个操作,大大提高性能2.限制条件 a. 索引时辅助索引 b. 不是唯一索引...原创 2020-07-14 10:22:00 · 163 阅读 · 0 评论 -
mysql笔记-checkpoint
1. 为何需要checkpoint? 为了协调cpu与磁盘速度的差距,mysql内部设计了缓冲池。页的的操作首先会在缓冲池中完成。然后按照一定机制刷新新版本的页到磁盘。 但是在数据刷新到磁盘前可能宕机等导致数据丢失,会在事务提交时 先写重做日志再修改页保证了事务的持久性。用checkpoint可以解决重做日志过大,导致数据库恢复时间过长 具体参考checkpoint。2. 发生checkpoint时机 a. Master Thread 中的Checkpoint,大约以几秒或者每10...原创 2020-07-13 17:50:49 · 131 阅读 · 0 评论 -
mysql之视图
视图: 是一种虚拟存在的表,并不在数据库中实际存在,使用的数据是动态生成优点: 简单: 用户可以直接查看筛选好的数据 安全:只能查询被允许的结果集 数据独立:屏蔽原表结构修改对视图的影响创建视图删除视图查看视图show tables 不仅显示表的名字还显示视图的的名字查看视图里的信息...原创 2018-04-29 20:51:07 · 275 阅读 · 0 评论 -
mysql权限管理
1.创建用户z1,权限为可以在所有数据库上执行所有权限2.为z1追加grant权限 (grant 在执行时,如果没有该账号则创建,如果存在则执行新增权限)3.为z1设置密码4.创建z2用户,可以任意ip登陆5.只授予用户登陆权限6.查看账号权限7.收回z1所有权限8.设置z1新密码9.删除z1...原创 2018-05-12 19:26:23 · 120 阅读 · 0 评论 -
mysql的常用函数
这是要用到的表1.字符串拼接函数 concat(str1,str2,str3.....strn)2.把字符串转换成大写或者小写 lower(str),upper(str)转化为小写:3.去掉字符串两边的空格 ltrim(str), rtrim(str)数值函数1. 绝对值函数 abs(int)2.向上取整函数 ceil(int)3.向下取整函数 floor4.取模 mod(x,y)5. 0到1随...原创 2018-04-26 23:48:15 · 90 阅读 · 0 评论 -
mysql之逻辑备份和恢复
逻辑备份和恢复 逻辑备份的最大有点是对于各种存储引擎都可以用同样的方法来备份。1.备份逻辑备份是将数据库的数据备份为一个文本文件,使用mysql自带的mysqldump工具进行备份所以首先切换到mysql安装目录的bin目录下 1.备份所有数据库 2.备份特定数据库 3.备份表2.完全恢复 准备工作 修改mysq的my.cnf文件添加log-bin=mysql-bin重启my...原创 2018-05-10 19:52:37 · 2094 阅读 · 0 评论 -
mysql内存优化总结
1.mysql内存优化原则 a. 将尽量多的内存分配给mysql做缓存,但是也要给操作系统和其他程序预留足够内存。 b. MyISAM的数据文件读取依赖于操作系统的io,因此如果有MyISAM表,就要预留更多的内粗给操作系统做io缓存。 c. 合理设置排序区、链接区等缓存大小。2.MyISAM内存优化 MyISAM没有特别的缓存机制,完全依赖于操作系统的io缓存 2.1 key_buffe...原创 2018-05-09 20:36:21 · 4567 阅读 · 0 评论 -
mysql分区
mysql分区: 数据库把一个表分解成更小的部分,但是对于访问数据库的应用来说还是一个表。优点:a. 可以存储更多的数据b. 优化查询,在特定情况下只需要扫描一个分区,在涉及sum()和count()时可以在各个分区并行处理查看数据库是否支持分区这里是yes 就是支持分区分区的类型: a. range分区: 基于一个给定的连续区间范围,把数据分配到不同的分区 b.list分区: 基于枚举出的值列...原创 2018-05-02 22:45:02 · 169 阅读 · 0 评论 -
mysql-sql基础
1. DML语句DML是对数据库中表进行的操作增删改查2.DDL语句DDL是数据库定义语言的简写,就是对数据库内部对象进行管理的语言。 1). 创建数据库2). 查看数据库3) 删除数据库4)切换数据库5)创建表6)查看表的描述7)查看创建表时的sql语言8)删除表9)通过alter 修改表字段类型10)添加表字段11)删除表的字段12)修改字段名称 并修改字段类型13)在特定位置添加字段...原创 2018-04-18 23:37:26 · 99 阅读 · 0 评论 -
mysql支持的数据类型
1.数值类型tinyint 范围是 -128 到 127 ; smallint 范围是 正负 3万(32767)mediumint 范围是 正负 8百万(8388607) int 范围是正负20亿(2147483647)2.定点数类型 decimal(M,D)3.日期时间类型 A : date通常用来表示年...原创 2018-04-22 22:28:56 · 116 阅读 · 0 评论