
Mysql实战小技巧及报错解决方案
RDBMS 即关系数据库管理系统(Relational Database Management System)的特点:
1.数据以表格的形式出现
2.每行为各种记录名称
3.每列为记录名称所对应的数据域
4.许多的行和列组成一张表单
5.若干的表单组成database
beyondwild
愿你眸有星辰,心有山河,以梦为马,不负韶华!
展开
-
Mysql实战详解17:Mysql联合索引生效判断
对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分。例如索引是key index (a,b,c)。 可以支持a | a,b| a,b,c 3种组合进行查找,但不支持 b,c进行查找 .当最左侧字段是常量引用时,索引就十分有效。以下是一些例子:(1) select * from myTest where a=3 and b=5 and c=4; ---- abc顺序abc三个索引都在where条件里面用到了,而且都发挥了作用(2) selec原创 2020-08-15 09:44:33 · 398 阅读 · 0 评论 -
Mysql实战详解16:Mysql索引类型
一、按逻辑角度划分1、主键索引:主键索引是一种特殊的唯一索引,不允许有空值2、普通索引或者单列索引3、多列索引(复合索引):复合索引指多个字段上创建的索引,只有在查询条件中使用了创建索引时的第一个字段,索引才会被使用。使用复合索引时遵循最左前缀集合4、唯一索引、非唯一索引5、空间索引:空间索引是对空间数据类型的字段建立的索引,MYSQL中的空间数据类型有4种,分别是GEOMETRY、POINT、LINESTRING、POLYGON。MYSQL使用SPATIAL关键字进行扩展,使得能够用于创建正规索引类型的语原创 2020-08-15 09:44:22 · 291 阅读 · 0 评论 -
Mysql实战详解15:mysql错误Please use SHOW DDL to check it, and then recover or rollback it
mysql执行DDL语句的时候提示错误:[Err] 4644 - [1065507aa5d0c000][10.0.85.135:3306][test]ERR-CODE: [TDDL-4644][ERR_PENDING_DDL_JOB_EXISTS] Another DDL job '1181437929186181120' with operation 'CREATE_TABLE' is pending on test.tb_user_order in activity. Please use SHOW原创 2020-08-14 08:57:16 · 1757 阅读 · 0 评论 -
Mysql实战详解14:java.lang.IllegalStateException: EntityManager is closed问题解决
报错信息: org.springframework.dao.InvalidDataAccessApiUsageException: EntityManager is closed; nested exception is java.lang.IllegalStateException: EntityManager is closed at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExcepti...原创 2020-08-14 08:57:10 · 1551 阅读 · 0 评论 -
Mysql实战详解13:mysql序号rownum行号实现
在mysql查询中,需要用到类似Oracle的行号rownum,比如说查询数据并倒序,同时计算排名,具体sql如下:Select (@rowNum:=@rowNum+1) as rowNo,user_id ,count(user_id) as ticketCountFrom user_info,(Select (@rowNum :=0) ) bgroup by user_idorder by ticketCount descuser_info为相关业务表...原创 2020-08-14 08:57:04 · 2459 阅读 · 0 评论 -
Mysql实战详解12: mysql日志开启
1、查看日志是否开启:show variables like 'general_log'; -- 查看日志是否开启2、开启日志监控:set global general_log=on; -- 开启日志功能原创 2020-08-14 08:56:58 · 172 阅读 · 0 评论 -
Mysql实战详解11: Navicat连接Mysql报错:Client does not support authentication protocol requested by server
Navicat连接Mysql报错:Client does not support authentication protocol requested by server解决:mysql> use mysql;Database changedmysql> alter user 'root'@'%' identified with mysql_native_password by '123456';Query OK, 0 rows affected (0.01 sec) my原创 2020-08-14 08:56:51 · 254 阅读 · 0 评论 -
Mysql实战详解10:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before execu
mysql操作错误:mysql> use mysql;ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.mysql>原因:没有设置允许远程连接的权限;解决方法:mysql> alter user user() identified by "123456";Query OK, 0 rows affe..原创 2020-08-14 08:56:44 · 1672 阅读 · 0 评论 -
Mysql实战详解9:Packet for query is too large (1025 > 1024) 问题解决
连接MySql时候出现错误:### Cause: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1025 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.; Packet for query is too large (1025 > 1024). You can原创 2020-08-14 08:56:38 · 329 阅读 · 0 评论 -
Mysql实战详解8:mysql数据库转移到oracle
在研发过程中,可能会用到将表数据库中的表结构及数据迁移到另外一种数据库中,比如说从mysql中迁移到oracle中,常用的方法有好些,如下:1、使用powerdesigner,先连接mysql然后生成mysql的pdm,再把mysql的pdm生成cdm(注:如果设计阶段有cdm那更好,可以直接使用,因为cdm是和具体数据库类型无关的,所以需要转为这个中间模型),最后把cdm生成oracle类型的pdm,最后将oracle类型的pdm转为sql文件完成!2、在使用上面第一种方法的时候可能.原创 2020-08-14 08:56:31 · 452 阅读 · 1 评论 -
Mysql实战详解7:MySql索引说明
一、索引说明索引分单列索引和组合索引。A.单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引。B.组合索引,即一个索引包含多个列。索引也会有它的缺点:虽然索引大大提高了查询速度,同时却会降低更新表的速度,1. 如对表进行INSERT、UPDATE和DELETE。因为更新表时,MySQL不仅要保存数据,还要保存一下索引文件。2. 建立索引会占用磁盘空间的索引文件。二、索引类型Mysql目前主要有以下几种索引类型:FULLTEXT,HASH,BTREE,RTREE。原创 2020-08-14 08:56:24 · 224 阅读 · 0 评论 -
Mysql实战详解6:MySQL存储引擎
Mysql在V5.1之前默认存储引擎是MyISAM;在这之后默认存储引擎是InnoDB,备注:存储引擎InnoDB是针对表,而不是针对数据库,可以参考之前的文章列出Mysql各个版本区别:https://blog.youkuaiyun.com/vtopqx/article/details/879348891、查看当前MySql默认存储引擎:mysql> show variables like '%engine%';2、查看当前mysql支持哪些存储引擎:mysql>.原创 2020-08-14 08:56:17 · 189 阅读 · 0 评论 -
Mysql实战详解5:MySQL各版本区别说明
mysql各版本区别说明收集:mysql5.7:2015年发布,mysql5.7查询性能得以大幅提升,比 MySQL 5.6 提升 1 倍降低了建立数据库连接的时间。mysql5.6:2013年2月发布,mysql5.6版本其中InnoDB可以限制大量表打开的时候内存占用过多的问题InnoDB性能加强。如大内存优化等InnoDB死锁信息可以记录到 error 日志,方便分析InnoDB提供全文索引能力。mysql5.5:2010年12月发布mysql5.5版本默认存储引...原创 2020-08-13 08:32:41 · 1462 阅读 · 0 评论 -
Mysql实战详解4:MySQL事务隔离级别
MySQL事务隔离级别:事务隔离级别 脏读 不可重复读 幻读 读未提交(read-uncommitted) 是 是 是 不可重复读(read-committed) 否 是 是 可重复读(repeatable-read) 否 否 是 串行化(serializable) 否 否 否 默认事务隔离级别为repeatable-read 可重复读。一、事务的基本要素(ACID) 1、原子性.原创 2020-08-13 08:31:11 · 193 阅读 · 0 评论 -
Mysql实战详解3:Mysql查看是否使用到索引
mysql数据库创建索引优化之后,在查询时想看下是否使用到索引,使用执行计划查看:mysql> explain SELECT * FROM tb_user WHERE STATUS=1 limit 0,20;+----+-------------+----------------+------------+------+----------------------+----------------------+---------+-------+-------+----------+-原创 2020-08-13 08:30:00 · 392 阅读 · 0 评论 -
Mysql实战详解2:MySql设置允许远程连接
默认是不支持远程连接的,需要开启相关权限,如下:mysql> grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;mysql> flush privileges;设置允许root用户远程连接!原创 2020-08-13 08:28:37 · 184 阅读 · 0 评论 -
Mysql实战详解1:目录
Mysql实战详解1:目录Mysql实战详解2:MySql设置允许远程连接Mysql实战详解3:Mysql查看是否使用到索引Mysql实战详解4:MySQL事务隔离级别Mysql实战详解5:MySQL各版本区别说明Mysql实战详解6:MySQL存储引擎Mysql实战详解7:MySql索引说明Mysql实战详解8:mysql数据库转移到oracleMysql实战详解9:Packet for query is too large (1025 > 1024) 问题解决M原创 2020-08-15 09:48:38 · 170 阅读 · 0 评论