Oracle

索引+sql优化

本秂侑毒 提交于 2021-02-12 11:01:37
索引的概念 : 索引是提高查询速度的一种手段。 索引有很多种,以下是索引树的结构 要求查询出薪资大于 5000 的雇员信息,只要在树中找到 5000 的节点,直接查询该节点右边的数据即可,左边就不用管了,这样提高了查询的效率。 将数据按照索引数据的方式保存需要先创建索引。 基本语法: CREATE INDEX 索引名 ON 数据表(字段名) ; 删除索引: DROP INDEX 索引名 ; 注意:系统默认主键使用索引。 复合索引 一个索引在多个字段上创建,就是一个索引作用于多个字段。 例如: CREATE INDEX 索引名 ON 数据表(字段 1 ,字段 2 ) ; 注意:查询数据使用字段 2 ,此时使用的是全表扫描模式,查询数据使用字段 1 ,此时使用的是索引扫描模式。(此现象叫做索引的 最左原则 ) 在 Oracle 中使用了多个字段,并且是 AND 连接的条件,那么字段的顺序不影响扫描的方式(索引扫描),如果是 mysql 则需要和复合索引的字段顺序一致。使用 OR 连接条件会导致索引失效,应该使用 UNION ALL 代替 OR 查询。 总结: 索引不能随便用。如果一张数据表更新频率太高,更新数据之后需要重新创建索引,这一过程很耗费性能。 Sql 的优化 *(面试题) 1、 对查询进行优化,要尽量避免全表扫描,首先应考虑在进行条件判断的字段上创建索引。

java+大文件上传解决方案

五迷三道 提交于 2021-02-12 06:52:45
众所皆知,web上传大文件,一直是一个痛。上传文件大小限制,页面响应时间超时.这些都是web开发所必须直面的。 本文给出的解决方案是:前端实现数据流分片长传,后面接收完毕后合并文件的思路。 实现文件夹上传,要求:服务端保留层级结构,支持10w级别的文件夹上传。 大文件上传及断点续传,要求:支持50G级的单个文件上传和续传。续传要求:在刷新浏览器后能够续传上传,在重启浏览器后能够继续上传上(关闭浏览器后重新打开),在重启电脑后能够继续上传。 支持PC端全平台,Windows,Mac,Linux 浏览器要求支持全部浏览器,包括ie6,ie7,ie8,ie9,Chrome,Firefox 下面贴出简易DEMO源码分享: 前端页面: 后端代码,此Demo是基于MVC架构的: 后端代码我进行了模块划化,而不是网上的将所有的模块放在一个类中,这样对于以后的维护和升级来说都是一个灾难。 文件块处理逻辑 文件块保存逻辑如下 web.xml 配置如下 整个项目的截图 依赖的JAR包如下 运行效果如下: 在此分享!希望多多指正~ 后端代码逻辑大部分是相同的,目前能够支持MySQL,Oracle,SQL。在使用前需要配置一下数据库,可以参考我写的这篇文章: http://blog.ncmem.com/wordpress/2019/08/07/java超大文件上传与下载/ 来源: oschina 链接:

【DB宝3】在Docker中使用rpm包的方式安装Oracle 19c

心已入冬 提交于 2021-02-12 04:14:17
点 击 上 方 蓝 字 “ DB宝 ”,关 注 我 吧 一、安装 Docker 软件 二、创建 CentOS7 .6 的容器 三、 rpm 方式安装 Oracle 19 c 3 .1 、安装 database-preinstall 包 3 .2 、下载安装 db 软件,上传到 docker 容器内 3 .3 、创建数据库实例 四、数据库配置 4 .1 、修改密码 4 .2 、修改参数 4 .3 、修改 EM 的展现方式 4 .4 、配置用户环境变量 五、重启容器后的操作 六、将容器打包成镜像上传,供其他用户使用 七、其他用户下载使用 一、安装Docker软件 CentOS 7安装Docker官网: https://docs.docker.com/engine/install/centos/ 1 1、卸载掉旧版本的 Docker: 2 yum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine 3 4 2、执行以下安装命令去安装依赖包: 5 yum install -y yum-utils

