数据库知识点总结
文章平均质量分 50
11
喵俺第一专栏
共同学习,共同进步,提高编程技能。另外,有好多优秀的项目练手哦,详细看第一个专栏,里面有很多可作为课设、毕业的项目,希望自己可以帮助到你哦!
展开
-
sql:SQL优化知识点记录(十五)
我们这里配置一Windows上的MySql做主机,Linux上的MySql做从机,搭建一主一从。配置从属的主机165 以用户名zhangsan 密码:123456 读取的文件 开始位置。建完之后Linux上的从机会读取数据进行复制:就可以使用到新建的数据库和表。测试以下是否能够拼通:从Linux上:167,连接Windows的165。从Windows的165 连接Linux上:167,看是否拼通。Binlog_Do_DB:没写表示新建的数据库都要复制。Windows上的主机:建数据库,建表,插数据。原创 2023-09-09 11:40:05 · 577 阅读 · 0 评论 -
sql:SQL优化知识点记录(十四)
建立2个索引索引是失效后,系统性能会变查,如果涉及到锁的话,行锁会变表锁有一个问题,当session1用b字段做查询条件因为是varchar类型,需要加双引号,但是没有加,MySQL底层会做类型转换,导致这个字段建立的索引失效,此时session2在更新别的行,会出现阻塞,是因为:行锁变成了表锁session1提交后session2才能读取到: 然后session2再提交(commmit)就能获取到最新数据: 如果session2的字段值没有写错:session2提交后在查询:可以获取更新的数据:比如se原创 2023-09-09 01:06:52 · 657 阅读 · 0 评论 -
sql:SQL优化知识点记录(十三)
更新完之后session1查询进行了更新,session2还是原值:session1自动提交一关,数据库默认隔离级别,不会出现脏读,session1没有提交的数据session2不会读到。行锁,同时修改同一条数据,当session1更改数据后,没有提交,此时session2也更改同一条数据,此时会阻塞。两端都要提交一下在查询,可以看到这条更改的数据 ,因为session2也是弄成了关闭了自动提交。session1需要提交之后,session2才能更改,更改完之后也要提交。,你必须手写提交它才能提交。原创 2023-09-08 23:11:52 · 309 阅读 · 0 评论 -
sql:SQL优化知识点记录(十二)
加读锁和写锁查看是否上锁:In_use:变成了1读写锁对我们数据产生哪些影响:读锁:是共享锁,其他线程可以查看:加了读锁:session1不能修改自己,也不可以读其他表但是session2窗口可以读其他表session2:此时对加锁的表进行更改操作,它会进入阻塞状态session1:进行解锁后,session2才能完成更新操作,等待45秒。原创 2023-09-06 23:16:22 · 994 阅读 · 0 评论 -
sql:SQL优化知识点记录(十一)
锁有利有弊。原创 2023-09-05 23:00:32 · 1066 阅读 · 0 评论 -
sql:SQL优化知识点记录(十)
Group by的优化跟Order by趋同,只是多了一个having开启慢查询日志:演示一下慢sql:4秒之后才会出结果查看一下:下方显示慢查询的sql。原创 2023-09-04 23:02:38 · 1073 阅读 · 0 评论 -
sql:SQL优化知识点记录(九)
对sql调优的分析:排序优化:数据库的连接方式,里面的数据尽量这样连接,尽量选择第一个方式,因为两个表的连接一共建立5次连接,第二个建立1000次连接,从小表驱动大表方式来说选择第一种B相当于部门, A是员工,通过部门id在部门表里面,部门是少量的,员工是大量的 ,先得到小表B中的id数据 ,在得到id=部门id的数据使用exist 当A中的数据小于B时使用exist。原创 2023-09-03 11:25:57 · 860 阅读 · 0 评论 -
sql:SQL优化知识点记录(八)
只要order by 使用的跟建立的顺序不一样们就会产生文件内排序,这个是个例外,因为排序字段已经是一个常量了,常量了排序就没用了,就没有产生文件内排序,跟下面那个进行对比。当中间使用like %(在右边)也是范围查询是具体的范围查询,type为range它跟>不一样,他能使用到like后的索引,用到了3个索引。,因为where后面没有按照我建立索引的顺序使用缺少了c3,用c4去排序,产生了文件内排序,这个是非常影响性能的。用到2个索引,大小62,严格来说c3也用到了,它没有用于查找,用于了排序。原创 2023-09-02 19:08:42 · 771 阅读 · 0 评论 -
sql:SQL优化知识点记录(七)
当输入整型的2000,他需要的是varcher类型,底层实现了整型到String转换,没有带双引号,MySql在底层做了一个隐式的了类型转换。查询*, 百分号加右边,否则索引会失效。覆盖索引要到了name,索引没有失效。覆盖索引要到了age,索引没有失效。id是主键,他也可以从主键上取。不使用* 查找,覆盖索引没有失效。没建立索引之前都是全表扫描。原创 2023-09-01 23:48:42 · 1012 阅读 · 1 评论 -
sql:SQL优化知识点记录(六)
查看一下有没有建立索引:用到索引中的一个:type中的ref决定访问性能用到索引中的两个:通过key_len的长度可以看出来,比第一个大一点。或者通过ref:中用到了两个常量const用到了三个索引:key_len比第二个又大了一点,用到了三个常量const一下的结果都能查出,但是中间的过程对mysql影响还是比较大的,数据量大的时候全表扫描十分影响性能。但是建立的索引用不上有问题的sql分析:查询的时候没有按照建立的索引的顺序设置查询条件:导致索引失效。原创 2023-09-01 22:03:15 · 1083 阅读 · 0 评论 -
sql:SQL优化知识点记录(五)
建立完索引后,在使用explain进行分析一下:type变成了range,但是Extra还是留着Using filesort。发现type为All Extra:有Using filesort (文件内排序) 这两个是影响性能的。在次分析sql:class的type为index 效果ref>index 没有ref好,分析一下sql:type全是all,需要建立索引优化。建立后分析一下sql:两分type变为all。有连个表:先给一张表book表建立索引。把索引加到class表:删除索引。原创 2023-08-28 23:49:44 · 1638 阅读 · 1 评论 -
sql:SQL优化知识点记录(四)
rows越少越好!t2开始没有索引t2理论上用到主键索引,但是实际上没用到 ,rows为640+1,然后加索引后,rows变为142+1所以呢,我们需要先会看explain优化查询,需要先会看 ,最终优化的效果是把不合适的索引删除,逐渐建立索引,建立最符合我们系统的,这样我们MySql数据库跟我们系统跑起来就是最好的!explain中重要的几个字段:id type key rows Extra这几个是最重要的加了\G是竖着排列。原创 2023-08-27 17:56:03 · 1118 阅读 · 0 评论 -
sql:SQL优化知识点记录(三)
trpe反映的结果与我们sql是否优化过,是否是最佳状态息息相关最简单的查询啥都没有改type就是all:表明的的检索是全表扫描const:通过id查询,有索引查询很快 t1查询完之后作为一张临时表d1中只有一条记录,所以在查询就到了system级别eq_ref:比如员工表和部门表,员工表的的CEO属于的部门(总裁办)在员工表只出现一次,所以就是eq_ref但是从部分表搜索总裁办这个唯一的部门需要全表扫描是All。原创 2023-08-27 11:44:33 · 703 阅读 · 0 评论 -
sql:知识点记录二
查看表中的索引: 怎么用:原创 2023-08-26 19:29:02 · 213 阅读 · 0 评论 -
sql:知识点记录一
比如说用户比较喜欢用两个字段查询:name和email字段,就可以建立复合索引。两个表的所有部分:在Mysq中不好使,在Oracel中是不会报错的。索引会影响到where后的查找和order by后排序。使用Union关键字:Union自带去重。原创 2023-08-19 18:02:50 · 496 阅读 · 0 评论 -
MySQL作业(七)
先找出a表中的除做大值的所有数据,在查询不在这些数据里的最大值。原创 2022-09-17 09:05:10 · 196 阅读 · 0 评论 -
MySQL学习(六)
左边窗口添加了数据,右边窗口就卡到哪里了,因为两个事务去操作这张表了,在第一个事务没有结束的时候是不能动的。右边窗口提交之后读取到的还是原来的数据。提交之后,右边窗口就可以查出来了。右边窗口都你没有提交就查到了。右边窗口没有提交左边查不到。提交之后就回滚不过去了。原创 2022-09-13 17:52:26 · 388 阅读 · 0 评论 -
MySQL:学习(五)
删除表的时候需要先删除:字表,含有外键的表。注意:查询的列必须相等。原创 2022-09-09 12:53:53 · 337 阅读 · 0 评论 -
MySQL学习(四)
尽量降低表的连接次数。原创 2022-09-08 17:01:28 · 369 阅读 · 0 评论 -
MySQL学习(三)
创建一个表:默认是升序desc:降序asc:升序 根据字段位置排序综合案例:字符串拼接函数:原创 2022-09-05 18:27:55 · 254 阅读 · 0 评论 -
MySQL学习(二)
找到sql文件,使用命令source 把这个sql文件拖进来。原创 2022-09-04 17:36:00 · 292 阅读 · 0 评论 -
MySQL学习(一)
隐藏目录下ProgramData目录下。(3)MySQL卸载。原创 2022-09-04 09:22:11 · 265 阅读 · 1 评论 -
简简单单学会使用数据库SQL Server2008《总结练习题》
1.用T.SQL创建数据库表1.给出一个名为xxgl的数据库,并将其附加到当前实例中。2.为xxgl数据库创建学生表、课程表和选课表。3.分别为student表、course表和sc表输入数据。1首先创建一个XXGL的数据库create database XXGLon( name=XXGL, filename='F:\sql\XXGL.mdf', size=6, maxsize=20, filegrowth=1)2创建一个student......原创 2022-04-16 15:49:31 · 8719 阅读 · 2 评论