
数据库
文章平均质量分 86
lx_Frolf
以实战为主的系列知识分享愿景
展开
-
Oracle-windows操作系统下的Oracle卸载步骤
windows操作系统下的Oracle卸载步骤:1.关闭oracle所有的服务。可以在windows的服务管理器中关闭; 2.打开注册表:regedit 打开路径: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ 删除该路径下的所有以oracle开始的服务名称,这个键是标识Oracle在windows下注册的各种服务! 3....原创 2018-09-11 12:40:54 · 462 阅读 · 0 评论 -
MySQL(InnoDB)锁详解
表锁,行锁锁是用于管理不同事务对共享资源的并发访问表锁与行锁的区别:锁定粒度:表锁 > 行锁加锁效率:表锁 > 行锁冲突概率:表锁 > 行锁并发性能:表锁 < 行锁InnoDB存储引擎支持行锁和表锁(另类的行锁),InnoDB的表锁是通过行锁把所有行都锁住实现的,他本身是不支持表锁的。InnoDB锁类型这八种锁中,后面三种锁只能算是行锁的算法共享锁(行锁...原创 2018-12-29 15:44:11 · 1299 阅读 · 0 评论 -
MySQL常见配置
MySQL配置优化MySQL服务器参数类型基于参数的作用域:全局参数 set global autocommit = ON/OFF;会话参数(会话参数不单独设置则会采用全局参数) set session autocommit = ON/OFF;注意:全局参数的设定对于已经存在的会话无法生效 会话参数的设定随着会话的销毁而失效 全局类的统一配置建议配置在默认配置文件中,否则重启服务会导致...原创 2018-12-29 15:46:13 · 782 阅读 · 0 评论 -
MySQL的几种存储引擎
一。MySQL存储引擎介绍存储引擎是一种插拔式的插件方式,提供了一套API标准;是指定在表之上的,即一个库中的每一个表都可以指定专用的存储引擎;不管表采用什么样的存储引擎,都会在数据区,产生对应的一个frm文件(表结构定义描述文件)。二。各种存储引擎1.CSV存储引擎数据存储以CSV文件特点: 不能定义没有索引、列定义必须为NOT NULL、不能设置自增列 -->不适用大表或者数...原创 2018-12-29 15:49:05 · 2576 阅读 · 0 评论 -
mysql-基于tree的索引的数据结构
各种基于树的索引的数据结构:1.普通二叉树:查找的效率取决于数据的分布情况,如上图类似于全表扫描:2.平衡二叉树(红黑树就是一颗定义更复杂一些的平衡二叉树):会在数据的插入或删除的时候,通过一个平衡因子(旋转树的方式)去保证整个树的相对平衡(1)相对平衡二叉树:某个节点的子节点的高度差不会超过1(2)完全平衡二叉树:AVL树,整棵树的高度差都不会超过1检索过程:一个节点就认为是...原创 2018-12-29 15:52:53 · 527 阅读 · 0 评论 -
MySQL内部原理深度解析
一。MySQL体系结构1,Client Connectors接入方 支持协议很多,比如Java的接入协议是JDBC,ODBC2.Management Serveices & Utilities:系统管理和控制工具例如:备份恢复,mysql复制集群等3,Connection Pool连接池:管理缓冲用户连接、用户名、密码、权限校验、线程处理等需要缓存的需求,接收来自客户端的协...原创 2018-12-29 15:55:36 · 1321 阅读 · 0 评论 -
MySQL事务
什么是事务?事务:数据库操作的最小工作单元,是作为单个逻辑工作单元执行的一系列操作; 事务是一组不可再分割的操作集合(工作逻辑单元);典型事务场景(转账): update user_account set balance = balance - 1000 where userID = 3; update user_account set balance = balance +1000 whe...原创 2018-12-29 16:01:31 · 328 阅读 · 0 评论 -
mysql-影响MySQL索引的因素
一.MySQL索引索引是为了加速对表中数据行的检索而创建的一种分散存储的数据结构。MySQL5.5之前的版本,默认的存储引擎是MyISAM,5.5以后默认的存储引擎是InnoDB。存储引擎是由第三方公司提供的一个插拔式的插件(是每个公司都要实现的一套标准)的方式来使用的。存储引擎都是定义到表结构上面的,可以在一个库里面定义多种存储引擎,每个表可以使用不同的存储引擎。索引机制就是由这些插拔式的存...原创 2018-12-29 16:03:38 · 996 阅读 · 0 评论 -
MySQL之MVCC原理解析
Innodb MVCC一。mvcc是什么?MVCC: Multiversion concurrency control (多版本并发控制)并发访问(读或写)数据库时,对正在事务内处理的数据做 多版本的管理。以达到用来避免写操作的堵塞,从而引发读操 作的并发问题。二。MySQL中mvcc插入逻辑流程Innodb 如何实现的mvcc呢?假如一张表user有三个字段id,name,age,...原创 2018-12-31 17:09:40 · 1007 阅读 · 0 评论 -
MySQL语法及函数
修改密码:首先在DOS 下进入mysql安装路径的bin目录下,然后键入以下命令:mysqladmin -uroot -p(原密码) password 新密码;授权格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by ‘密码’SHOW GRANTS FOR name; //查看name用户权限REVOKE SELECT ON db_name....原创 2018-12-29 15:39:18 · 1382 阅读 · 0 评论 -
MySQL在centOS7下的下载安装配置
通过解压缩的方式安装官网:https://dev.mysql.com/downloads/mysql/5.7.html#downloads下载好之后上传到Linux2、解压tar zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz -C /usr/local/mysql建议:不要安装到其它目录,否则数据库初始化的时候会报cannot ch...原创 2018-12-29 15:33:27 · 1850 阅读 · 0 评论 -
Oracle sql优化的一些方法
自己总结的一些sql优化的方法,只针对于oracle数据库,其他的数据库不一定有效。1.访问表的方式,Oracle采用两种访问表中记录的方式:全表扫描就是顺序的访问表中每条记录,Oracle采用一次读入多个数据块的方式优化全表扫描;通过RowID访问表,采用基于rowid的访问方式,提高访问表的效率,RowID包含了表中记录的物理位置信息,Oracle采用索引Index实现了数据和存放数据的物...原创 2018-09-05 12:57:02 · 1084 阅读 · 0 评论 -
数据库的设计总结
首先对数据库的整体结构进行图形化的设计,然后在依据图形对数据库结构进行建立。简单来说,数据库设计就是根据业务系统的具体需要,结合我们所选用的DBMS(数据库管理系统),为这个业务系统构造出最优的数据存储模型,并建立好数据库中的表结构及表与表之间的关联关系的过程。使之能有效的对应用系统中的数据进行存储,并可以高效的对已经存储的数据进行访问。 应用系统中的数据可以有多种存储方式,可以把所有数据存储在...原创 2018-09-10 12:49:15 · 8394 阅读 · 0 评论 -
oracle11g客户端远程连接服务端步骤
oracle11g客户端远程连接服务端步骤,自己亲自试过有效:1.服务端安装11g成功,64位装32位和64位的,32位装32位2.服务端和远程客户端位数要一致,是oracle的位数,跟电脑位数无关,否则会报错3.在服务端搜索下列文件oci.dllocijdbc10.dllociw32.dllorannzsbb10.dlloraocci10.dlloraociei10.dlls...原创 2018-09-20 12:45:36 · 5645 阅读 · 1 评论 -
Oracle执行时报错代码及信息
Oracle执行时报错代码及信息的常见错误总结:ORA-00001:违反唯一约束条件(主键错误)ORA-00028:无法连接数据库进程ORA-00900:无效sql语句ORA-00904:字段名写错或是建表时最后一个字段有逗号ORA-00907:缺少右括号ORA-00911:无效字符ORA-00917:缺少逗号ORA-00918:未明确定义列ORA-00922:丢失或无效的选项(...原创 2018-09-26 13:04:37 · 2623 阅读 · 0 评论 -
Oracle几种update语句分析
1.单条语句更新语法:UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值说明:如果更新的字段加了索引,更新时会重建索引,更新效率会慢。单表更新或较简单的语句采用使用此方案更优。2.批量数据更新语法:update 表a set a.字段1 = (select b.字段1 from 表b where a.字段2=b.字段2) where exists(select 1...原创 2018-11-16 14:08:01 · 7160 阅读 · 0 评论 -
oracle数据库的深度解析
1.ORACLE数据库与实例的区别1.1数据库(DATABASE):物理操作系统文件或磁盘的集合。1.2实例(INSTANCE):一组ORACLE后台进程/线程以及一个共享内存区,这些内存由同一个计算机上运行的线程/进程所共享。这里可以维护易失的、非持久性内容(有些可以刷新输出到磁盘)。就算没有磁盘存储,数据库实例也能存在。1.3实例和数据库之间的关系是:数据库可以由多个实例装载和打开,而实...原创 2018-11-16 14:17:24 · 1409 阅读 · 0 评论 -
Oracle存储过程的优化
Oracle存储过程的优化措施1、开发人员如果用到其他库的Table或View,务必在当前库中建立View来实现跨库操作,最好不要直接使用“user_name.table_name”。2、开发人员在提交前,必须已经分析过查询计划,做过自身的查询优化检查。3.SQL的使用规范:3.1尽量避免大事务操作,提高系统并发能力。3.2尽量避免反复访问同一张或几张表,尤其是数据量较大的表,可以考虑先...原创 2018-11-16 14:20:12 · 6045 阅读 · 0 评论 -
MySQL在window下的下载安装配置
一.MySQL下载官网:https://www.mysql.com/downloads/打开网址后,按照如下操作:会看到很多MySQL的版本,以MySQL5.6为例:选择对应的版本进行下载:如果没有注册登录下载页面时,官网会提示你注册一个账号进行下载,当然你也可以选择无需注册即可下载MYSQL的解压包。二.安装下载好的MySQL是个zip压缩包,需要解压,解压即安装,我的是安装...原创 2018-12-29 15:24:25 · 289 阅读 · 0 评论 -
mysql执行计划详解
分析MySQL执行计划查询SQL:SELECT *FROM USERWHERE userId IN (SELECT userId FROM user_address WHERE addressId IN(3, 2));一.idselect查询的序列号,标识执行的顺序1、id相同,执行顺序由上至下2、id不同,如果是子查询,id的序号会递增,id值越大优先级越高,越先被执行...原创 2018-12-31 17:14:44 · 352 阅读 · 0 评论