Oracle数据库入门到高薪培训教程(从Oracle 11g 到 Oracle 19c)

ε祈祈猫儿з 提交于 2021-02-12 03:19:09
一、Oracle数据库入门到高薪培训视频教程(从 Oracle11g 到 Oracle19c) 本套Oracle视频教程学习地址: https://edu.51cto.com/course/18034.html 为满足想快速入门学习Oracle的学员,风哥特别设计的一套比较全面的新手快速入门课程。 本教程内容涉及Oracle基础知识、学习环境准备、Oracle11g/12c/18c/19c的安装、Oracle RAC集群、Oracle DataGuard容灾、Oracle备份恢复、Oracle维护管理、Oracle优化诊断、Oracle开发设计入门等内容,适合各种初级运维人员/开发人员,可以完全满足开发、测试、简单业务生产环境。 二、如果只需要部分Oracle课程的学员,请单独点击以下链接 Oracle快速入门培训教程(一):Oracle基础知识入门学习教程 https://edu.51cto.com/course/18033.html Oracle快速入门培训教程(二):Vmware虚拟机安装操作系统 https://edu.51cto.com/course/18032.html Oracle快速入门培训教程(三):Windows快速安装Oracle18c https://edu.51cto.com/course/18031.html Oracle快速入门培训教程(四)

初识数据库(MySql)

☆樱花仙子☆ 提交于 2021-02-12 02:44:31
一、简介   1.MySql是关系型数据库.   2.是一种开放源码软件,   3.是一种关联数据库管理系统.   4.服务器工作于客户端/服务端模式之下,或者是嵌入系统中.   数据库管理软件分类:   分两大类:   关系型:如db2,oracle,access,sql server,mysql, sql语句通用   关系型:mongodb,redis,memcache   可以简单地理解为关系型数据库需要有表结构,非关系型数据库是key-value存储的,没有表结构 二、数据库概述    1.什么是记录?   抽取事务一系列典型的特征,组成一条记录,在计算机中描述一个事物,相当于文件中的一行内容,单纯的一行记录没有什么意义,如果我们按逗号作为分割,依次定义各个字段意思,相当于定义了一张表,如图:   这样的话我们就知道具体数据的意思。    2.什么是数据表?   表就和上面的表格一样,下面还可以继续写入其他人的相关信息,最终保存为文件的形式,我们平时就可以理解数据表就是文件。 三、MySQL的安装   1.下载MySQL地址: http://dev.mysql.com/downloads/mysql/   2.解压,如果想要让MySQL安装在指定目录,那么就将解压后的文件夹移动到指定目录,如:D:\mysql-5.6.45-winx64   3.添加环境变量, 【右键计算机

java队列Queue及阻塞队列

|▌冷眼眸甩不掉的悲伤 提交于 2021-02-12 02:02:03
java队列 接口 Queue类 在java.util包,定义了以下6个方法 详细查看官方文档 https://docs.oracle.com/javase/7/docs/api/java/util/Queue.html 什么是阻塞队列 BlockingQueue   队列是一种数据结构,它的特点是先进先出( First In First Out),它有两个基本操作:在队列尾部加入一个元素,从队列头部移除一个元素。队列在多线程应用中,常用于生产-消费场景。   BlockingQueue 是 Java util.concurrent 包下重要的数据结构,BlockingQueue 提供了线程安全的队列访问方式:当阻塞队列进行插入数据时,如果队列已满,线程将会阻塞等待直到队列非满;从阻塞队列取数据时,如果队列已空,线程将会阻塞等待直到队列非空。并发包下很多高级同步类的实现都是基于 BlockingQueue 实现的。   BlockingQueue 具有 4 组不同的方法用于插入、移除以及对队列中的元素进行检查。如果请求的操作不能得到立即执行的话,每个方法的表现也不同。这些方法如下:   按照上图,我们可以知道jdk1.5中的阻塞队列的操作:   add 增加一个元索 如果队列已满,则抛出一个IIIegaISlabEepeplian异常   remove 移除并返回队列头部的元素

为Navicat正名,Navicat完全使用手册(上)

