
DBA与项目
拙_言
Oracle 10g OCPIBM Certified Systems Expert MAIL:xcl_168aliyun.com
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
DG(1)Performing a Failover to a Physical Standby Database
Oracle 11g官方文档的记录整理,用于物理Standby数据库的Failover. 其中要注意,alter system flush redo是11g的新特性。Step 1 Flush any unsent redo from the primary database to the target standby database. alter system flus原创 2014-02-28 11:27:50 · 1489 阅读 · 0 评论 -
DG(2)Flashing Back a Failed Primary Database into a Physical Standby Database
如果Failover之后,整个Data Guard已不存在了,需要重建主备库关系,即把原来的主库重建为当前库的Standby库。常规做法是重来一遍备份,拷贝,恢复等耗时操作。 不过这里介绍的是利用Flashback Database来快速完成恢复。前提Failover之前,在旧的Primary数据库上已开启过闪回. a. alter system set db_原创 2014-03-02 13:22:50 · 1587 阅读 · 0 评论 -
(01)冷备份
Oracle备份恢复弄得蛮多的,不过记录得零零碎碎的,准备把它给整整,集中起来弄弄。 先成冷备份说起。记得以前刚弄Oracle时,冷备份在单实例用得很多的,不过后面数据库的架构搞得越来越麻烦,RAC这类也很多了。冷备份才用的少了起来。不过有些场景还是蛮合适用它的。1. 建立目录,并授权限Oracle用户,依实际数据库所在用户名为准,本例为oracle. mkdi原创 2013-12-16 21:11:56 · 1430 阅读 · 0 评论 -
ASM与存储容灾
Oracle RAC 搭建ASM新建磁盘组时,Oracle ASM本身有提供三种冗余级别选项:- High 镜像数据两次。- Normal 镜像数据一次。- External 不镜像 ASM 中的数据。如果外部 RAID 阵列提供冗余,则通常使用此选项。 基本上都会在 ASM上选External,再配合存储端的RAID来保护数据。毕竟基于硬件的RAID技术已原创 2013-12-08 16:24:22 · 3007 阅读 · 0 评论 -
(07)数据文件恢复之一通过SqlPlus重建恢复(文件系统与ASM)
本次恢复说明适合于日志完备,但数据文件丢失或损坏的情况。 原理是,数据文件丢了,但创建它,填充它的日志还在。我重建个空的物理文件,让数据库重新执行一遍日志,不就把数据文件恢复过来了。在RAC+ASM环境下测试:1. 查出数据库的所有数据文件 SQL>select file#,name from v$datafile;2. 做个全备,然后新增测试用于表空间和数据文件原创 2014-02-27 23:36:50 · 1792 阅读 · 0 评论 -
(04)归档模式设置大全(8i,9i,10g,11g,RAC+ASM)
设置归档模式是很基本的操作了吧。好像人人都会,不过我把从8i到最新的RAC的归档模式设置方法一一列出来后,你再看看,会发觉还有点意思。值得一说的是,RAC的归档设置步骤蛮多的。 唉,看看这些设置步骤,好像在看历史一样。 本文讲得比较粗糙,其实归档模式设置在DG,RAC的不同存储架构中花样和注意事项很多的。而且不同的设置会有不同的后果。不过管它呢,我写那么多做啥。 本文主要在这讲:原创 2013-12-16 23:33:09 · 2137 阅读 · 0 评论 -
Oracle闪回区满(ORA-16014)
一台老的测试AIX服务器,没人理过,最近一看Oracle闪回满了。清理了下。Version: Oracle 10gR2 for AIX现象: SQL> alter database open;alter database open*ERROR at line 1:ORA-16014: log 3 sequence# 157 not archived, no av原创 2014-03-17 20:38:06 · 1984 阅读 · 0 评论 -
Oracle删除(2)删除Oracle软件
将Oracle软件及相关的目录,用户,用户组全部清掉。1.停止Listener lsnrctl stop2. 关闭并删除数据库。3.将安装目录删除 rm -rf /u01/app/oracle/4.将/usr/bin下的文件删除 9i: rm /usr/bin/dbhomerm /usr/bin/oraenv rm /usr/bin/c原创 2014-02-24 22:45:14 · 1519 阅读 · 0 评论 -
Oracle设置(2)打造好用的Sqlplus
Oracle的Sqlplus如果觉得默认的设置不满意,是完全可以定制化Sqlplus的。你完全可以量身定制把它打造成一个自己顺手的工具。列举了些方法.方法一: 对默认的单调的"SQL>"不满意,可只需在glogin.sql中加上合适的设置就可定制化成自己想要的。 例子:vi $ORACLE_HOME/sqlplus/admin/glogin.sql在这个原创 2014-02-24 21:48:34 · 1634 阅读 · 0 评论 -
Oracle删除(1)删除数据库
两种删除Oracle单实例数据库的方法,各有利弊,可看情况使用。方法一: 用drop命令删除数据库startup mountalter system enable restricted session;drop database; 但这种做法仅删除数据库,没删除相关配置,没法用dbca创建同名的数据库了。方法二:手工删除数据库 手工删能比较干净 1.原创 2014-02-24 22:21:12 · 2185 阅读 · 0 评论 -
Oracle分析函数
分析函数在Oracle8.1.6之后才有的,在数据分析方面非常有用, 能省掉不少的子查询,内联视图之类,甚至于有些要写函数与存储过程弄的语句, 用分析函数都能轻松搞定。 不过用这个也有代价,概念比较多,不经常用,还真记不住。 本来要自己整理个的,发现已经有人整理的非常详细而且成系统,就没必要做重复工作了。记下链接,以便以后查用。 链接如下:原创 2014-02-23 22:14:45 · 1261 阅读 · 0 评论 -
Oracle安装(2)通过SHELL脚本快速安装Oracle11gR2软件
经常在手上要搭建一堆测试环境,Oracle软件装来装去的,重复步骤做得很烦。解决这种问题,用虚拟机克隆是一种方法。我这里用脚本搞定一些重复性的动作也是一种方法。我分四个脚本来做。 一。检查服务器配置及是否缺少必须的包。 二。脚本化自动化配置系统参数,并提供undo功能。原创 2014-02-20 21:59:04 · 4388 阅读 · 0 评论 -
Oracle设置(1)设置Oracle数据库为Linux系统服务
将Oracle数据库设为Linux系统服务,并使其能随系统启动和关闭数据库。1. vi /etc/oratab 将最后一行改为Y. 只有改为Y,Oracle自带的dbstart与dbshut才能起作用。 如: xcldb:/u01/app/oracle/product/11.2.0/db_1:Y2. 启动脚本文件 vi /etc/rc.d/i原创 2014-02-24 21:26:44 · 1594 阅读 · 0 评论 -
Oracle存储过程本地编译方式
通常将Oracle存储过程编译为本地编译方式的测试记录. 测试用表: SQL> create table t1(rid number); Table created SQL> create table t_n(rid number); Table created测试用的存储过程:create or replace procedure pro_xcl(p1 va原创 2014-03-18 00:00:54 · 2790 阅读 · 0 评论 -
Oracle安装(1)静默方式创建Oracle数据库
我前面弄了个通过SHELL脚本快速安装Oracle11gR2软件>>用来快速安装Oracle软件,然后在通过本篇的方式来以静默方式创建Oracle数据库,能更方便的创建数据库,特别是在不方便使用图形界面安装时更有用。不过也有不好的地方,就是11g静默创建时没有进度提示。环境: Oracle 11gR2 for Linux 一。 进入Oracle用户,运行脚本 #! /bin/s原创 2014-02-20 23:07:03 · 2046 阅读 · 0 评论 -
DBA做坏事之盗用Oracle用户身份
DBA管理着数据库所有的数据,但对某些数据的操作,因为审计或其它原因,用管理员身份可能并不方便,但你又不知道方便的那个Oracle用户的用户密码是多少,因为Oracle的用户密码是加密了的。那有没办法不用知道密码的情况下,借用下别的Oracle用户身份来玩玩,弄完了再还回去呢?当然有法子的。 看我来怎么弄。 例子用8i测的,但其它版本都是支持的: SQL> select原创 2014-03-13 16:05:23 · 1547 阅读 · 0 评论 -
自定义的Oracle用户密码效验程序
Oracle的verify_function_11G函数只是通过一些密码规则来让密码看起来不容易猜到,但一些用户的习惯让所设的密码虽然复杂,但并不难猜,这时可以用我写的这个程序,把一些常见的易猜的密码放入文件或字典数据库中, 通过程序自动尝试连接Oracle数据库,来效验指定数据密码是否太过易猜或简单,如果数据库用户配置稍严格些,这个程序就不起作用了,所以不太具有实用价值,仅参考使用。原创 2014-03-16 18:04:37 · 1533 阅读 · 0 评论 -
Oracle VM扩容磁盘空间
在Oracle VM时,意外发现空间小了,不想重装,只好扩容了。 还好Oracle VM算比较好用,就扩容一下。步骤如下:1. 查出要增加容量的映像的uuidC:\Users\XCL>cd C:\Program Files\Oracle\VirtualBoxC:\Program Files\Oracle\VirtualBox>vboxmanage list hddsUU原创 2013-12-24 22:18:47 · 4517 阅读 · 0 评论 -
Oracle操作系统认证用户的安全性
一。什么是Oracle操作系统用户认证登录方式. 即只要在数据库中创建一个os认证用户。然后,就可以在服务器本机或远程客户端上创建和登录一个相同用户名,就可以不需要密码连接上本地或远程的数据库了。 最典型的就是“sql / as sysdba”即不用给出用户名和密码就可以登录到数据库系统中。二。如何用os用户认证,在本机或远程登录数据库。1.原创 2014-03-03 20:56:10 · 1808 阅读 · 0 评论 -
Oracle PL/SQL代码加解密
通过Oracle的PL/SQL代码加密来保护业务逻辑在有些场合非常有用,简单整理了下: 一. 通过Wrap命令来加密 二. 通过dbms_ddl包调用来加密 三. Oracle加密原理 四.加密代码的破解 一. 通过Wrap命令来加密 1.原创 2014-03-25 22:43:23 · 2729 阅读 · 0 评论 -
搞定Linux下Oracle ASM的安装
Linux下安装Oracle RAC时,要弄asm,这东东很麻烦。要跟内核跑,Oracle Linux好点,光盘中自带就有了。不像其它要跑到Oracle官网去下载asmlib 。而且这个东东,步骤不少,版本不同方法还有差异。为了查询方便,我在这集中整理了各种版本系统的搞法。 Oracle Linux 5以下的安装方法. Oracle 6.4及以上版本的安装方法原创 2013-12-24 23:28:37 · 8865 阅读 · 1 评论 -
Oracle VM创建共享磁盘并挂ASM
在Oracle VM搭建Oracle RAC时,生成共享磁盘并挂到asm中步骤还是比较多的。记录一下。前提是已经在VM中已经安装好了一个linux.1. 我在这创建5个磁盘 cd C:\Program Files\Oracle\VirtualBoxVBoxManage.exe createhd -filename D:\OracleVM\ASM\asm1.vdi -siz原创 2013-12-24 23:17:59 · 4990 阅读 · 0 评论 -
Oracle安装(3)快速搭建Data Gurad之物理standby
Data Gurad的作用就不多说了,主在这说下物理standby的搭建步骤。 大致有这三种方式创建standby库 方式一:用rman的方式生成standby. (用rman的duplice方式直接创建,无须先备份) 方式二:用rman的restore方式生成。(先用rman全备份主库后,再用rman通过restore的方式创建) 方式三:用cp的方式生成 (原创 2014-02-28 11:14:24 · 1728 阅读 · 0 评论 -
DB2增差量备份恢复详尽演练
DB2分增量备份(Incremental Backup)和Delta备份(Delta Backup)两种增量备份方式. 增量备份相当于Oracle中的差量备份,即做一次全备份后,其它每次增量,都备份自全量以来所有的变化. Delta备份相当于Oracle中的增量备份,每次增量只备份前一次备份以来的增量部份.我下面附了一个详细的增量备份例子在下面. D原创 2013-12-16 19:21:42 · 2898 阅读 · 0 评论 -
DB2基本概念
混乱的整理了些个人理解的DB2有关的概念。不成系统,但 陆陆续续会放在这。有了这些对DB2基本的概念,后面的学习才有脉络可寻。环境变量搜索顺序: DB2启动时,按先环境变量 ,再全局级注册变量,最后实例级注册变量的顺序来搜索.DB2环境变量文件: # find . -name db2profile./home/db2inst1/sqllib/db2profil原创 2013-12-10 21:24:48 · 1963 阅读 · 0 评论 -
DB2 CLP详解
Oracle有SQLPlus ,DB2有CLP,命令行是最常用的,输入命令的地方,这都不了解下,后面还怎么混?进入命令行(CLP)Windows 1. DB2菜单中的命令行工具 2. db2cmd 或 db2cw 命令启动 CLPUNIX/Linux下就很简单: 1. 要么将DB2的环境变量文件放到系统.profile文件中原创 2013-12-10 21:37:05 · 5437 阅读 · 0 评论 -
DB2监控
收集的一些DB2监控方法.工具监控最方便: 1. toad for db2 2. db2top 代码或命令监控:-- 管理视图列表 db2 list tables for schema SYSIBMADM-- 是到数据库快照,并存入文件 db2 get snapshot for all on xcldb > db2s原创 2013-12-11 19:54:16 · 2329 阅读 · 0 评论 -
DB2在线备份
DB2的在线备份是最常用的功能之一,我整理了下。1.检查参数Unix/Linux下的查看命令:db2 get db cfg for xcldb|grep "USEREXIT"db2 get db cfg for xcldb|grep "LOGRETAIN"db2 get db cfg for xcldb|grep "TRACKMOD"Windows下的查看命令:原创 2013-12-12 19:55:32 · 3018 阅读 · 0 评论 -
DB2文件注册表
文件注册表(DB2 Profile Registries) ,它的存在,能影响到DB2的运行环境配置,是基本的DB2。已有参数查看:--查看被设置的全部db2注册表变量db2set -all--查看全都受支持的注册表变量列表db2set -lr例子:[db2inst1@O11g64 /]$ db2set -all[i] DB2AUTOSTART=YES原创 2013-12-10 21:48:33 · 2593 阅读 · 0 评论 -
DB2系统编目
系统编目是创建数据库时自动生成的,相当于Oracle的数据字典。 生成时机: 创建数据库时 --> DBM会自动为此库生成一套编目表(数据字典) --> 分为 只读用户编目(SYSCAT),可更改的SYSSTAT编目 存放表空间: syscatspace 模式: sysibm 表名前缀: sysibm 存放内容: SYSCAT :存放表定义,索引定义,原创 2013-12-10 22:00:40 · 1659 阅读 · 0 评论 -
DB2权限管理
记录的一部份权限管理相关的东东。实例级权限: SYSADM 最高管理权限,通常供DBA使用 SYSCTRL 最高系统控制权限,有SYSMAINT 和SYSMON 的全部权限 SYSMAINT 次级系统 控制权限 SYSMON 最小的实例级管理权限 Unix/Linux下的查看命令: db2 get dbm cfg|grep "SYS原创 2013-12-11 20:30:19 · 3739 阅读 · 1 评论 -
DB2离线备份与恢复
DB2离线备份最简单的命令可以是这样:db2 backup db sample to c:\db2bak 但实际做定时备份时哪这么简单,我整理了UNIX/Linux及Windows下做定时离线备份的脚本.很好用的.UNIX/Linux:1. 新建目录并授权以便存放备份文件[root@O11g64 tmp]# id db2inst1uid=1051(db2inst1) g原创 2013-12-12 19:51:16 · 4326 阅读 · 0 评论 -
DB2在线备份的恢复
简单整理下在线备份的恢复步骤1. 查找出数据库db2 list history backup all for xcldb2. 在数据库没被破坏前,可用db2ckrst命令得到恢复序列,如要恢复的数据库已损坏,则跳过这步. 这个在增量备份恢复时很有用 db2ckrst -d xcldb -t 20131018111438 -r database 3.检查并得到原创 2013-12-13 20:39:26 · 1825 阅读 · 0 评论 -
DB2日志的管理
DB重要的日志概念$ db2 get db cfg for sample Log file size (4KB) (LOGFILSIZ) = 1000 Number of primary log files (LOGPRIMARY) = 3 Number of secondary log files (LOGSECOND) = 2 Changed path to log原创 2013-12-10 22:41:17 · 4272 阅读 · 0 评论 -
DB2与Oracle相关的东东
随便记了记,不全 兼容Oracle模式 db2set DB2_COMPATIBILITY_VECTOR=ORA db2set DB2_DEFERRED_PREPARE_SEMANTICS=YES --主要进程对照表 PMON db2wdog,db2dlock 不完全对应,PMON管得更多 Server db2agent DBWn db2p原创 2013-12-10 22:24:53 · 1227 阅读 · 0 评论 -
DB2管理器配置参数(DBM CFG)
管理器配置参数(DBM CFG)主要影响实例性能. 1. 作用,参数主要针对实例. 2. 存放位置 UNIX/Linux存放在db2systm文件中, sqllib子目录下. $ pwd /home/db2inst1/sqllib $ ls -l db2systm -rw-rw-r-- 1 db2inst1 db2grp1 409原创 2013-12-10 21:57:50 · 6724 阅读 · 0 评论 -
DB2 V10版与C编程相关接口的安装注意事项
安装DB2 V10版时,用的默认安装,安装完成后才发现include才一个头文件,原来,需要选定制安装,且Application development tools下勾选Base application development tools才有头文件出来。lib文件到是全的。记录下,省得到时要重复装。 MAIL: xcl_168@aliyun.com BLO原创 2014-03-28 08:58:56 · 1638 阅读 · 0 评论 -
DB2手工创建库
DB2手工创建数据库,很简单的。1. 查找数据库默认创建路径 # ./db2 get dbm cfg|grep "DFTDBPATH" Default database path (DFTDBPATH) = /home/db2inst1当然也可在创建时手工指定 //create database mydb on d:\data2. 创建数据库原创 2013-12-10 22:08:37 · 1691 阅读 · 0 评论 -
DB2利用表空间备份重建数据库
对于数据库上了T级,或数十T,全库备份一次时长太长了. 如果只是数据库中一部份表空间的更新比较频繁.可以用表空间备份频繁备份那一部份好了.其它放在全备一起,全备的备份频率可以适当降低点. 而且比较有特色的是它可以在有日志和数据库表空间备份,但没有数据库全备份的情况下,利用表空间备份重建出数据库. DB2这个功能还是比较不错的。1. 准备好目录 su - db原创 2013-12-17 21:01:43 · 4466 阅读 · 0 评论 -
DB2环境变量与参数的备份
DB2的一些环境变量和配置信息是很重要的,虽然不经常变化。但在数据库的恢复时,这些信息就很重要了。所以很有备份的必要。特别是参数有变更时,建议每变更一次,就更备份一次。好作为恢复的参考.这里写了个脚本,用于统一备份这些东东。 1. 脚本db2cfgbk.sh #!/bin/sh#author:xiongchuanliangfn=`date +"%y_%m_%d_%H_%M"原创 2013-12-17 21:07:53 · 1702 阅读 · 0 评论