oracle 10g 创建 DATA GUARD
其实创建dg网络上的文档很多,我是看小布老师是视频学习的
用虚拟机做测试,弄了好几天,下面记录一下曾经做过印象比较深的地方
1.将Primary服务器处于归档模式和Force Logging模式
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER DATABASE ARCHIVELOG;
SQL> ALTER DATABASE OPEN;
SQL>archive log list
SQL>alter database force logging
2.修改Primary服务器的参数文件
SQL>create pfile from spfile; #
修复生成的pfile文件添加以下内容(成功的例子)
DB_UNIQUE_NAME=uqn_node1
LOG_ARCHIVE_CONFIG='DG_CONFIG=(uqn_node1,uqn_node2)'
LOG_ARCHIVE_DEST_2='SERVICE=lsnode2 LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=uqn_node2'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
FAL_SERVER=lsnode2
FAL_CLIENT=lsnode1
DB_FILE_NAME_CONVERT='172.16.2.200:/u01/app/oracle/oradata/ict','172.16.2.201:/u01/app/oracle/oradata/ict'
LOG_FILE_NAME_CONVERT='172.16.2.200:/u01/app/oracle/oradata/ict','172.16.2.201:/u01/app/oracle/oradata/ict'
STANDBY_FILE_MANAGEMENT=AUTO
然后保存,
3.生成新的Primary服务器参数文件
SQL>stutdown immediate
SQL>create spfile form pfile='/u01/app/oracle/procuct/102/dbs/initict.ora' #执行前删除spfile文件
4.创建standby服务器的控制文件
SQL>startup
SQL>alter database create standby controfile as '/u01/app/oracle/standby.ctl'
5.关闭数据库,复制数据文件 创建的standby服务器的控制文件 Primary的参数文件(用来创建Standby的初始化参数文件) 口令文件(用dbca创建的数据库会自动生成口令文件如:orapwict ,在/u01/app/oracle/product/102/dbs目录下)到对应的目录
6.在Primary服务器和Standby服务器同时配置监听和网络服务名
/u01/app/oracle/product/102/network/admin/listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/102/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(
相关文档:
1.在ORACLE中实现SELECT TOP N
由于ORACLE不支持SELECT TOP语句,所以在ORACLE中经常是用ORDER BY跟ROWNUM的组合来实现SELECT TOP N的查询。
简单地说,实现方法如下所示:
SELECT 列名1...列名n from
(SELECT 列 ......
oracle distinct
关键字: distinct的一些杂谈
distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用 它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是distinct只有用二重循环查询来解决,而这样对于一个数据量非常大的站来说,无疑是会直接影响到效率的。
下面先来看看例子:
table ......
DECLARE
X NUMBER;
BEGIN
SYS.DBMS_JOB.SUBMIT
( job => X
,what => 'syn_rpt_members_relation;'
,next_date => to_date('02-07-2008 01:00:00','dd/mm/yyyy hh24:mi:ss')
,interval => 'trunc(sysdate)+1+1/24'
,no_parse => FALSE
);
SYS.DBMS_OUTPUT.PUT_LINE('Job Number is: ' || to_cha ......
Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。
执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,
......