Welcome 微信登录

首页 / 数据库 / MySQL

关于Oralce数据库优化的几点总结

关于Oralce数据库优化的几点总结

个人理解,数据库性能最关键的因素在于IO,因为操作内存是快速的,但是读写磁盘是速度很慢的,优化数据库最关键的问题在于减少磁盘的IO,就个人理解应该分为物理的和逻辑的优化, 物理的是指Oracle产品本身的一些优化,逻辑优化是指应用程序级别的优化物理优化的一些原则:1)、 Oracle的运行环境(网络,硬件等)2)、使用合适的优化器3)、合理配置oracle实例参数4)、建立合适的索引(减少IO)5)、 将索引数据和表数据分开在不同的表空间上(降低IO冲突)...
Oracle数据库中extent management 管理

Oracle数据库中extent management 管理

extent是“区间”的意思在Oracle数据库中:extent management 有两种方式 extent management local(本地管理); extent management dictionary(数据字典管理)默认的是local每种也有两种大小增长方式:uniform:默认为1M大小,在temp表空间里为默认的,但是不能被应用在undo表空间本地管理表空间与字典管理表空间相比大大提高了管理效率和数据库性能,其...
InnoDB存储引擎关键特性

InnoDB存储引擎关键特性

1、插入缓冲Insert Buffer--给InnoDB存储引擎带来了性能插入缓冲和数据页一样,是物理页的一个组成部分。(1)主键primary key是行唯一的标识符,在应用程序中行记录的插入顺序是按照主键递增的顺序进行插入的->插入聚集索引一般是顺序的,不需要磁盘随机读取。(2)非聚集的辅助索引secondary index不唯一,进行插入操作时,非聚集索引叶子结点的插入不是顺序的,折旧需要离散的访问非聚集索引页,插入性能低(B+树的特性决定了非...
InnoDB存储引擎后台线程与内存池

InnoDB存储引擎后台线程与内存池

InnoDB完整支持ACID事务、行锁设计、支持MVCC、提供一致性非锁定读、支持外键->事务安全,适合OLTP应用(在线事务处理)。Mytrix.,Inc.在InnoDB上存储超过1TB的数据,还有一些其他站点在InnoDB上处理平均每次800插入/更新操作->证明InnoDB是一个高性能、高可用、高可扩展性的存储引擎。事务ACID:atomicity原子性:事务commit提交或rollback回滚consistency一致性:事务发生前后...
InnoDB存储引擎的启动、关闭与恢复

InnoDB存储引擎的启动、关闭与恢复

关闭innodb_fast_shutdown=0 完成所有的full purge和merge insert buffer操作(如:做InnoDB plugin升级时)1 默认,不需要完成上述操作,但会刷新缓冲池中的脏页2 不完成上述两个操作,而是将日志写入日志文件,下次启动时,会执行恢复操作recovery没有正常地关闭数据库(如:kill命令)/innodb_fast_shutdown=2时,需要进行恢复操作。恢复innodb_force_recover...
MySQL自带的性能压力测试工具mysqlslap详解

MySQL自带的性能压力测试工具mysqlslap详解

使用语法如下:# mysqlslap [options]常用参数 [options] 详细说明:--auto-generate-sql, -a 自动生成测试表和数据,表示用mysqlslap工具自己生成的SQL脚本来测试并发压力。--auto-generate-sql-load-type=type 测试语句的类型。代表要测试的环境是读操作还是写操作还是两者混合的。取值包括:read,key,write,update和mixed(默认)。--auto-gen...
分析MySQL慢查询日志的好工具--mysqlsla

分析MySQL慢查询日志的好工具--mysqlsla

mysql数据库的慢查询日志是非常重要的一项调优辅助日志,但是mysql默认记录的日志格式阅读时不够友好,这是由mysql日志记录规则所决定的,捕获一条就记录一条,虽说记录的信息足够详尽,但如果将浏览慢查询日志做为一项日常工作,直接阅读mysql生成的慢查询日志就有可能比较低效了。除了操作系统命令直接查看slowlog外,mysql自己也提供了一个阅读slowlog的命令行工具:mysqldumpslow,该命令行提供了一定的分析汇总功能,可以将多个类似的...
CentOS 配置MySQL允许远程登录

CentOS 配置MySQL允许远程登录

Mysql为了安全性,在默认情况下用户只允许在本地登录,可是在有此情况下,还是需要使用用户进行远程连接,因此为了使其可以远程需要进行如下操作:一、允许root用户在任何地方进行远程登录,并具有所有库任何操作权限,具体操作如下:在本机先使用root用户登录mysql:mysql -u root -p"youpassword" 进行授权操作:mysql>GRANT ALL PRIVILEGES ON *.* TO "root"@"%" IDENTIFIE...
Oracle SQL引擎体系结构图

Oracle SQL引擎体系结构图

当一条SQL提交到Oracle后、SQL引擎会分三个步骤对其处理和执行:① Parse(解析)② Execute(执行)③ Fetch(获取)这三个步骤分别由SQL引擎的不同组件来完成、下面偶大概的绘出这张体系结构图:记住这张图、对以后的优化或许会起到事半功倍的效用 =_=By David Lin2013-06-24Good Luck更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.asp...
Oracle 开发人员分析SQL 执行计划的关注点

Oracle 开发人员分析SQL 执行计划的关注点

繁琐复杂的执行计划、可能迷了开发人员的眼、导致一条性感又傻X的SQL 在服务器上跑得特欢乐有介于此、重点抓住几个部分、至于其他的嘛、当然是、非礼勿视咯、、㈠ 返回行的数量Oracle优化器是基于成本的、评估成本的一个主要指标便是查询多少行一般的、返回值在100W或者大表返回值超过总记录50%、可优化的空间就非常小标记图为:㈡ 返回行与逻辑读的比率经验值是:每行5个以下逻辑读开销是可接受的标记图为:每行需要花费7 个逻辑读㈢ 聚合查询这类查询有 2 点需要注...
Oracle创建视图view权限不足问题剖析

Oracle创建视图view权限不足问题剖析

问题:使用USER1等其他用户登录Oracle以后,创建视图,提示“权限不够”,怎么解决?这是因为USER1这个帐户目前没有创建视图的权限。解决方法为:首先使用system帐户进行登录然后执行:grant create any view to USER1提示:授权成功。再使用USER1登录就可以创建视图了。如果还是问题还是没有解决:即便是grant dba to USER1;grant dba to USER2;可能还会报这种错误,...
<< 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 >>