本帖最后由 刘泽宇 于 2022-5-13 17:46 编辑
Oracle ASM使用asmcmd中的cp命令来执行远程复制
cp命令的语法如下: cp src_file [--target target_type] [--service service_name] [--port port_num] [connect_str:]tgt_file
--target target_type是用来指定asmcmd命令执行复制操作必须要连接到的实例的目标类型。有效选项为ASM,IOS或APX。
--service service_name如果缺省值不是+ASM,用来指定Oracle ASM实例名
--port port_num 缺省值是1521,用来指定监听端口 connect_str用来指定连接到远程实例的连接串。connect_str对于本地实例的复制是不需要指定的。对于远程实例复制,必须指定连接串并且会提示输入密码。它的格式如下:
user@host.SID
user,host和SID都是需要指定的。缺省端口为1521,也可以使用--port选项来修改。连接权限(sysasm或sysdba)是由启动asmcmd命令时由--privilege选项所决定的。 src_file 被复制的源文件名,它必须是一个完整路径文件名或一个Oracle ASM别名。在执行asmcmd复制时,Oracle ASM会创建一个OMF文件例如:
diskgroup/db_unique_name/file_type/file_name.#.#
其中db_unique_name被设置为ASM,#为数字。在复制过程中cp命令会对目标地址创建目录结构并对实际创建的OMF文件创建别名。 tgt_file 复制操作所创建的目标文件名或一个别名目录名的别名。 注意,cp命令不能在两个远程实例之间复制文件。在执行cp命令时本地Oracle ASM实例必须是源地址或目标地址。 使用cp命令可以执行以下三种复制操作:
1.从磁盘组中复制文件到操作系统中
2.从磁盘组中复制文件到磁盘组中
3.从操作系统中复制文件到磁盘组中
命令如: ASMCMD [+] > cp +data/cs/datafile/sz.331.976296525 sys@192.168.133.120.+ASM1:+TEST/sz.bakEnter password: ***********
copying +data/cs/datafile/sz.331.976296525 -> 192.168.133.120:+TEST/sz.bak
|