- 博客(75)
- 资源 (2)
- 收藏
- 关注
原创 ROW_NUMBER() OVER()
ROW_NUMBER()OVER() 是oracle SQL分析函数,主要是用来对要查询的数据分组排序使用。 使用方法 ROW_NUMBER()OVER(PARTITION BY col1 ORDER BY col2) 对列col1分组,col2排序操作。 例子:SQL> SELECT 2 ROW_NUMBER()OVER(PARTITION BY deptno ORDER BY
2017-03-21 16:33:34 481
原创 浅谈ORACLE AWR single instance 一
Sessions 采集性能信息时,oracle 实例链接的会话数,有助于判断DB的类 Cursors/Session 单个会话平均打开的游标数 Elapsed DB实际使用时间 DB Time 数据库操作花费的时间,包括CPU和Wait Event time,DB Time越高数据库,数据库负载越高。通过DB Time/Elapsed 比值判断数据库的繁忙程度,比值越高,数据库越繁忙。
2017-03-14 15:33:05 932
原创 MySQL使用存储过程创建用户
周五接到开发朋友的一个小求助,需要在MySQL 测试环境创建一个自动创建用户的存储过程,要求帮忙编写一下。 MySQL version 5.5.17 OS version CentOS 6.4 存储过程内容如下:DELIMITER //CREATE PROCEDURE cr_user(IN p_uname VARCHAR(20), IN p_passwd VARACHAR(200))BE
2017-02-12 11:21:28 2371 1
原创 MySQL 用户管理
合理的管理DB用户权限是一个DBA的基本工作,这里整理一下MySQL用户管理的相关内容。CREATE USER、DROP USER、RENAME USER 用来创建、删除、修改MySQL用户GRANT 为给定MySQL用户分配权限REVOKE 撤销已给定MySQL用户的相关权限SET PASSWORD 为MySQL用户配置密码SHOW GRANTS 显示给定MySQL用户的权限 相关用户及
2017-01-10 15:00:50 1445
原创 2016已经过去,2017即将开始
申请这个blog一直想写点东西,一直没有时间打理,一直想写点干货,一直没有机会写,其实都是借口。在2017年,这个blog将成为我的blog平台(自己懒得搭建),每个月2篇有内容的blog,一定完成。 My name is Kevin, and I am a DBA, a osa and a coder, which means I am a architect.
2016-12-28 22:52:29 649 1
原创 ogg installation
Oracle golden gate is installed by oracle. Gernerally, the location is /u01/app/ogg Unzip the archive tag fo ogg and locate taht to /u01/app/ogg It should set the environment value of LD_LIBRARY_PA
2016-01-11 12:45:49 656
原创 配置oracle shared server
1、 独占服务器(dedicated server) 每一个session单独分配一个server process,直到用户断开连接,才释放该进程所占用的资源。而大多数时候session都是idle的,所以存在占用资源的情况。 在有些情况下,必须使用独占服务器模式:(本地连接)SQL> select username,SERVER,PROGRAM,OSUSER,MACHINE from v$se
2015-11-04 17:32:40 707
原创 oracle创建外部表
oracle db允许以只读的形式查询外部表。外部表可以存储在任何oracle db可以读取的存储设备中,其内容不在db中保存,db只保存external table的metadata,db可以查询(join、sort)external table,可以创建view、synonym,但不可以执行DML语句。创建外部表语法create table ……orginzition external,可以把外
2015-08-31 09:46:10 5225 3
原创 oracle 控制文件
控制文件是组成oracle database的主要文件之一,记录oracle数据库物理结构的二进制文件,主要包括的内容如下: 数据库名 数据文件及redo log文件位置信息 数据库创建时间 数据库当前日志序号 检查点信息oracle server及使在数据库close 状态对control file拥有读写权限,当数据库mount时需要用到control filecontrolfile的
2015-08-10 11:26:44 743
原创 sql 插入多个表数据
insert more than one rowseg.insert allwhen column into tab1when column > condition theninto tab2elseinto tab 3 select from tab
2015-02-08 22:30:39 1690
原创 oracle11g 手工建库步骤
#create oracle instance parametervi initkevin.ordb_name='kevin'memory_target=0sga_max_size=5Gsga_target=3Gpga_aggregate_target=1gprocesses = 150audit_file_dest='/u01/app/oracle/admin/k
2014-12-17 15:03:13 2328
原创 Message 1070 not found; No message file for product=network, facility=TNSTNSLSNR for Linux: Version
接到一个朋友打来的求助电话,在安装oracle11g单机版的时候新建监听报错如下:Message 1070 not found; No message file for product=network, facility=TNSTNSLSNR for Linux: Version ............原因:在oracle用户配置环境变量文件.bash_profile时没
2014-11-26 15:20:47 10354 1
原创 创建MySQL从库
我们知道Oracle有DataGuard实时备份数据,可以做主备切换,而MySQL也有自己的一套备库方案,称之为主从复制。搭建MySQL从库是为了实时同步主库数据,同时也可以分担主库的读压力,对数据库端做成读写分离结构。搭建MySQL主从库注意点:1.主库和从库的 server-id 一定不能相同。2.在主库创建replication slave账户
2014-10-20 16:13:00 1184
原创 OOW2014 Larry Ellison's session! Do not miss
http://medianetwork.oracle.com/video/player/3811144032001
2014-09-30 09:33:53 586
转载 Oracle 11g 针对SQL性能的新特性(一)- Adaptive Cursor Sharing
Oracle 11g对SQL执行计划的生成过程做了很多改变,我们经常看到有客户抱怨,数据库在升级到11g以后,执行计划变得很不稳定,甚至难以预测。实际上,Oracle在最新版本中致力于让优化器变得更加“智能”,通过自我学习的方式,来改进目前体系上所存在的缺陷。 我们将分章节为您粗略介绍下面几个新特性,这些很可能是造成您执行计划改变的原因。 · Adaptive
2014-09-23 09:36:06 837
原创 MySQL查看表相关外键关系sql
刚接手MySQL数据的时候,经常会遇到主外键关系,有没有E-R图来帮助,职能通过SQL来查询:select TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAMEfrom INFORMATION_SCHEMA.KEY_COLUMN_USAGEwhere
2014-09-16 21:16:32 4345
原创 CentOS 6.4 X11配置
默认mini安装和server安装出来的CentOS 6.4系统上面没有xdm。因为使用Xmanager要求linux系统中必须有xdm才行,因此我们需要先安装xdm。yum instal
2014-09-15 13:07:31 7391
原创 ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.56.105' (113)
[root@mysql ~]# mysql -uroot -h192.168.56.105 -pEnter password: ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.56.105' (113)问题的分析出现上述问题,可能有以下几种可能1. my.cnf 配置文件中 skip-netwo
2014-09-02 16:03:38 2475
原创 Linux 6.2配置yum本地
yum1、挂在iso文件[root@localhostmedia]# mount /dev/cdrom /media2、安装createrepocreaterepo是配置YUM源的配置工具,检查当前是否已经安装createrepo包的安装情况:[root@localhostPackages]# rpm -ivh createrepo-0.9.8-4.el6.no
2014-09-02 14:54:58 1026
原创 mysql5.5.17源码安装
1. 源码包下载 源码包通常也采用tar.gz压缩,名称中只包含版本信息,大小也比RPM包、二进制包小很多,解压后的文件中含有INSTALL-SOURCE文件,可从MySQL官网(http://www.mysql.com/downloads/)下载,如:mysql-5.5.17.tar.gz2. CMake在采用源码包安装MySQL实例之前,先来介绍一下cmake这个编译工具。在MyS
2014-08-26 09:17:46 1374
原创 oracle spm使用1
oracle11g new feature SPM有助于保持sql的语句特性,只允许执行性能提高的执行计划。它不同于stored outlines, spm在于稳定sql性能,而store outlines在于冻结sql执行计划事列1.启用optimizer_cature_sql_plan_baselines 捕获sql语句SQL> alter sess
2014-07-09 22:23:43 1320
原创 启用oracle 11g自动收集统计信息
今天接到朋友数据库一个case,在DBCA建库时,把自动收集统计信息的选项去掉了,数据库运行半年没有收集过统计信息,现在要启用方法如下:exec DBMS_AUTO_TASK_ADMIN.ENABLE();exec DBMS_AUTO_TASK_ADMIN.ENABLE(client_name => 'auto optimizer stats collection',ope
2014-07-01 22:16:45 1622
原创 ORA-00600: internal error code, arguments: [4194], [53], [41], [], [], [], [], []
真心不动了,研发的同事关测试IBM 3650服务器是直接关插排电源???第二天加点重启之后oracle 打开报错ORA-00600: internal error code, arguments: [4194], [53], [41], [], [], [], [], []求助DBA决绝办法,启用undo手动管理,重建undo表空间步骤如下:SQL> alter system
2014-07-01 00:01:24 1171
原创 oracle 11gr2 开启memery_target 之后内存震荡
公司测试数据库测试memery_target参数功能,利用crm系统jing'xi
2014-06-30 23:41:33 1155
原创 not exists 事例
今天一个开发问到一个not exists问题,小小做个实验实验1SQL> select * from emp e1 where not exists (select 1 from emp e2 where e1.mgr = e2.empno); EMPNO ENAME JOB MGR HIREDATE
2014-06-30 17:02:35 896
原创 清除mysql binary log
作为一个oracle dba有时候不得不管理一下mysql数据库,当为主从库时需要阶段性清理mysql binary log,清楚方式如下:首先查看mysql 的当前日志组show master status;确定当前日志组后删除日志文件purge binary logs to 'mysql-bin.000795';删除000795之前的日志
2014-06-30 10:04:14 1000
原创 归档模式下恢复没有备份的数据文件
测试环境SQL> select * from v$version;BANNER--------------------------------------------------------------------------------Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Product
2014-06-24 23:19:13 899
原创 mysql数据库密码破解
公司mysql dba把数据库root密码丢失需要破解,方法如下,适合linux、unix机器service mysqld stop /opt/mysql/bin/mysqld_safe --skip-grant-tables & /opt/mysql/bin/mysql -u root update mysql.user set password=PASSWORD('...')
2014-05-22 18:28:54 903
原创 追踪sql会话 dbms_monitor
经常会遇到一个会话中存在sql性能问题,但无法定位哪一个sql导致DB性能问题较高,这是我们需要对这个session进行监控可以通过dbms_monitor包来实现。首先确定要监控的会话sid及serial#,可以通过v$session视图获得select sid, serial#, username from v$session where ...确定session
2014-04-30 16:53:51 1462
原创 one sql to calculate the schema's table capacity
SELECT owner, table_name, TRUNC(SUM(bytes)/(1024*1024)) MBFROM (SELECT segment_name table_name, owner, bytes FROM dba_segments WHERE segment_type = 'TABLE' UNION ALL SELECT i.ta
2014-04-11 14:50:24 962
原创 function base index
create table t1(id number, idd varchar2(10));insert into t1 values( 1, '11');insert into t1 values(2, '22');commit;SQL> create index idx_idd_t1 on t1(to_number(idd));Index created.SQL>
2014-04-03 19:48:31 954
原创 There will be decreasing performance of oracle by delete whole table and then insert ...
There is a project that need collecting periodically (2 months) data into one table and then exporting it as excel file. The table is a temporary table, the app do that delete from tb_name;inser
2014-04-02 21:00:53 1184
原创 ORA-01110 ORA-01111: name for data file 69 is unknown - rename to correct file
Today, I has added a datafile of an tablespace with 'alter tablespace tbs_name add datafile '+DATA' 8g'. I received a critical warning that the data guard standby machine done which could not synchr
2014-04-01 17:21:34 2890
原创 oracle top n sentences
Oracle has some sentences for top n version oracle 10g 11gTOP-NSELECT * FROM ( SELECT name, id FROM test ORDER BY id DESC) WHERE rownum <= 5;SELECT * FROM ( SELECT name, id FROM
2014-03-21 13:49:01 824
原创 oracle nologging operation
我们都知道redo日志是oracle恢复的基础,但是有时候我们为了增加数据库运行的速度常常会通过减少redo log的产生来加快数据库的运行速度。一般常规的dml语句insert、update、delete是不能制止redo log 的,这是数据库基础操作。一些ddl语句可以通过nologging禁止产生redo log,它们在操作吃使用的new extent 被标记为invalid,如:
2014-03-20 14:30:19 1098
原创 10046 trace context
10046 trace可以帮助我们解析一条或多条SQL、PL/SQL语句的运行状态,这些状态包括解析、取值、执行三个阶段的详细过程已经所消耗资源的多少等等。10046还可以帮助我们分析一些DDL维护命令的内部工作原理,是我们学习oracle的必备工具。10046有不同的trace levellevel 1 启用标准SQL_TRACE功能,包括SQL语句、服务时间、响应时间、处理
2014-03-18 15:54:22 1169
原创 How to understand pare(soft/hard) in AWR report
我们经常关注AWR report中pase cpu to pase elapsd % 参数,它表示sql在解析过程中使用cpu的时间占用总时间的百分比,我们希望它接近100,这样sql在解析的过程中没有其它事件在等待。当我们发现此参数值比较低时,就要考虑sql在解析过程中等待什么事件,由那些事件触发它在等待(libary cache, row tx contention eg)。这时我们要考虑
2014-03-17 22:56:28 1049
原创 Reading sql_plan of executed sql via dbms_xplan.display_awr()
我们在分析awr报告时肯定不可避免要分析top sql,为了能更好的再现当时sql的执行计划,我们可以通过sql_id来读取当时sql的执行计划,如:QL> select * from table(dbms_xplan.display_awr('91k4w10zgrg4m'));PLAN_TABLE_OUTPUT--------------------------------------
2014-03-06 10:47:07 932
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人