知识大全 Oracle11g物理备用数据库“实况克隆”详解
Posted 数据库
篇首语:没有锯不倒的树,没有敲不响的钟。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Oracle11g物理备用数据库“实况克隆”详解相关的知识,希望对你有一定的参考价值。
Oracle11g物理备用数据库“实况克隆”详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
相比Oracle i和Oracle i Oracle g在数据库备份方面做出了极大的改善 特别是作为Oracle最大可用性架构(MAA)一部分的真正应用集群(RAC)特性 Oracle g现在创建一个备用数据库变得更加简单了 因为恢复管理器(RMAN)支持直接从主数据库使用DUPLICATE DATABASE命令集通过网络克隆一个备用数据库 只要目标数据库是活动的即可 这意味着再也不用先生成 再传输 最后在备用数据库上通过复杂的手工方式还原和恢复主数据库的RMAN备份集了 相反 RMAN在主站点上自动生成一个转换脚本在内存中 然后在备用站点上使用这个脚本管理克隆操作 实际上不用DBA进行任何干预 下文将集中精力讲解备用数据库 实况克隆 特性 笔者的硬件基本情况是 双核AMD Athlon 位CPU(Winchester ) GB内存 主机运行的是Windows xp系统 运行VMWare Server 访问访问虚拟数据库服务器环境 每个虚拟机使用 个CPU M内存 我选择Oracle Enterprise Linux (OEL) (Linux内核版本 ELsmp)作为虚拟机客户端操作系统
每个VMWare虚拟机配置好后 在每个虚拟机的/etc/hosts文件中添加合适的条目 让主站点(training)和备用站点( gStdby)之间建立起网络连接 然后在每个节点上都安装Oracle g数据库 最后 在主站点上创建好标准的 g R 种子数据库 包括标准的示例方案 这个数据库的ORACLE_SID是orcl 接下来就可以开始执行实况克隆操作了
克隆前准备工作 调整主数据库
在克隆主数据库到对应的备用环境中之前 我需要对主数据库做一些调整 下面的步骤未做特别说明没有先后顺序 只要在发出DUPLICATE DATABASE命令前这些步骤都执行完了即可 在克隆操作过程中应该没有什么让人意外的东西出现
强制记录所有的交易
大多数组织实施数据卫士配置的主要原因是保证所有交易都不丢失 但遗憾的是 默认情况下 Oracle数据库是运行在NOFORCE LOGGING模式下的 这意味着对对象的改变可能丢失 因为他们的存储属性被设为NOLOGGING 为了确保所有的改变都被记录下来 我将执行ALTER DATABASE FORCE LOGGING命令 这个命令需要在执行ALTER DATABASE ARCHIVELOG命令将数据库ARCHIVELOG模式前执行 这些命令如清单 所示
清单 将主数据库切换到ARCHIVELOG模式
–为归档日志文件设置一个合适的格式
ALTER SYSTEM SET log_archive_format = log_%s_%t_%r arc SCOPE=SPFILE;
–设置新的DB_UNIQUE_NAME参数 它不能动态修改
ALTER SYSTEM SET db_unique_name = orcl SCOPE=SPFILE;
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE FORCE LOGGING;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;
创建备用重做日志组
自从Oracle i R 开始支持备用重做日志(standby redo log 即SRL)组开始 Oracle就建议配置它 SRL对于实时应用(Real Time Apply)特性是需要的 或DBA想要实现重做日志串联目的时也需要 除此之外 它任然是备用数据库配置选项 Oracle g另一个优点是如果SRL在主数据库上已经配置好 那么DUPLICATE DATABASE命令将会在备用数据库上自动创建它们 清单 显示了我在主数据库上创建SRL的命令 注意我也使用了多个重SRL文件保护整个SRL组 避免数据丢失 这一点和在线重做日志组类似
清单 在主数据库上创建备用重做日志文件
ALTER DATABASE
ADD STANDBY LOGFILE
/u /app/oracle/oradata/orcl/srl log
SIZE M
REUSE;
ALTER DATABASE
ADD STANDBY LOGFILE
/u /app/oracle/oradata/orcl/srl log
SIZE M
REUSE;
ALTER DATABASE
ADD STANDBY LOGFILE
/u /app/oracle/oradata/orcl/srl log
SIZE M
REUSE;
文件名转换
一般情况下 备用数据库都是创建在与主数据库不同的主机上的 否则 在灾难中主备数据库都有可能受到危害 最佳做法是将对应的备用数据库的目录和文件名都弄成一样 但如果遇到挂载点不一样时 目录名需要修改 这个时候就需要使用DB_FILE_NAME_CONVERT和LOG_FILE_NAME_CONVERT初始化参数进行转换了
修改主站点初始化参数
在主数据库上设置下列初始化参数确保DUPLICATE DATABASE命令能够一样配置备用数据库 我在清单 中详细列出了这些初始化参数设置
( )DB_UNIQUE_NAME
我通过这个参数为主数据库定义一个唯一的实例名 这个参数值使得区分 原始 主数据库和备用数据库变得更加简单 因为这是一个静态参数 我在清单 中已经将其设置为SCOPE=SPFILE 它将在主数据库实例启动时生效
( )LOG_ARCHIVE_CONFIG
这个参数控制主或备用数据库是否应该接受和/或发送来自远程源的归档重做日志 它允许我们包含所有主备数据库 因为它在配置中列出了所有数据库的DB_UNIQUE_NAME值 我将其设置为目前我的数据卫士数据库orcl和stdby
( )STANDBY_FILE_MANAGEMENT
我将这个参数设置问为auto了 这样主数据库上发生什么操作 备用数据库上就会跟着发生什么操作 如主数据库上创建一个文件 备用数据库上也将创建一个相同的文件 删除主数据库上一个已有文件 备用数据库上也做对应的删除 如新增一个在线重做日志文件组或删除一个表空间
( )LOG_ARCHIVE_DEST_n
这个控制是从主数据库上传输归档重做日志到物理备用数据库的关键参数 我将设置两个归档目标
目标LOG_ARCHIVE_DEST_ 指定主数据库归档重做日志的物理位置 注意我们使用了闪回恢复区作为目标
目标LOG_ARCHIVE_DEST_ 指定了对应的备用数据库实例(stdby)的网络服务地址 这个参数确保归档重做日志自动传输到备用站点
对于这个归档重做日志传输参数我还可以指定另外两个指令
◆当数据库是以特定角色激活时 指令VALID_FOR大大简化了重做日志传输时的类型 当主备数据库角色不同时 在传输重做日志时这是最关键的参数 表 列出了这个参数允许的值
表 VALID_FOR指令值
设置 含义 ALL_LOGFILES (默认)目标使用在线或备用重做日志文件 ONLINE_LOGFILE 目标仅适用于在线归档重做日志文件 STANDBY_LOGFILE 目标仅适用于备用重做日志文件 ALL_ROLES 当数据库以主或备用角色运行时(默认)目标都是有效的 PRIMARY_ROLE 当数据库以主角色运行时目标是有效的 STANDBY_ROLE 当数据库以备用角色运行时目标是有效的◆也可以设置合适的重做日志传输模式(redo transport mode)值指定归档重做日志从主数据库传输到备用数据库 表 列出了这个指令允许的值
表 重做日志传输模式 设置 含义 ASYNC 在事务提交前可能不是所有的目标都接受了传输的重做日志(默认值) SYNC 在事务提交前所有目标必须接受传输的重做日志 AFFIRM 仅当重做数据被写入到备用重做日志后 目标才确认已收到 含有SYNC含义 NOAFFIRM 当重做数据写入到备用重做日志前目标就可以确认收到 含有ASYNC含义
网络配置修改
最后 我需要确保主数据库和备用数据库之间能够通过网络通信 唯一需要变化的就是在主数据库本地命名配置文件(TNSNAMES ORA)中加上备用数据库的实例 备用数据库的LISTENER ORA配置文件也需要一个备用数据库实例的静态监听器 这些变化如清单 所示
清单 在主数据库上设置合适的初始化参数值
ALTER SYSTEM SET log_archive_dest_ = LOCATION=/u /app/oracle/flash_recovery_area/ORCL/ DB_UNIQUE_NAME=orcl VALID_FOR=(ALL_LOGFILES ALL_ROLES) ;
ALTER SYSTEM SET log_archive_dest_state_ = ENABLE ;
ALTER SYSTEM SET log_archive_dest_ = SERVICE=stdby ASYNC DB_UNIQUE_NAME=stdby VALID_FOR=(ONLINE_LOGFILE PRIMARY_ROLE) ;
ALTER SYSTEM SET log_archive_dest_state_ = ENABLE ;
ALTER SYSTEM SET standby_file_management = AUTO ;
ALTER SYSTEM SET log_archive_config = DG_CONFIG=(orcl stdby) ;
清单 网络配置文件修改
#在主数据库实例上添加一个备用数据库条目
STDBY =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = gStdby)(PORT = ))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = stdby)
)
)
#使用备用数据库实例的静态引用设置备用数据库监听器
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = stdby)
(ORACLE_HOME = /u /app/oracle/product/ /db_ )
(SID_NAME = stdby)
)
)
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = gStdby)(PORT = ))
准备克隆 准备备用站点
现在主站点已经准备好可以克隆了 在对应的备用站点上也需要做一些对应的调整
创建必要的目录
需要为数据库控制文件 数据文件 在线重做日志文件和备用重做日志文件创建必要的目录 我还为数据库的审核跟踪创建了合适的目录
设置密码文件
因为主数据库要和备用数据库进行通信时需要使用远程认证 我将会使用orapwd工具创建一个新的密码文件 确保SYS的密码和主数据库匹配(注意我可能会直接从主数据库拷贝到备用数据库)
创建备用初始化参数文件
最后 我需要创建一个初始化参数文件(PFILE) 仅允许我启动备用数据库实例 它只需要一个参数 DB_NAME 当DUPLICATE DATABASE命令脚本执行完毕后 它将会创建一个服务端参数文件(SPFILE) 它仅包括合适的初始化参数设置
在清单 中我解释了这些命令和临时备用数据库初始化参数 为了开启DUPLICATE DATABASE克隆操作 我将启动备用站点的监听器 然后使用前面创建的PFILE初始化参数文件将备用数据库实例启动到NOMOUNT状态
从主数据库的RMAN会话环境启动DUPLICATE DATABASE命令 前面我已经提到过 Oracle g中DUPLICATE DATABASE命令最引人注目的改变是它可以通过网络直接将主数据库克隆到备用数据库站点 作为设置备用数据库的一部分 我也可以为所有需要的初始化参数指定值 DUPLICATE DATABASE将会在备用数据库上创建一个新的SPFILE
清单 显示了使用DUPLICATE DATABASE命令进行克隆的完整语句 注意我添加了下面这样一些额外的参数 可能和主数据库的参数稍有不同
( )DB_UNIQUE_NAME
我将这个参数的值设为stdby了
( )CONTROL_FILES
我只为备用数据库创建了一个控制文件 在克隆完毕后我会复制多个
( )FAL_CLIENT和FAL_SERVER
这两个参数确定哪个数据库服务分别担任FAL(fetch archive log)客户端和服务器 例如 无论何时 当主数据库和备用数据库之间的网络断掉后 或如果备用数据库已经关闭相当长一段时间 归档重做日志可能就不会传输到备用服务器上 这种情况叫做归档日志空白(archive log gap) 这两个FAL服务名确定了由哪个服务器(FAL_SERVER)维护所有归档重做日志组主列表 由它为FAL_CLIENT提供可能发生的归档日志空白解决方案 在我们的数据卫士设置中 将备用服务器配置为FAL_CLIENT 将主服务器配置为FAL_SERVER
( )LOG_FILE_NAME_CONVERT
我已经使用这个参数将主数据库的归档重做日志和备用重做日志的目标做了翻译 确保在克隆过程中RMAN能够自动在备用数据库上创建恰当的副本
( )LOG_ARCHIVE_DEST_n
和主数据库一样 我也设置了两个归档日志目标 一个主目标LOG_ARCHIVE_DEST_ 和次要目标LOG_ARCHIVE_DEST_ 将来主备站点角色发生交换后 将由次要目标中的归档重做日志传输到原始主数据库中
最后 让我们开始克隆吧!首先在主数据库服务器上启动一个RMAN会话 以target连接到主数据库 以auxiliary连接到备用数据库
oracle@training> rman target / auxiliary sys/oracle@stdby
Recovery Manager: Release Production on Tue Apr : :
Copyright (c) Oracle All rights reserved
connected to target database: ORCL (DBID= )
connected to auxiliary database: STDBY (not mounted)
为了加快处理过程 我将会通过ALLOCATE CHANNEL命令创建两个auxiliary通道和两个normal通道 并在相同的RUN块中使用DUPLICATE DATABASE开始克隆 下面是RMAN命令块所做的事情
使用主数据库服务器的参数文件作为模版为备用数据库创建了一个新的SPFILE 但在DUPLICATE DATABASE运行块中的SET命令中做了适当的修改
然后关闭备用数据库 再使用新的SPFILE启动到NOMOUNT模式
接下来创建主数据库控制文件的拷贝 修改它让所有文件名都与备用数据库匹配 拷贝新的控制文件到备用数据库上 然后使用新的控制文件将数据库启动到MOUNT模式
然后在备用数据库上直接创建主数据库数据文件的镜像拷贝备份
最后 使用主数据库上当前的归档重做日志在备用数据库上执行必要的恢复 并将备用数据库置为管理恢复模式
我在清单 中列出了克隆操作的结果 它显示了RMAN命令的输出内容 清单 列出了克隆过程中产生的备用数据库的警告日志条目
清单 来自一个成功的备用数据库克隆操作的输出内容
[oracle@training ~]$ rman target / auxiliary sys/oracle@stdby
Recovery Manager: Release Production on Sat Apr : :
Copyright (c) Oracle All rights reserved
connected to target database: ORCL (DBID= )
connected to auxiliary database: STDBY (not mounted)
RMAN> RUN
ALLOCATE CHANNEL d TYPE DISK;
ALLOCATE CHANNEL d TYPE DISK;
ALLOCATE AUXILIARY CHANNEL cnv TYPE DISK;
ALLOCATE AUXILIARY CHANNEL cnv TYPE DISK;
DUPLICATE TARGET DATABASE
FOR STANDBY
FROM ACTIVE DATABASE
DORECOVER
SPFILE
SET db_unique_name= stdby
SET control_files= /u /app/oracle/oradata/orcl/control ctl
SET log_file_name_convert= /u /app/oracle/oradata/orcl/ /u /app/oracle/oradata/stdby/
SET log_archive_dest_ = location=/u /app/oracle/flash_recovery_area/STDBY/ valid_for=(ALL_LOGFILES ALL_ROLES) db_unique_name=stdby
SET log_archive_dest_ = service=orcl ASYNC valid_for=(ONLINE_LOGFILE PRIMARY_ROLE) db_unique_name=orcl
SET fal_client= stdby
SET fal_server= orcl
SET standby_file_management= AUTO
SET log_archive_config= dg_config=(orcl stdby)
NOFILENAMECHECK;
> > > > > > > > > > > > > > > > > > > >
using target database control file instead of recovery catalog
allocated channel: d
channel d : SID= device type=DISK
allocated channel: d
channel d : SID= device type=DISK
allocated channel: cnv
channel cnv : SID= device type=DISK
allocated channel: cnv
channel cnv : SID= device type=DISK
Starting Duplicate Db at APR
contents of Memory Script:
backup as copy reuse
file /u /app/oracle/product/ /db_ /dbs/orapworcl auxiliary format
/u /app/oracle/product/ /db_ /dbs/orapwstdby file
/u /app/oracle/product/ /db_ /dbs/spfileorcl ora auxiliary format
/u /app/oracle/product/ /db_ /dbs/spfilestdby ora ;
sql clone alter system set spfile= /u /app/oracle/product/ /db_ /dbs/spfilestdby ora ;
executing Memory Script
Starting backup at APR
Finished backup at APR
sql statement: alter system set spfile= /u /app/oracle/product/ /db_ /dbs/spfilestdby ora
contents of Memory Script:
sql clone alter system set db_unique_name =
stdby ment=
scope=spfile ;
sql clone alter system set control_files =
/u /app/oracle/oradata/orcl/control ctl ment=
scope=spfile ;
sql clone alter system set log_file_name_convert =
/u /app/oracle/oradata/orcl/ /u /app/oracle/oradata/stdby/ ment=
scope=spfile ;
sql clone alter system set log_archive_dest_ =
location=/u /app/oracle/flash_recovery_area/STDBY/ valid_for=(ALL_LOGFILES ALL_ROLES) db_unique_name=stdby ment=
scope=spfile ;
sql clone alter system set log_archive_dest_ =
service=orcl ASYNC valid_for=(ONLINE_LOGFILE PRIMARY_ROLE) db_unique_name=orcl ment=
scope=spfile ;
sql clone alter system set fal_client =
stdby ment=
scope=spfile ;
sql clone alter system set fal_server =
orcl ment=
scope=spfile ;
sql clone alter system set standby_file_management =
AUTO ment=
scope=spfile ;
sql clone alter system set log_archive_config =
dg_config=(orcl stdby) ment=
scope=spfile ;
shutdown clone immediate;
startup clone nomount ;
executing Memory Script
sql statement: alter system set db_unique_name = stdby ment= scope=spfile
sql statement: alter system set control_files = /u /app/oracle/oradata/orcl/control ctl ment= scope=spfile
sql statement: alter system set log_file_name_convert = /u /app/oracle/oradata/orcl/ /u /app/oracle/oradata/stdby/ ment= scope=spfile
sql statement: alter system set log_archive_dest_ = location=/u /app/oracle/flash_recovery_area/STDBY/ valid_for=(ALL_LOGFILES ALL_ROLES) db_unique_name=stdby ment= scope=spfile
sql statement: alter system set log_archive_dest_ = service=orcl ASYNC valid_for=(ONLINE_LOGFILE PRIMARY_ROLE) db_unique_name=orcl ment= scope=spfile
sql statement: alter system set fal_client = stdby ment= scope=spfile
sql statement: alter system set fal_server = orcl ment= scope=spfile
sql statement: alter system set standby_file_management = AUTO ment= scope=spfile
sql statement: alter system set log_archive_config = dg_config=(orcl stdby) ment= scope=spfile
Oracle instance shut down
connected to auxiliary database (not started)
Oracle instance started
Total System Global Area bytes
Fixed Size bytes
Variable Size bytes
Database Buffers bytes
Redo Buffers bytes
contents of Memory Script:
backup as copy current controlfile for standby auxiliary format /u /app/oracle/oradata/orcl/control ctl ;
sql clone alter database mount standby database ;
executing Memory Script
Starting backup at APR
channel d : starting datafile copy
copying standby control file
output file name=/home/oracle/snapcf_orcl f tag=TAG T RECID= STAMP=
channel d : datafile copy plete elapsed time: : :
Finished backup at APR
sql statement: alter database mount standby database
contents of Memory Script:
set newname for tempfile to
/u /app/oracle/oradata/orcl/temp dbf ;
switch clone tempfile all;
set newname for datafile to
/u /app/oracle/oradata/orcl/system dbf ;
set newname for datafile to
/u /app/oracle/oradata/orcl/sysaux dbf ;
set newname for datafile to
/u /app/oracle/oradata/orcl/undotbs dbf ;
set newname for datafile to
/u /app/oracle/oradata/orcl/users dbf ;
set newname for datafile to
/u /app/oracle/oradata/orcl/example dbf ;
backup as copy reuse
datafile auxiliary format
/u /app/oracle/oradata/orcl/system dbf datafile
auxiliary format
/u /app/oracle/oradata/orcl/sysaux dbf datafile
auxiliary format
/u /app/oracle/oradata/orcl/undotbs dbf datafile
auxiliary format
/u /app/oracle/oradata/orcl/users dbf datafile
auxiliary format
/u /app/oracle/oradata/orcl/example dbf ;
sql alter system archive log current ;
executing Memory Script
executing mand: SET NEWNAME
renamed tempfile to /u /app/oracle/oradata/orcl/temp dbf in control file
executing mand: SET NEWNAME
executing mand: SET NEWNAME
executing mand: SET NEWNAME
executing mand: SET NEWNAME
executing mand: SET NEWNAME
Starting backup at APR
channel d : starting datafile copy
input datafile file number= name=/u /app/oracle/oradata/orcl/sysaux dbf
channel d : starting datafile copy
input datafile file number= name=/u /app/oracle/oradata/orcl/system dbf
output file name=/u /app/oracle/oradata/orcl/system dbf tag=TAG T RECID= STAMP=
channel d : datafile copy plete elapsed time: : :
channel d : starting datafile copy
input datafile file number= name=/u /app/oracle/oradata/orcl/undotbs dbf
output file name=/u /app/oracle/oradata/orcl/sysaux dbf tag=TAG T RECID= STAMP=
channel d : datafile copy plete elapsed time: : :
channel d : starting datafile copy
input datafile file number= name=/u /app/oracle/oradata/orcl/example dbf
output file name=/u /app/oracle/oradata/orcl/example dbf tag=TAG T RECID= STAMP=
channel d : datafile copy plete elapsed time: : :
channel d : starting datafile copy
input datafile file number= name=/u /app/oracle/oradata/orcl/users dbf
output file name=/u /app/oracle/oradata/orcl/undotbs dbf tag=TAG T RECID= STAMP=
channel d : datafile copy plete elapsed time: : :
output file name=/u /app/oracle/oradata/orcl/users dbf tag=TAG T RECID= STAMP=
channel d : datafile copy plete elapsed time: : :
Finished backup at APR
sql statement: alter system archive log current
contents of Memory Script:
backup as copy reuse
archivelog like /u /app/oracle/flash_recovery_area/ORCL/log_ _ _ arc auxiliary format
/u /app/oracle/flash_recovery_area/STDBY/log_ _ _ arc ;
catalog clone archivelog /u /app/oracle/flash_recovery_area/STDBY/log_ _ _ arc ;
switch clone datafile all;
executing Memory Script
Starting backup at APR
channel d : starting archived log copy
input archived log thread= sequence= RECID= STAMP=
output file name=/u /app/oracle/flash_recovery_area/STDBY/log_ _ _ arc RECID= STAMP=
channel d : archived log copy plete elapsed time: : :
Finished backup at APR
cataloged archived log
archived log file name=/u /app/oracle/flash_recovery_area/STDBY/log_ _ _ arc RECID= STAMP=
datafile switched to datafile copy
input datafile copy RECID= STAMP= file name=/u /app/oracle/oradata/orcl/system dbf
datafile switched to datafile copy
input datafile copy RECID= STAMP= file name=/u /app/oracle/oradata/orcl/sysaux dbf
datafile switched to datafile copy
input datafile copy RECID= STAMP= file name=/u /app/oracle/oradata/orcl/undotbs dbf
datafile switched to datafile copy
input datafile copy RECID= STAMP= file name=/u /app/oracle/oradata/orcl/users dbf
datafile switched to datafile copy
input datafile copy RECID= STAMP= file name=/u /app/oracle/oradata/orcl/example dbf
contents of Memory Script:
set until scn ;
recover
standby
clone database
delete archivelog
;
executing Memory Script
executing mand: SET until clause
Starting recover at APR
starting media recovery
archived log for thread with sequence is already on disk as file /u /app/oracle/flash_recovery_area/STDBY/log_ _ _ arc
archived log file name=/u /app/oracle/flash_recovery_area/STDBY/log_ _ _ arc thread= sequence=
media recovery plete elapsed time: : :
Finished recover at APR
Finished Duplicate Db at APR
released channel: d
cha138/Article/program/Oracle/201311/16655相关参考
Oracle内存数据库11g和高速缓存11g上市 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!北京
Oracle11g数据库移植 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 数据库版本频繁更新不
Oracle11g数据库的认证体系结构 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在ITPU
ORACLE11G无法连接到数据库实例故障排除 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! O
甲骨文宣布推出Oracle内存数据库11g 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 年月日
深入浅出Oracle11g分区功能 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 数据库分区是每
Oracle11G之初体验数据中心自动化等功能 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! O
Oracle实例和Oracle数据库详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一ORA
Oracle数据库中文件加密详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在Oracle数
Oracle数据库数据操作和控制语言详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! SQL语