mysql
王克兵
这个作者很懒,什么都没留下…
展开
-
Exists 和not in 的使用
SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;-- ------------------------------ Table structure for student-- ----------------------------DROP TABLE IF EXISTS `student`;CREATE TABLE `student...原创 2020-03-06 18:21:49 · 286 阅读 · 0 评论 -
笛卡尔积的结果
student表:可以看出,在SELECT a.*,b.* from STUDENT a join STUDENT b 后面的on条件是,在SELECT a.*,b.* from STUDENT a join STUDENT b 语句结果中进行条件过滤。...原创 2020-03-04 17:38:30 · 931 阅读 · 0 评论 -
sql语句中any和all的用法
这两个都是用于子查询的any 是任意一个all 是所有any表示有任何一个满足就返回true,all表示全部都满足才返回true建议使用max和min更加直观比如select * from student where 班级=’01’ and age > all (select age from student where 班级=’02’);就是说,查询出01班中,年...原创 2020-03-04 11:13:38 · 6210 阅读 · 2 评论 -
在join中,on和where的区别
1、on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。2、where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义(必须返回左边表的记录)了,条件不为真的就全部过滤掉建议使用时使用where过滤掉不符合的条件。SELECT sc.DEGREE,st.SNAME,c.cname from SCORE sc j...原创 2020-03-04 10:37:22 · 1456 阅读 · 0 评论 -
联合索引什么时候使用,什么时候失效?
建表语句:Create Table CREATETABLE`sys_msg`( `MsgId`bigint(20)NOTNULLAUTO_INCREMENT, `MsgContent`varchar(500)DEFAULTNULL, `MsgTime`datetimeDEFAULTNULL, `MsgStatus`...原创 2019-05-14 16:07:31 · 4879 阅读 · 0 评论 -
美团网技术团队分享的MySQL索引及慢查询优化教程
MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会从职位描述上看到诸如“精通MySQL”、“SQL语句优化”、“了解数据库原理”等要求。我们知道一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,遇到最多的,也是最容易出问...转载 2019-01-17 11:19:31 · 529 阅读 · 0 评论 -
mysql 百万数据库多表联查查询结果40S以上,导致数据库表锁死
因此需要我们在设计表时注意表之间的关联性,我们这次锁表主要是多表联查时,导致了全表扫描,耗时44s,最后建立索引解决。刚开始未停机想加索引,但是加入不了表依然卡死,最后找DBA重启数据库才行。线上服务断了2小时左右,以后需要注意这点。上线时需要分析sql语句,看是否有全表扫描!!!!当数据库链接满了之后会导致没有连接,springboot报错:could not open JPA Entity...原创 2018-12-03 14:42:15 · 1265 阅读 · 1 评论 -
mysql 数据库连接池查询
show full processlist;show open tables where In_use > 0;show processlist;select * from information_schema.processlist where db = '数据库名称' and command != 'Sleep' and Time >1000 ...原创 2018-11-15 20:48:07 · 9429 阅读 · 1 评论 -
mysql查看被锁住的表,正在进行的进程,已经杀掉进程的方法
出现锁表的时候是添加字段,mysql在添加字段的时候会新建表然后把数据复制过去,同时把原来的表锁住,造成进来的线程被lock//查看所有进程 show full processlist;//查询是否锁表 show OPEN TABLES where In_use > 0;//查看被锁住的 SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;//等待锁定...原创 2018-06-07 15:47:37 · 3414 阅读 · 0 评论 -
nosql数据库分类
k-v数据库:redis文档型数据库:MongoDb,Couchdb列存储数据库:列式数据包括:Sybase IQ,infobright、infiniDB、GBase 8a,ParAccel, Sand/DNA Analytics和 Vertica。图关系型数据库:Neo4j,GraphDB...原创 2018-05-03 09:16:55 · 265 阅读 · 0 评论 -
mysql数据库设置远程连接权限,执行grant all privileges on *.* to 'root'@'%' identified by '密码' with grant optio报错
mysql数据库设置远程连接权限,执行grant all privileges on *.* to 'root'@'%' identified by '密码' with grant optio报错ERROR 1558 (HY000): Column count of mysql.user is wrong. Expected 43, found 42. Created with MyS原创 2018-02-07 16:47:49 · 118681 阅读 · 6 评论 -
云服务器 ECS MySQL 忘记 root 密码解决办法
转的阿里云的,但是里面会有没说明白的,请看我现在这个:如果使用 MySQL 数据库忘记了账号密码,可以通过调节配置文件,跳过密码的方式登数据库,在数据库里面修改账号密码,一般默认的账号问 root1、编辑 MySQL 配置文件 my.cnf注意: 以实际 my.cnf 配置文件路径为准vim /etc/my.cnf[mysqld]skip-grant-table转载 2018-02-07 16:34:52 · 843 阅读 · 0 评论