
数据库
哈哈哈哈哈哈哈111
这个作者很懒,什么都没留下…
展开
-
SQL 优化原则
一、问题的提出 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前系统需要解决的最主要的问题之一。系统优化中一个很重要的方面就是SQL语句的优化。对于海量数据,劣质SQL语句和优质SQL语句之间的速度差别可以达到上百倍,可见对于一个系统不转载 2015-08-07 16:38:02 · 1603 阅读 · 0 评论 -
oracle-btree和bitmap索引
在关系数据库中,索引是一种与表有关的数据库结构,它可以使对应于表的SQL语句执行得更快。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。 对于数据库来说,索引是一个必选项,但对于现在的各种大型数据库来说,索引可以大大提高数据库的性能,以至于它变成了数据库不可缺少的一部分。 索引分类:逻辑分类single column or concate转载 2015-11-30 14:32:44 · 6922 阅读 · 0 评论 -
mysql主从复制(超简单)
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://369369.blog.51cto.com/319630/790921 mysql主从复制(超简单)怎么安装mysql数据库,这里不说了,只说它的主从复制,步骤如下:1、主从服务器分别作以下操作: 1.1、版本一致转载 2016-05-10 09:37:13 · 423 阅读 · 0 评论 -
Mysql几种索引类型的区别及适用情况
如大家所知道的,MySQL目前主要有以下几种索引类型:FULLTEXT,HASH,BTREE,RTREE。那么,这几种索引有什么功能和性能上的不同呢?FULLTEXT即为全文索引,目前只有MyISAM引擎支持。其可以在CREATE TABLE ,ALTER TABLE ,CREATE INDEX 使用,不过目前只有 CHAR、VARCHAR ,TEXT 列上可以创建全文索引转载 2016-05-03 10:59:16 · 4082 阅读 · 0 评论 -
spring-spring mvc-mybatis 实现主从数据库配置
一、配置文件1、spring-mybatis.xmlmaster_driverUrl=jdbc:mysql://localhost:3306/shiro?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=truemaster_us转载 2016-12-01 10:53:09 · 1279 阅读 · 3 评论 -
jndi数据源配置
java:comp/env/xx java:comp/env/xx tomcat的 context下配置:原创 2016-12-01 11:02:21 · 353 阅读 · 0 评论 -
MySQL 加锁处理分析
1 背景 11.1 MVCC:Snapshot Read vs Current Read 21.2 Cluster Index:聚簇索引 31.3 2PL:Two-Phase Locking 31.4 Isolation Level 42 一条简单SQL的加锁实转载 2016-11-28 09:42:40 · 251 阅读 · 0 评论 -
oracle11g分页优化,rowid和rownum的性能比较,解决越往后数据查询越慢的问题
先看看数据量,100万+的数据:再看看使用传统rownum分页的情况,没有使用排序,因为排序在大数据量下会造成全表扫描的情况!oracle11g使用模糊查询%%,查询优化器一般情况下会选择使用索引,极端情况没有测试!这里在查询第一页的数据的时候耗时0.172秒!各列索引都已使用!使用rowid查询第一页的数据:查询第一页使用了0.031秒,其实差不多,如果求原创 2015-11-02 16:51:32 · 13423 阅读 · 1 评论 -
MySQL执行计划解读
Explain语法EXPLAIN SELECT ……变体:1. EXPLAIN EXTENDED SELECT ……将执行计划“反编译”成SELECT语句,运行SHOW WARNINGS 可得到被MySQL优化器优化后的查询语句 2. EXPLAIN PARTITIONS SELECT ……用于分区表的EXPLAIN执行计划包含的信息 id转载 2016-05-03 11:02:34 · 377 阅读 · 0 评论 -
mysql5.6.20配置,解决占用内存太大问题
vps的内存为512M,安装好nginx,php等启动起来,mysql死活启动不起来看了日志只看到对应pid被结束了,后跟踪看发现是内存不足被killed;调整my.cnf 参数,重新配置(系统默认配置太高直接占用400M内存,小玩家玩不起呢)即可performance_schema_max_table_instances=200table_definition_cache=200ta转载 2017-01-18 12:21:19 · 7257 阅读 · 0 评论 -
linux下安装mysql5.6.x,允许远程客户端访问
1.在安装mysql数据库服务器前,确保你的linux系统是可以连接网络的,下面我们将通过源码方式来安装mysql首先通过putty登入进你的Linux系统,确保系统中已经安装的gcc c++ 等编译环境,因为mysql从5.5版本开始是使用cmake编译的,如果三个环境都没安装,可以使用下面的命令进行安装:yum -y install make gcc-c++ cmake bison-dev转载 2017-01-18 12:22:58 · 2395 阅读 · 0 评论 -
mysql安装报错:The server quit without updating PID file.
一般是因为没有创建mysql数据系统数据表或创建mysql系统表失败。进入对应目录执行以下语句:./scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql如果提示没有权限,请赋予mysql目录最高权限。如果提示缺少模块,请安装: yum -y原创 2018-01-23 10:35:04 · 324 阅读 · 0 评论 -
oracle常用sql语句集合
创建临时表空间:create temporary tablespace ppatemptempfile 'D:\oracleDB\oradata\ppatb\ppa_temp.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local; 创建表空间:create t原创 2015-06-25 11:05:39 · 2328 阅读 · 0 评论 -
oracle 大数据量数据插入
1. 采用高速的存储设备,提高读写能力,如:EMC 和NetApp, 2. 假如tab1表中的没有数据的话 DROP TABLE TAB1;CREATE TABLE TAB1 AS SELECT * FROM TAB2;然后在创建索引 3. 用Hint 提示减少操作时间 INSERT /*+Appen转载 2015-11-19 11:11:23 · 3149 阅读 · 0 评论 -
全面解读Oracle同义词的概念作用、创建删除查看及Oracle的db link
Oracle的同义词(synonyms)从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系. 在Oracle中对用户的管理是使用权限的方式来管理的,也就是说,如果我们想使用数据库,我们就必须得有权限,但是如果是别人将权限授予了我们,我们也是能对数据库进行操作的,但是我们必须要已授权的表的名称前键入该表所有者的名称,所以这就是比较麻烦的,遇到这种情况,我们该怎么转载 2015-11-18 14:41:22 · 2092 阅读 · 0 评论 -
Oracle SQL性能优化
(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表转载 2015-08-07 16:34:17 · 1869 阅读 · 0 评论 -
SQL语句优化技术分析
最近几周一直在进行数据库培训,老师精湛的技术和生动的讲解使我受益匪浅。为了让更多的新手受益,我抽空把SQL语句优化部分进行了整理,希望大家一起进步。一、操作符优化1、IN 操作符用IN写出来的SQL的优点是比较容易写及清晰易懂,这比较适合现代软件开发的风格。但是用IN的SQL性能总是比较低的,从Oracle执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别:ORACLE试图转载 2015-08-07 16:36:14 · 1827 阅读 · 0 评论 -
oracle contains函数 全文检索
使用contains函数要求对应列必须建立索引。1. 查询住址在北京的学生SELECT student_id,student_nameFROM studentsWHERE CONTAINS( address, 'beijing' ) > 0remark: beijing是一个单词,要用单引号括起来。2. 查询住址在河北省的学生SELECT student_id,转载 2015-08-28 10:41:43 · 2251 阅读 · 0 评论 -
[MySQL] 行列转换变化各种方法实现总结(行变列报表统计、列变行数据记录统计等
前言:mysql行列变化,最难的就是将多个列变成多行,使用的比较多的是统计学中行变列,列变行,没有找到现成的函数或者语句,所以自己写了存储过程,使用动态sql来实现,应用业务场景,用户每个月都有使用记录数录入一张表,一个月一个字段,所以表的字段是动态增长的,现在需要实时统计当前用户使用的总数量,如果你知道有多少个字段,那么可以用select c1+c2+c3+…. From tbnam转载 2015-08-07 09:49:36 · 3333 阅读 · 0 评论 -
MySQL事务隔离级别详解
SQL标准定义了4类隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的。低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销。Read Uncommitted(读取未提交内容) 在该隔离级别,所有事务都可以看到其他未提交事务的执行结果。本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少。读取未提交的数据,也被称之为脏读(Dirt转载 2015-09-29 16:38:07 · 1612 阅读 · 0 评论 -
oracle存储过程
Oracle存储过程学习存储过程创建语法: create or replace procedure 存储过程名(param1 in type,param2 out type)as变量1 类型(值范围);变量2 类型(值范围);Begin Select count(*) into 变量1 from 表A where列名=param1;转载 2015-09-16 15:45:32 · 1858 阅读 · 0 评论 -
理解MySQL——复制(Replication)
1、复制概述1.1、复制解决的问题数据复制技术有以下一些特点:(1) 数据分布(2) 负载平衡(load balancing)(3) 备份(4) 高可用性(high availability)和容错1.2、复制如何工作从高层来看,复制分成三步:(1) master将改变记录到二进制日志(binary log)中(这些记录叫做转载 2015-11-13 16:06:05 · 1698 阅读 · 0 评论 -
oracle各种索引介绍
一. 索引介绍 1.1 索引的创建 语法 : CREATE UNIUQE | BITMAP INDEX . ON . ( | ASC | DESC, | ASC | DESC,...) TABLESPACE STORAGE LOGGING | N转载 2015-10-27 16:07:58 · 2140 阅读 · 0 评论 -
oracle索引介绍
一.索引介绍 1.1 索引的创建语法: CREATE UNIUQE | BITMAP INDEX . ON . ( | ASC | DESC, | ASC | DESC,...) TABLESPACE STORAGE LOGGING | NOLOGGING转载 2015-10-14 09:58:09 · 1281 阅读 · 0 评论 -
oracle介绍之oracle不走索引的7种常见情况!
1. 没有 WHERE 子句 2. 使用 IS NULL 和 IS NOT NULL SELECT ... FROM emp WHERE comm IS NULL; comm 列的索引会失效 3. WHERE 子句中使用函数 如果没有使用基于函数的索引,那么 where 子句中对存在索引的列使用函数时,会使优化器忽略掉这些索引。例如: select转载 2015-10-14 10:19:08 · 11224 阅读 · 0 评论 -
oracle索引介绍之位图(bitmap)索引
位图(BitMap)索引 前段时间听同事分享,偶尔讲起Oracle数据库的位图索引,顿时大感兴趣。说来惭愧,在这之前对位图索引一无所知,因此趁此机会写篇博文介绍下位图索引。1. 案例 有张表名为table的表,由三列组成,分别是姓名、性别和婚姻状况,其中性别只有男和女两项,婚姻状况由已婚、未婚、离婚这三项,该表共有100w个记录。现在有这样的查询: select * f转载 2015-10-14 11:20:06 · 6955 阅读 · 1 评论 -
oracle锁概念,阻塞
锁这东西是纯概念性的东西,但是作用又非常大。 以前整理过两篇文章,今天又看了点书,觉得还不是很清楚。 就重新整理了下。 在想要不要把以前的文章删掉,这样在blog里是比较简介的,但后来又一想。 这些连接在其他的地方可能被引用了。 就决定还是保留着了,也算见证自己成长的一个过程。ORACLE 锁机制http://blog.youkuaiyun.com/tianlesoftware/archive转载 2015-11-16 14:23:55 · 3572 阅读 · 0 评论