独自空忆成欢 提交于 2021-02-12 01:58:20
点击关注上方“ SQL数据库开发 ”, 设为“置顶或星标 ”,第一时间送达干货 之前给小伙伴们推荐一款数据库开发工具DataGrip 《 干掉Navicat,这个数据库管理工具真香! 》 最近使用了DataGrip一段时间,发现它并不适合我,因为我平时不仅仅要写代码,也要负责数据仓库的建设和数据库管理的一些工作。 这里给小伙伴们罗列几个我在使用DataGrip中一些不足的地方: 用户体验并不十分友好,你需要花费一些时间去学习如何使用它 和相似的工具比较,它运行并不迅速,当处理大容量数据库的时候会比较缓慢,将耗费GB等级的内存 完全加载本地数据库数据,如果你的数据库数据较多,可能等它加载完成,你差不多要吃午饭了 导入导出功能有待完善 最后还是滚去用Navicat了 Navicat的功能非常多,这里为了让小伙伴们一一掌握,分为多个篇章具体讲述。 目录 安装Navicat 连接不同数据库 创建数据库 数据传输 导出表结构 生成数据字典 查找数据或表名 生成E-R模型 注:以上功能无需书写任何SQL代码 安装Navicat 因为工作原因,需要经常连接不同的数据库,这里我安装的是Navicat Premium版本,在公众号后台回复 Navicat 即可获取。 安装过程很简单,只要你能看懂中文,不停的下一步,等待安装完成即可。 连接不同数据库 这里分别介绍Oracle,MySQL,SQL

JAVA高级编程基础自学笔记---数据库编程(JDBC)

老子叫甜甜 提交于 2021-02-11 18:40:49
教学视频: https://edu.51cto.com/course/5667.html?source=so JDBC严格来讲并不是一门技术,它属于一种服务。服务的特点:所有操作流程都是固定的,提供数据库有操作的标准(它就是一组相关的标准接口),而不同的数据库的生产商要依据此标准自己的具体实现。用户不关注厂商的实现。 JDBC一定是按照固定的代码编写形式使用的。 连接Oracle数据库(重点) 下面按照指定的不再来实现数据库的连接操作: 1.配置数据库驱动程序 本次将使用oracle数据库提供的数据库连接的支持,但是如果要想进行oracle的连接一定要保证打开两个服务:监听、实例服务。(在计算机管理服务启动) 随后要配置数据库的驱动程序,驱动程序的路径(安装文件目录),例如: 如果现在使用记事本开发,那么需要在CLASSPATH中配置,要是使用开发工具eclipse,工具属性,则在【Java Build path】中添加到环境之中,如下图: 2.驱动加载 所有数据库的驱动加载时向容器加载(每当使用java命令解释一个程序的时候都表示启动一个容器),利用Class.forName()进行加载,Oracle的驱动程序路径: ,查找方法如下: 如果没有配置驱动程序则会出现找不到类的异常; 3.数据库连接操作 如果要进行数据库的连接操作那么一定是要的是 程序类,那么这个类没有定义构造方法

Oracle Universal Installer Terminates execution

…衆ロ難τιáo~ 提交于 2021-02-11 18:19:58
问题 I am installing oracle 12c on Windows server 2016 OS . But just after double-clicking on setup.exe my installer disappears without any progress. I am running setup.exe file with administrator privilege. Also disabled UAC . When I checked log files content of the same was Using paramFile: C:\abc\database\install\oraparam.ini Checking monitor: must be configured to display at least 256 colors. Actual 4294967296 Passed The number of files bootstrapped for the jre is 0. The number of files

Oracle Universal Installer Terminates execution

丶灬走出姿态 提交于 2021-02-11 18:19:48
问题 I am installing oracle 12c on Windows server 2016 OS . But just after double-clicking on setup.exe my installer disappears without any progress. I am running setup.exe file with administrator privilege. Also disabled UAC . When I checked log files content of the same was Using paramFile: C:\abc\database\install\oraparam.ini Checking monitor: must be configured to display at least 256 colors. Actual 4294967296 Passed The number of files bootstrapped for the jre is 0. The number of files