- 博客(41)
- 资源 (6)
- 收藏
- 关注
原创 Oracle中distinct和group by去重性能的比较
之前去重都是使用distinct,后来在项目上优化SQL的时候发现我司有个开发人员喜欢使用group by来去重,他的解释是group by性能好,那么实际情况到底是怎样的呢?我在测试环境下进行了模拟,毕竟,实践是检验真理的唯一标准嘛。首先创建测试表,使用了dba_objects视图中的数据-- 创建测试用表objcreate table obj as select * from dba_objects;alter session set statistics_level=all;-- 执行两
2020-05-29 15:48:06 7910 3
原创 使用Psycopg2连接openGauss 3.0(python3)
在使用 Python 连接 openGauss 数据库时,需要使用 Psycopg 来进行连接。本文介绍l官方提供的 Python 3 版本如何正确使用。
2022-11-08 22:35:43 1766
原创 KingbaseES忘记system用户密码怎么办?
1. 修改 sys_hba.conf 文件在 data 目录下找到 sys_hba.conf 文件进行修改。local 开头这一行对应的是本地 socket 登录的配置,将最后的 md5 修改为 trust 。2. 重新加载数据库配置重新加载数据库配置,使修改后的配置生效。sys_ctl -D /opt/Kingbase/ES/V8/data/reload3. 免密登录数据库,修改 system 用户密码这时就可以免密登录数据库了。登录之后可以重新设置 system 用户的密码。al
2021-08-16 10:27:27 6836 2
原创 人大金仓KingbaseES大小写敏感性专题
人大金仓的 KingbaseES V8R3 在初始化的时候可以选择大小写是否敏感,这个一旦选定之后,没有办法通过参数来进行调整,只能重新初始化来调整。所以先搞明白什么是大小写敏感性,我们到底需要大小写敏感还是大小写不敏感,然后在初始化时做好选择,避免不必要的麻烦。下面通过表格来看一下大小写敏感性的一些细节操作case_sensitive=off(大小写不敏感)case_sensitive=on(大小写敏感)数据字典信息除“”对象外,用户对象及列名称都显式为小写。sys_catal
2021-08-13 18:05:04 11092
原创 人大金仓命令行客户端工具KSQL系列2
KSQL是什么?如何使用KSQL连接到数据库?如果使用KSQL进行日常的维护管理工作?本系列将详细介绍KSQL方方面面。
2021-08-12 12:00:00 4655
原创 人大金仓命令行客户端工具KSQL系列1
KSQL是什么?如何使用KSQL连接到数据库?如果使用KSQL进行日常的维护管理工作?本系列将详细介绍KSQL方方面面。
2021-08-10 18:21:08 4182
原创 KingbaseES V8R3(人大金仓)基于Linux(统信UOS V20)的安装文档
前面介绍了基于Windows系统的软件安装,本次来介绍基于Linux系统的安装。这里介绍基于统信(UOS)的安装过程,其他的Linux系统(麒麟、CentOS等)安装方式大致相同。这里只介绍最基础的安装过程,操纵系统优化及数据库参数优化等内容后面有机会单独进行介绍,这里不涉及。
2021-04-12 17:41:43 5161
原创 KingbaseES V8R3(人大金仓)基于Windows的安装文档
上一篇文章中介绍了人大金仓数据库软件的下载,这次来介绍一下基于Windows系统的安装。
2021-03-12 19:41:16 5771 4
原创 记一次enq: HW - contention等待事件的处理
问题现象不再详细描述,从AWR报告看到以下等待事件:通过该报告很容易发现,问题出在enq: HW - contention等待事件上。定位热点块对应的对象:select p2, p3 from v$session_wait where event = 'enq: HW - contention';p2 18p3 104858434-- 带入p3值select dbms_utility.data_block_address_file(104858434) file#,dbms_
2020-07-16 15:50:49 484
原创 Oracle通过指定日期删除对应的分区
当使用时间字段作为分区字段,使用间隔分区的时候,分区名称是由系统指定的,所以我们在删除分区的时候就没办法指定分区名称。这个时候我们如果要删除指定分区,通过时间来指定是一个很好的方法。语法示例:ALTER TABLE table_name DROP PARTITION FOR(TO_DATE('20200702','yyyymmdd')) UPDATE GLOBAL INDEXES;下面我们来简单的演示一下:-- 创建测试表CREATE TABLE T_TEST_PARTITION(
2020-07-02 11:28:25 2575 1
原创 Oracle 12.2.0.1 RAC 安装文档 - 基于Centos 7.4 + openfiler 2.99 + VMWare(五、创建数据库)
Oracle RAC 是 Oracle Real Application Clusters 的缩写,是最常用的 Oracle 数据库高可用技术之一。该过程使用 openfiler 来模拟共享存储,通过 VMWare 虚拟化环境来模拟一套接近真实环境的 RAC 集群。
2020-06-10 11:39:04 317
原创 Oracle 12.2.0.1 RAC 安装文档 - 基于Centos 7.4 + openfiler 2.99 + VMWare(四、Oracle Database 安装指南)
Oracle RAC 是 Oracle Real Application Clusters 的缩写,是最常用的 Oracle 数据库高可用技术之一。该过程使用 openfiler 来模拟共享存储,通过 VMWare 虚拟化环境来模拟一套接近真实环境的 RAC 集群。
2020-06-10 10:56:42 326
原创 Oracle 12.2.0.1 RAC 安装文档 - 基于Centos 7.4 + openfiler 2.99 + VMWare(三、Oracle Grid Infrastructure 安装指南)
Oracle RAC 是 Oracle Real Application Clusters 的缩写,是最常用的 Oracle 数据库高可用技术之一。该过程使用 openfiler 来模拟共享存储,通过 VMWare 虚拟化环境来模拟一套接近真实环境的 RAC 集群。
2020-05-29 16:06:08 703
原创 记一次特别的性能问题
前两天接到一个项目现场的电话,说他们有个应用经常访问超时(由于业务需要设置的10s超时时间),开发现场调试后确认是数据库查询慢造成的,让我到现场处理。我到现场之后首先收集了业务繁忙时段的AWR,显示数据库性能很正常,他们描述的SQL连TOP50都没有上。于是手动执行了他们描述的SQL,该SQL非常简单,表不大,where条件的字段选择性也很好,他们没有建索引的执行时间也就160ms左右,我创建索引后的访问时间降低到了8ms,但是测试用例依然显示该步骤耗时12s左右,性能问题没有任何改善。很明显,问题不是出
2020-05-29 11:57:06 312
原创 Oracle 12.2.0.1 RAC 安装文档 - 基于Centos 7.4 + openfiler 2.99 + VMWare(二、系统规划及操作系统初始化)
Oracle RAC 是 Oracle Real Application Clusters 的缩写,是最常用的 Oracle 数据库高可用技术之一。该过程使用 openfiler 来模拟共享存储,通过 VMWare 虚拟化环境来模拟一套接近真实环境的 RAC 集群。
2020-02-20 18:04:09 794
原创 Oracle 12.2.0.1 RAC 安装文档 - 基于Centos 7.4 + openfiler 2.99 + VMWare(一、openfiler 2.99 安装指南)
Oracle RAC 是 Oracle Real Application Clusters 的缩写,是最常用的 Oracle 数据库高可用技术之一。该过程使用 openfiler 来模拟共享存储,通过 VMWare 虚拟化环境来模拟一套接近真实环境的 RAC 集群。
2020-01-19 11:07:42 1425
原创 Centos 7.4 静默安装 Oracle 11.2.0.4 (无图形界面)
有时候可能会遇到没有图形界面,需要安装 Oracle 的情况,Oracle 提供了静默安装的方法解决这种问题。使用这种方式安装的时候,一定要跟踪日志,确保安装过程中没有异常。
2020-01-18 10:20:33 1604 1
原创 Oracle 死锁处理
锁机制是Oracle用来满足隔离性,一致性的重要机制,但是不合理的业务逻辑可能导致死锁的产生,生产环境如果发生大量死锁,可能对业务造成很大的影响,所以必须及时处理。
2020-01-17 16:32:33 331
原创 Windows server 2008 R2 上 oracle 11.2.0.1 升级到 11.2.0.4
一个windows平台的老数据库版本是11.2.0.1,由于不稳定,需要升级到11.2.0.4。
2020-01-17 11:47:18 754 1
原创 Oracle闪回技术详解
闪回技术是Oracle备份恢复机制的一部分,主要解决逻辑错误的恢复问题,无法解决物理损坏造成的故障,是一种非常实用的技术。
2020-01-17 10:33:05 3119
原创 记一次Oracle 19c redo误删除的故障恢复 [ORA-00742 ORA-00312 没有归档]
Oracle 19c 数据库,没有开归档,没有备份,redo 误删除的故障处理过程。ORA-00742 ORA-00312 ORA-00600 [kcbzib_kcrsds_1] ORA-00600 [4194]
2020-01-16 17:16:56 1361
转载 Oracle 12C RAC 单节点各类资源启动顺序
掌握12C集群启动顺序,能帮助我们快速定位启动类问题问题点。根据集群当前状态,针对性阅读相应日志,提高故障处理效率。
2020-01-12 22:26:22 1783
原创 TAF详解
Client-Side TAFClient-Side TAF 的配置很简单,只需要在客户端的tnsnames.ora中添加FAILOVER_MODE配置项。这个条目有4个子项目需要定义。METHOD用户定义何时创建到其实例的连接,有BASIC 和 PRECONNECT 两种可选值。BASIC: 是指在感知到节点故障时才创建到其他实例的连接。PRE...
2020-01-11 18:29:25 3248
原创 Oracle SCN 详解
什么是 SCNSCN (System Change Number) 即系统改变号,是一个由 Oracle 数据库使用的逻辑、内部的时间戳。SCN 按数据库中发生的事件排序,以满足事务 ACID 属性的需要。可以被看做是 Oracle 的内部逻辑时钟机制。Oracle 数据库在系统全局区(SGA)中递增 SCN。SCN 在数据库中无处不在,常见的事务表、控制文件、数据文件头、日志文件、数据块头等...
2020-01-11 18:28:26 835
原创 Oracle锁机制详解
v$transaction 视图第一个视图是v$transaction,就是Oracle数据库所有活动的事务数,所有活动的事务每一个活动的事务在这里有一行。XIDUSN表示当前事务使用的回滚段的编号XIDSLOT说明该事务在回滚段头部的事务表中对应的记录编号(也可以叫做槽号)XIDSQN说明序列号STATUS说明该事务是否为活动的XIDUSN是事务使用的回滚段的编号XIDSLO...
2020-01-11 18:27:43 439
原创 oracle server result cache
Server result cacheoracle 从 11g 开始在 shared pool 中划分了一个新的独立内存区域 server result cache ,用来缓存频繁使用的结果集。与缓冲区缓存数据块不同,server result cache 缓存的是结果集,包含 SQL query result cache 和 PL/SQL function result cache ,他们共...
2020-01-11 18:20:52 272
原创 Oracle表空间概述及其基本管理
最近在工作中遇到有同事对Oracle表空间的理解有问题,所以写了这篇文章。我会从概念,管理及特别需要关注的点等几个维度对表空间进行一些介绍
2020-01-11 17:25:34 591
原创 RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
实验环境准备虚拟机:VMware® Workstation 14 Pro操作系统:Red Hat Enterprise Linux 6.6 x86_64rhel-server-6.6-x86_64-dvd.isooracle软件:oracle 11.2.0.4p13390677_112040_Linux-x86-64_1of7.zipp13390677_112040_Linux-x86-...
2020-01-09 11:51:00 444
原创 LVM基本管理
LVM 是什么LVM 全称 Logical Volume Manager 是一个基于Linux内核开放的逻辑卷管理器,用来管理磁盘等存储设备。LVM 通过将底层的物理磁盘抽象封装,然后以逻辑卷的形式呈现给上层应用。在传统的磁盘管理机制中,文件系统直接挂载到磁盘分区上,无法跨磁盘创建文件系统。而LVM作为中间层,将文件系统和物理磁盘解耦,使得文件系统无需关注具体的物理磁盘,从而可以跨越...
2020-01-08 16:58:00 144
原创 关于MySQL幻读的实验
该实验基于 CentOS 7 + MySQL 5.7 进行打开两个窗口连接到MySQL第一个连接的事务我们命名为 T1第二个连接的事务我们命名为 T2T2 发生在 T1 的 O1 操作结束以后。可以看到在 RR 隔离级别下,T1 的 O1 操作先进行查询 id=1 的用户信息,显示没有结果,按照正确的逻辑,此时我们是可以插入 id=1 的用户的;然后...
2020-01-07 17:20:00 164
原创 基于CentOS 7 部署MySQL 5.7的基本操作
关闭selinux# sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config重启后生效# sestatus修改提示符配置# vi /etc/bashrcPS1="\[\e[37;40m\][\[\e[32;40m\]\u\[\e[37;40m\]@\h \[\e[36;40m\]\w\[\e[0m\]]\\$ "# so...
2020-01-07 13:42:00 70 1
原创 ACID特性及幻读的理解
事务是关系型数据库的重要特性。它是一个包含了一条或多条SQL语句的逻辑原子单元。一个事务包含的SQL要么全部提交,要么全部回滚。Oracle 官方文档中对事务的描述如下:A transaction is a logical, atomic unit of work that contains one or more SQL statements. A transaction gro...
2020-01-06 15:07:00 182
oracle server 结构.xmind
2020-01-12
Centos 7.4 启用大页
2018-11-09
Centos 7.4安装Oracle 11.2.0.4
2018-11-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人