更改控制文件自动备份的路径(controlfile autobackup)

启用控制文件自动备份特性

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;

更改控制文件自动备份的路径

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/backup_rman/%T/%F';

附件:RMAN备份FORMAT格式中%的含义

%a:Oracle数据库的activation ID即RESETLOG_ID。
%c:备份片段的复制数(从1开始编号,最大不超过256)。
%d:Oracle数据库名称。
%D:当前时间中的日,格式为DD。
%e:归档序号。
%f:绝对文件编号。
%F:基于"DBID+时间"确定的唯一名称,格式的形式为c-IIIIIIIIII-YYYYMMDD-QQ,其中IIIIIIIIII 为该数据库的DBID,YYYYMMDD为日期,QQ是一个1~256的序列。
%h:归档日志线程号。
%I:Oracle数据库的DBID。
%M:当前时间中的月,格式为MM。
%N:表空间名称。
%n:数据库名称,并且会在右侧用x字符进行填充,使其保持长度为8。比如数据库名JSSBOOK,则生成的名称则是JSSBOOKx。
%p:备份集中备份片段的编号,从1开始。
%s:备份集号。
%t:备份集时间戳。
%T:当前时间的年月日格式(YYYYMMDD)。
%u:是一个由备份集编号和建立时间压缩后组成的8字符名称。利用%u可以为每个备份集生成一个唯一的名称。
%U:默认是%u_%p_%c的简写形式,利用它可以为每一个备份片段(即磁盘文件)生成一个唯一名称,这是最常用的命名方式,执行不同备份操作时,生成的规则也不同,如下所示:
生成备份片段时,%U=%u_%p_%c;
生成数据文件镜像复制时,%U=data-D-%d_id-%I_TS-%N_FNO-%f_%u;
生成归档文件镜像复制时,%U=arch-D_%d-id-%I_S-%e_T-%h_A-%a_%u;
生成控制文件镜像复制时,%U=cf-D_%d-id-%I_%u。
%Y:当前时间中的年,格式为YYYY。
注:如果在BACKUP命令中没有指定FORMAT选项,则RMAN默认使用%U为备份片段命名。


要实现Java与OPC通信,需要使用Java OPC客户端库。以下是一些常用的Java OPC客户端库: 1. JEasyOPC:是一个基于Java的轻量级OPC客户端库。 2. AGGEP:是一个基于Java的OPC客户端库,可用于访问OPC服务器。 3. jOPC:是一个Java OPC客户端库,支持异步读取和写入OPC数据。 4. EasyOPC:是一个Java OPC客户端库,支持同步和异步读取和写入OPC数据。 使用Java OPC客户端库,可以连接到OPC服务器,读取和写入OPC数据点,以及监视OPC数据点的变化。下面是一个使用JEasyOPC实现Java与OPC通信的示例代码: ```java import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; import java.util.function.Consumer; import org.jeasyopc.client.JEasyOPCClient; import org.jeasyopc.client.JEasyOPCItem; public class Main { public static void main(String[] args) { // OPC server information String progId = "SWToolbox.TOPServer.V6"; String clsId = "28E68F99-8D75-11D1-8DC3-3C302A000000"; String opcHost = "localhost"; String opcServerName = "Kepware.KEPServerEX.V5"; String opcServerUrl = "opcda://" + opcHost + "/" + opcServerName; // OPC items to read String[] itemIds = { "Channel_1.Device_1.Tag_1", "Channel_1.Device_1.Tag_2" }; // Create OPC client JEasyOPCClient opcClient = new JEasyOPCClient(progId, clsId, opcServerUrl); // Connect to OPC server opcClient.connect(); // Create OPC items JEasyOPCItem[] opcItems = new JEasyOPCItem[itemIds.length]; for (int i = 0; i < itemIds.length; i++) { opcItems[i] = opcClient.addItem(itemIds[i]); } // Read OPC items every 1 second ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor(); executor.scheduleAtFixedRate(() -> { try { // Read OPC items Object[] values = opcClient.readItems(opcItems); // Print OPC item values for (int i = 0; i < itemIds.length; i++) { System.out.println(itemIds[i] + " = " + values[i]); } } catch (Exception e) { e.printStackTrace(); } }, 0, 1, TimeUnit.SECONDS); // Wait for user input to exit System.out.println("Press enter to exit..."); try { System.in.read(); } catch (Exception e) { e.printStackTrace(); } // Stop executor and disconnect from OPC server executor.shutdown(); opcClient.disconnect(); } } ``` 在此示例代码中,我们使用JEasyOPC客户端库连接到OPC服务器,并读取两个OPC数据点的值。ScheduledExecutorService用于每秒读取OPC数据点的值,并将值打印到控制台。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值