
数据库
liuyu2783
Java开发工程师
展开
-
MySQL实战之锁
来自极客时间,林晓斌(丁奇)的MySQL实战45讲全局锁全局锁就是对整个数据库实例加锁。MySQL 提供了一个加全局读锁的方法,命令是 Flush tables with read lock (FTWRL)。当你需要让整个库处于只读状态的时候,可以使用这个命令,之后其他线程的以下语句会被阻塞:数据更新语句(数据的增删改)数据定义语句(包括建表、修改表结构等)更新类事务的提交语句应用场景:整库逻辑备份表级锁表级锁分为两种,一种是表锁,一种是元数据锁(MDL, meta data lo.原创 2020-12-24 17:09:17 · 253 阅读 · 1 评论 -
一条SQL查询语句是如何执行的
来自极客时间,林晓斌(丁奇)的MySQL实战45讲一条SQL查询语句是如何执行的MySQL基本架构课后问题MySQL的框架有几个组件,各有什么作用?连接器、分析器、优化器、执行器、查询缓存(8.0后被删除)、存储引擎server层和存储引擎层各有什么作用?Server 层包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。存.原创 2020-12-15 14:59:42 · 210 阅读 · 1 评论 -
sharding-jdbc分表压测报告
1、压测方案概述在硬件完全相同的情况下,模拟线上数据量,插入370万条订单,横向对比改造前、sharding-jdbc方案、mysql分区表三者的效率。压测接口:/order/create数据表:order_info、order_detail索引情况:order_info.AK_ORDER_INFO、order_info .IN_ORDER_INFO_UPDATE_TIME、ord...原创 2019-01-23 11:20:28 · 916 阅读 · 0 评论 -
MySQL 存在索引但是不被使用的情况
1、如果MySQL估计使用索引比全表扫描更慢,则不适用索引,比如:列key_part1均匀的分布在1-100之间。下面的sql则不会使用索引select * from table_name where key_part1 > 1 and key_part1 2、如果使用memory/heap表,并且where语句中不适用“=”进行索引,则不会使用索引。heap表只有在“=”的条件下,才转载 2015-09-01 17:16:54 · 6248 阅读 · 1 评论 -
Oracle排序 之按章节编号排序
核心思想:将章节编号截取,不足8位的用“0”补位。关键的sql语句 order by regexp_replace(replace(排序字段, '.', '.00000000'), '0+([^\.]{8})', '\1')---------------- 以下内容转自ITPUB -------------------------章原创 2014-04-25 17:16:55 · 1365 阅读 · 0 评论 -
order by 小结
今天在逛论坛的时候看到shiyiwan同学写了一个很简单的语句,可是order by后面的形式却比较新颖(对于我来说哦),以前从来没看过这种用法,就想记下来,正好总结一下ORDER BY的知识。1、ORDER BY 中关于NULL的处理缺省处理,Oracle在Order by 时认为null是最大值,所以如果是ASC升序则排在最后,DESC降序则排在最前。当然,你也可以使用转载 2013-10-27 13:04:20 · 575 阅读 · 0 评论 -
Java 连接oracle10g 集群
import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.Statement;public class TestConnection {private static String原创 2013-11-23 17:18:47 · 830 阅读 · 0 评论 -
oracle 10g 导入数据指定表空间
mp导入数据指定表空间,大致有以下几种方法可以: 1. 有一个简单的方法,适用于数据比较少的情况:直接使用UltraEdit打方DMP文件,默认是16进制,切换成文本模式,将里面的: TABLESPACE "TS1"全部替换成TABLESPACE "TS2",然后再导入,不用加什么tablespaces=TS2之类的参数即可,当然加了也无所所谓。 C:\>IMP USER2原创 2013-11-23 17:19:24 · 613 阅读 · 0 评论 -
关于ORA-01034和ORA-27101的一种解决方法
1 先看oracle的监听和oracle的服务是否都启动了。启动oracle监听:cmd的命令行窗口下,输入lsnrctl start,回车即启动监听。2 查看oracle的sid叫什么,比如创建数据库的时候,实例名叫“abc”,那么先手工设置一下oralce的sid,cmd命令窗口中,set ORACLE_SID=abc3 再输入sqlplus /nolog,回车再输入转载 2013-12-31 10:02:01 · 791 阅读 · 0 评论 -
JDBC连接mysql数据库CRUD封装类
/*** JDBC封装类* * @author fish*/public class JDBCUtil {private ResultSet rs;private Statement stmt;private Connection conn;private String url = "jdbc:mysql://localhost:3306/jdbc";private Stri原创 2013-10-27 13:09:26 · 703 阅读 · 0 评论 -
MySql 获取所有的表信息、字段信息
1、获取表相关信息select t.TABLE_NAME,t.CREATE_TIME,t.TABLE_ROWS,t.TABLE_SCHEMA from information_schema.TABLES t where t.TABLE_SCHEMA='test';select t.TABLE_NAME,t.COLUMN原创 2014-04-25 17:14:37 · 1063 阅读 · 0 评论