数据库
L-Zhang
这个作者很懒,什么都没留下…
展开
-
MySQL查看数据库及表容量大小
1.查看所有数据库容量大小select table_schema as '数据库',sum(table_rows) as '记录数',sum(truncate(data_length/1024/1024, 2)) as '数据容量(MB)',sum(truncate(index_length/1024/1024, 2)) as '索引容量(MB)' from information_sch...原创 2020-04-20 17:32:03 · 511 阅读 · 0 评论 -
mysql插入数据后返回自增ID
mysql插入数据后返回自增ID的方法mysql和oracle插入的时候有一个很大的区别是,oracle支持序列做id,mysql本身有一个列可以做自增长字段,mysql在插入一条数据后,如何能获得到这个自增id的值呢?方法一:是使用last_insert_idmysql> SELECT LAST_INSERT_ID(); 产生的ID 每次连接后保存在服务器中。这意...原创 2019-08-01 16:38:03 · 3179 阅读 · 0 评论 -
Mybatis根据数据库表自动生成实体类和xml映射文件及dao
通常在开发过程中,大家都会使用mybatis操作数据库。一般步骤都是先创建好数据库表,然后创建mybatis一套。实体类、相应的dao和mybatis mapper文件,都相当麻烦。mybatis提供了对应的插件工具,方便自动生成,不用手动敲代码了。下面以maven、idea开发环境下的操作步骤为示例:1. 配置pom文件spring及mybatis依赖包:<d...原创 2019-04-04 14:27:50 · 5720 阅读 · 0 评论 -
mysql 数据库varchar存储汉字
具体还是要看版本的4.0版本以下,varchar(100),指的是100字节,如果存放UTF8汉字时,只能存33个(每个汉字3字节) 5.0版本以上,varchar(100),指的是100字符,无论存放的是数字、字母还是UTF8汉字(每个汉字3字节),都可以存放100个。自己在数据库中建个表测试下可以放多少个汉字。示例:以5.0以上版本为例。新建表: CREATE T...转载 2018-09-27 18:19:52 · 9159 阅读 · 0 评论 -
Java 中的resultset详解
Java 中的resultset详解结果集(ResultSet)是数据中查询结果返回的一种对象,可以说结果集是一个存储查询结果的对象,但是结果集并不仅仅具有存储的功能,他同时还具有操纵数据的功能,可能完成对数据的更新等。 结果集读取数据的方法主要是getXXX() ,他的参数可以使整型表示第几列(是从1开始的),还可以是列名。返回的是对应的XXX类型的值。如果对应那列时空值,XXX是对象的话返...转载 2018-07-13 10:52:07 · 2662 阅读 · 0 评论 -
Spring动态配置多数据源
Spring动态配置多数据源,即在大型应用中对数据进行切分,并且采用多个数据库实例进行管理,这样可以有效提高系统的水平伸缩性。而这样的方案就会不同于常见的单一数据实例的方案,这就要程序在运行时根据当时的请求及系统状态来动态的决定将数据存储在哪个数据库实例中,以及从哪个数据库提取数据。Spring配置多数据源的方式和具体使用过程。 Spring对于多数据源,以数据库表为参照,大体上可以分成两大类情况...转载 2018-06-20 09:21:48 · 575 阅读 · 0 评论 -
MySQL索引使用方法和性能优化
关于MySQL索引的好处,如果正确合理设计并且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。对于没有索引的表,单表查询可能几十万数据就是瓶颈,而通常大型网站单日就可能会产生几十万甚至几百万的数据,没有索引查询会变的非常缓慢。还是以WordPress来说,其多个数据表都会对经常被查询的字段添加索引,比如wp_comments表中针对5个字段设计了BTR...转载 2018-04-02 18:28:00 · 482 阅读 · 0 评论 -
避免全表扫描的sql优化
对查询进行优化,应尽量避免全表扫描,首先应考虑在where 及order by 涉及的列上建立索引: .尝试下面的技巧以避免优化器错选了表扫描: · 使用ANALYZE TABLE tbl_name为扫描的表更新关键字分布。 · 对扫描的表使用FORCE INDEX告知MySQL,相对于使用给定的索引表扫描将非常耗时。 SELECT转载 2018-02-01 09:26:26 · 407 阅读 · 0 评论 -
mysql explain执行计划详解
1)、id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询。 2)、select_type列常见的有:A:simple:表示不需要union操作或者不包含子查询的简单select查询。有连接查询时,外层的查询为simple,且只有一个B:primary:一个需要union操作或者含有子查询的select,位原创 2018-02-01 09:22:49 · 253 阅读 · 0 评论 -
MySql IO爆棚处理
线上数据库部署:一主跟两从,其中一个从还跟一个从;主毫无疑问提供写功能,三个从提供不同业务的读操作;问题:前几天遇到一个问题MySQL BINLOG延迟,磁盘写IO接近100%。处理:后来经过DBA协助排查,发现是一个SQL导致的创建临时表,导致的大量写磁盘操作。kill掉问题sql后恢复正常。于是找了下什么情况下会创建临时表,在遇到类似的情况的时候可以查询处理。临时表相关文章原创 2018-01-02 18:39:44 · 1332 阅读 · 0 评论 -
BoneCP 学习笔记
什么是BoneCPBoneCP 是一个快速、免费而且开源的java数据库连接池(JDBC Pool)管理工具库。如果你曾经使用过C3P0或者DBCP,那你肯定知道上面这句话的意思;如果你没用过这些,那简单的解释一下,它是一个能为你的应用管理数据库连接的工具。 官方网站:http://jolbox.com/ 为什么要学习BoneCP 本着不重复发明轮子的原则,不应该在有了转载 2017-10-10 10:43:15 · 941 阅读 · 0 评论 -
一张小图看懂hibernate
一张小图看懂hibernate转载 2017-08-22 17:15:08 · 830 阅读 · 0 评论 -
数据库DB分页查询
1、Oracle分页查询写法: select * from (select rownum,name from table where rownum where rownum > startIndex 2、DB2分页查询 SELECT * FROM (Select 字段1,字段2,字段3,rownumber() over(ORDER BY 排序用的列名 ASC) AS r原创 2017-07-01 15:54:18 · 3321 阅读 · 0 评论