dameng常用语句

1、查询实例信息:
select name inst_name from v$instance;
select *,id_code from v$version;

  1. 内存参数
    2.1 MEMORY设置
    cat /dm/dmdbms/data/cndba/dm.ini |grep MEMORY
    我们这里只需要关注MEMORY_POOL 和 MEMORY_TARGET。
    MEMORY_POOL :共享内存池初始大小,以M为单位。共享内存池是由DM管理的内存。有效值范围:64~67108864。
    MEMORY_TARGET: 共享内存池在扩充最大值,以M为单位,有效值范围:0~67108864,0表示不限制。
    在物理内存较大的情况下,比如大于64G,可以将MEMORY_POOL设置为2048,即2G。 同时也建议设置 MEMORY_TARGET参数,该参数默认为0,不受限制。
    2.2 系统缓冲区大小
    Select para_name,para_value from v$dm_ini where para_name='BUFFER';
    --系统缓冲区大小,以 M 为单位。推荐值:系统 缓冲区大小为可用物理内存的 60%~80%。有效值范围(8~1048576)
    (1) 建议设置大小为:<=系统内存 * 70%。
    (2) 32G的数据库服务器系统缓冲区:call sp_set_para_value(2,'BUFFER',22528);commit;

3、查看和修改最大连接数
查看:
select SF_GET_PARA_VALUE(2,'MAX_SESSIONS');
修改:
ALTER SYSTEM SET 'MAX_SESSIONS' =1000 spfile;
commit;

4、查看用户占用空间大小
SELECT
USERNAME AS 用户名,
USER_USED_SPACE(USERNAME) * PAGE / 1024 / 1024 /1024 AS "用户占用空间(GB)"
FROM
DBA_USERS where username=upper('nc用户名')

查询参数设置查询:
select * from v$dm_ini where para_name = 'MAX_SESSION_STATEMENT';

5、表空间使用情况

SELECT
TABLESPACE_NAME AS 表空间名,
ROUND(SUM(TOTAL_SIZE) / 1024.0 / 1024.0,
2) AS "总大小(MB)",
ROUND(SUM(USED_SIZE)/ 1024.0 / 1024.0,
2) AS "已使用大小(MB)",
CAST(ROUND(SUM(USED_SIZE) * 1.0 / SUM(TOTAL_SIZE) * 100,
2) AS VARCHAR) || '%' AS 使用率
FROM
(
SELECT
UPPER(T1.TABLESPACE_NAME) AS TABLESPACE_NAME,
T1.BYTES AS TOTAL_SIZE,
T1.BYTES - T2.BYTES AS USED_SIZE
FROM
DBA_DATA_FILES T1,
DBA_FREE_SPACE T2
WHERE
T1.TABLESPACE_NAME = T2.TABLESPACE_NAME
AND T1.FILE_ID = T2.FILE_ID
)
GROUP BY
TABLESPACE_NAME;

7、占用空间最大的top 10张表
select t.owner TABLE_SCHEMA,TABLE_NAME, num_rows TABLE_ROWS,
s.BYTES /1024/1024 TABLE_VOLUME
from dba_tables t
left join dba_segments s on t.table_name=s.segment_name
where t.owner = 'dev'
and t.table_name = s.segment_name
and t.owner = s.owner
order by TABLE_VOLUME DESC limit 10;

达梦查询数据库表的索引
select * from user_ind_columns where table_name = upper('gl_voucher');

达梦收集统计信息
DBMS_STATS.GATHER_TABLE_STATS(‘模式名’, ‘gl_voucher’,null,100,TRUE,‘FOR ALL COLUMNS SIZE AUTO’);

达梦查找源头trx_id,然后查对应v$sessions的sess_id
select
t.wait_time/1000.0 wait_time_second,
concat('sp_close_session(', s2.sess_id , ');') kill_session,
s1.sess_id hapless_man,
s1.user_name blocked_user,
s2.clnt_host blocked_host,
s1.clnt_ip blocked_ip,
s1.clnt_type blocked_clnt_type,
s1.appname blocked_appname,
to_char(sf_get_session_sql(s1.sess_id)) hapless_sql,
s2.sess_id troublemaker,
to_char(sf_get_session_sql(s2.sess_id)) troublemaker_sql, --造成阻塞的SQL
s2.user_name blocking_user,
s2.clnt_host blocking_host,
s2.clnt_ip blocking_ip,
s2.clnt_type blocking_clnt_type,
s2.appname blocking_appname
from v$trxwait t
join v$sessions s1 on t.id = s1.trx_id
join v$sessions s2 on t.wait_for_id = s2.trx_id;


物理备份恢复:
物理备份:
/home/dmdba/dmdbms/bin/dmrman backup database '/data/dmdata/DAMENG/dm.ini' backupset '/data/backup'
物理恢复:
dmrman需要关闭数据库,然后把备份数据拷贝到/data/dackup目录下面:
./dmrman CTLSTMT="RESTORE DATABASE '/data/dmdata/DAMENG/dm.ini' FROM BACKUPSET'/data/dackup'"
./dmrman CTLSTMT="RECOVER DATABASE '/data/dmdata/DAMENG/dm.ini' FROM BACKUPSET'/data/dackup'"
./dmrman CTLSTMT="RECOVER DATABASE '/data/dmdata/DAMENG/dm.ini' UPDATE DB_MAGIC"
参考这个还原命令把数据库停了,然后把/data下的备份文件路径替换上去执行


逻辑备份恢复
./dexp USERID=SYSDBA/GZ_SYSDBA2024 FILE=db_str.dmp LOG=db_str.log SCHEMAS=iuap_devops_data,iuap_hubble_data,iuap_yms_console,iuap_ypr_data,iuap_ymc_data,iuap_data_dolphinscheduler DIRECTORY=/data1/dexp

disql SYSDBA/'"Gzgs6789@!$&"'
./dimp USERID=SYSDBA/***** FILE=/mnt/data/dexp/db_str.dmp LOG=db_str.log
SCHEMAS=USER01 DIRECTORY=/mnt/data/dimp
./dimp USERID=SYSDBA/'"Gzgs6789@!$&"' FILE=db_str.dmp LOG=db_str_dimp.log SCHEMAS=iuap_devops_data,iuap_hubble_data,iuap_yms_console,iuap_ypr_data,iuap_ymc_data,iuap_data_dolphinscheduler DIRECTORY=/data1/dexp


查看阻塞信息:
SELECT SYSDATE STATTIME,DATEDIFF(SS,S1.LAST_SEND_TIME,SYSDATE) SS,'被阻塞的信息' WT,
S1.SESS_ID WT_SESS_ID,S1.SQL_TEXT WT_SQL_TEXT,S1.STATE WT_STATE,S1.TRX_ID WT_TRX_ID,
S1.USER_NAME WT_USER_NAME,S1.CLNT_IP WT_CLNT_IP,S1.APPNAME WT_APPNAME,S1.LAST_SEND_TIME WT_LAST_SEND_TIME,
'引起阻塞的信息' FM,S2.SESS_ID FM_SESS_ID,S2.SQL_TEXT FM_SQL_TEXT,S2.STATE FM_STATE,S2.TRX_ID FM_TRX_ID,
S2.USER_NAME FM_USER_NAME,S2.CLNT_IP FM_CLNT_IP,S2.APPNAME FM_APPNAME,S2.LAST_SEND_TIME FM_LAST_SEND_TIME
FROM V$SESSIONS S1,V$SESSIONS S2,V$TRXWAIT W
WHERE S1.TRX_ID=W.ID
AND S2.TRX_ID=W.WAIT_FOR_ID;

--已执行超过1秒的活动SQL
select *
from ( SELECT sess_id,
sql_text,
datediff(ss,last_recv_time,sysdate) Y_EXETIME,
SF_GET_SESSION_SQL(SESS_ID) fullsql,
clnt_ip
FROM V$SESSIONS
WHERE STATE='ACTIVE'
)
where Y_EXETIME>=1;


查数据库进程:ps -ef | grep dmserver
查数据守护进程:ps -ef | grep dmw
查监视器进程:ps -ef | grep dmm

主备集群服务启停维护

  1. 启动顺序

  2. ./DmServiceGRP2_DW_01 start(主 - dmserver)

  3. ./DmServiceGRP2_DW_02 start(备 - dmserver)

  4. ./DmWatcherServiceGRP2_DW_01 start(主 - 守护进程)

  5. ./DmWatcherServiceGRP2_DW_02 start(备 - 守护进程)

  6. ./DmMonitorServiceGRP2 start(备 - 监视器)
    (需要确认当前哪台服务器是备库,监视器要在备库上启用)

  7. 关停顺序

  8. ./DmMonitorServiceGRP2 stop(备 - 监视器)

  9. ./DmWatcherServiceGRP2_DW_02 stop(备 - 守护进程)

  10. ./DmWatcherServiceGRP2_DW_01 stop (主 - 守护进程)

  11. ./DmServiceGRP2_DW_01 stop(主 - dmserver)

  12. ./DmServiceGRP2_DW_02 stop(备 - dmserver)


查备库:
备库查:select timestampdiff(sql_tsi_second,ifnull(apply_cmt_time,0),ifnull(last_cmt_time,0)) timediff from v$rapply_stat;

查看数据库状态:
select mode$ from v$instance;
select group_name,inst_name,dw_type,dw_mode,auto_restart,dw_status from v$dmwatcher;


select username,account_status from dba_users;
select file_name,file_id,tablespace_name from dba_data_files;

create tablespace "yonyou_iuap" datafile 'yonyou_iuap01.dbf' size 32768 autoextend off,
'yonyou_iuap02.dbf' size 32768 autoextend off, 'yonyou_iuap03.dbf' size 32768
autoextend off, 'yonyou_iuap04.dbf' size 32768 autoextend off ,'yonyou_iuap05.dbf' size 32768 autoextend off,'yonyou_iuap06.dbf' size 32768 autoextend off;

create user "YYBIP" identified by "IbnQeedmYCRsfjaX" password_policy 0 default tablespace "yonyou_iuap" default index tablespace "yonyou_iuap";

grant DBA,PUBLIC, RESOURCE, SOI, SVI, VTI to YYBIP;

select file_name,file_id,tablespace_name from dba_data_files;
alter tablespace 表空间名 add datafile '数据文件05.dbf' size 30720 autoextend off;
alter tablespace yonyou_iuap add datafile '/data/dmdata/DAMENG/yonyou_iuap07.dbf' size 30720 autoextend off;
alter tablespace yonyou_iuap add datafile '/data/dmdata/DAMENG/yonyou_iuap11.dbf' size 30720 autoextend off;

查看表空间使用率以及是否自动扩展:

with x0 as
(

select

    ts.name tsname  ,                                                    -- 表空间名称
    ts.file_num  ,                                                       -- 文件个数
    d.id fno ,                                                           -- 文件编号
    decode(d.auto_extend, 0, 'NO', 1, 'YES', 'UNDEFINED') autoextensible,  -- 自动扩展
    ts.total_size * d.page_size / 1024.0/1024.0 ts_alloc_mb                     ,  -- 表空间已分配大小
    d.total_size  * d.page_size / 1024.0/1024.0 f_alloc_mb                      ,  -- 数据文件分配大小
    d.free_size   * d.page_size / 1024.0/1024.0 f_free_mb                       ,  -- 数据文件空闲大小
    (case 
      when ts.name = 'TEMP' 
       then decode(ts.max_size, 0, d.total_size * d.page_size / 1024.0/1024.0, ts.max_size * d.page_size / 1024.0/1024.0) 
       else decode(d.max_size, 0, d.total_size * d.page_size / 1024.0/1024.0, d.max_size) 
     end) f_max_mb -- 数据文件大小上限

from
v$tablespace ts
join v$datafile d on ts.id = d.group_id
where ts.status$ = 0 -- 必须是联机在线的可用表空间
), x1 as
(
select
tsname ,
file_num ,
ts_alloc_mb ,
sum(f_free_mb) ts_free_mb,
sum(f_max_mb) ts_max_mb ,
listagg(fno||decode(autoextensible, 'YES', ':Y', ':N'), ',')
within group(order by fno) fno_autoextend
from
x0
group by
tsname ,
file_num,
ts_alloc_mb
)
select
tsname , -- 表空间名称
file_num , -- 数据文件个数
fno_autoextend , -- 哪个文件自动扩展
ts_max_mb ts_total_mb , -- 表空间上限大小(包含自动扩展与非自动扩展)
(ts_alloc_mb - ts_free_mb) ts_use_mb, -- 已使用表空间大小
round(100.0 * ((ts_alloc_mb - ts_free_mb) / ts_max_mb), 6) ts_use_pct -- 使用百分比
from
x1
order by
ts_use_pct desc ;



查询历史慢sql
SELECT * FROM V$LONG_EXEC_SQLS order by exec_time desc;

查看当前数据库实例锁信息:
WITH locks
AS (SELECT o.name,
l.*,
s.sess_id,
s.sql_text,
s.clnt_ip,
s.last_send_time
FROM v$lock l, sysobjects o, v$sessions s
WHERE l.table_id = o.id AND l.trx_id = s.trx_id),
lock_tr
AS (SELECT trx_id wt_trxid, row_idx blk_trxid
FROM locks
WHERE blocked = 1),
res
AS (SELECT SYSDATE stattime,
t1.name,
t1.sess_id wt_sessid,
s.wt_trxid,
t2.sess_id blk_sessid,
s.blk_trxid,
t2.clnt_ip,
SF_GET_SESSION_SQL (t1.sess_id) fulsql,
datediff (ss, t1.last_send_time, SYSDATE) ss,
t1.sql_text wt_sql
FROM lock_tr s, locks t1, locks t2
WHERE t1.ltype = 'OBJECT'
AND t1.table_id <> 0
AND t2.ltype = 'OBJECT'
AND t2.table_id <> 0
AND s.wt_trxid = t1.trx_id
AND s.blk_trxid = t2.trx_id)
SELECT DISTINCT wt_sql, clnt_ip, ss
FROM res;

查询当前数据库实例中活动会话执行的完整 SQL 语句:
SELECT sess_id,SF_GET_SESSION_SQL (SESS_ID),sql_text FROM v$sessions WHERE state = 'ACTIVE';

查询当前数据库实例是否有阻塞:
SELECT o.name, l.* FROM v$lock l, sysobjects o WHERE l.table_id = o.id AND blocked = 1;

查看当前数据库正在运行的未提交事物相关的信息:
SELECT b.object_name, c.sess_id, a.* FROM v$lock a, dba_objects b, v$sessions c WHERE a.table_id = b.object_id AND ltype = 'OBJECT' AND a.trx_id = c.trx_id;

查看当前数据库中长时间运行的事物会话信息:
SELECT t1.sql_text, t1.state, t1.trx_id FROM v$sessions t1, v$trx t2 WHERE t1.trx_id = t2.id AND t1.state ='IDLE' AND t2.status = 'ACTIVE';

查询当前数据库中执行超过 2 秒的会话信息:
SELECT * FROM (SELECT sess_id,sql_text,datediff (ss, last_recv_time, SYSDATE) Y_EXETIME,SF_GET_SESSION_SQL (SESS_ID) fullsql,clnt_ip FROM V$SESSIONS WHERE STATE = 'ACTIVE') WHERE Y_EXETIME >= 2;

查询当前数据库实例中活动会话数量:
SELECT count(*) FROM v$sessions WHERE state='ACTIVE';

--总会话数 select count() from v$sessions;
--按状态分组会话数 select count(
),state from v$sessions group by state;
--按客户端分组会话数 select count(*),clnt_ip from v$sessions group by clnt_ip;


select '实例名称' 数据库选项,INSTANCE_NAME 数据库集群相关参数值 FROM v$instance;

select '数据库版本',substr(svr_version,instr(svr_version,'(')) FROM v$instance;

SELECT '字符集',CASE SF_GET_UNICODE_FLAG() WHEN '0' THEN 'GBK18030' WHEN '1' then 'UTF-8' when '2' then 'EUC-KR' end;

SELECT '页大小',cast(PAGE()/1024 as varchar) union all SELECT '簇大小',cast(SF_GET_EXTENT_SIZE() as varchar);

SELECT '大小写敏感',cast(SF_GET_CASE_SENSITIVE_FLAG() as varchar);

select '数据库模式',MODE$ from v$instance;

select '唯一魔数',cast(permanent_magic as varchar);

select 'LSN',cast(cur_lsn as varchar) from v$rlog;


告警的相关信息在实例日志里面记录,实例日志在dmdbms/log目录下,dm_DMSERVER_xxx.log

conn coremail/"Dameng@1234"@localhost:15236

查看是否为归档模式:
SELECT NAME,
CASE WHEN ARCH_MODE = 'Y' THEN '归档模式' ELSE '非归档模式' END AS 状态
FROM V$DATABASE;

--查看进程:
ps -ef |grep dms

--登陆:
[dmdba@dvmaildb01 bin]$ ./disql SYSDBA/'"Dameng@1234"':15236

--启动关闭数据库:
启动-dmdba用户:$DM_HOME/bin/DmServiceDMSERVER start
停止-dmdba用户:$DM_HOME/bin/DmServiceDMSERVER stop
重启-dmdba用户:$DM_HOME/bin/DmServiceDMSERVER restart

--查看用户状态
select username,account_status from dba_users;

--查看实例信息
SQL> select instance_name,status$ from v$instance;

--查看版本:
SQL> select * from v$version;

--重启数据库:
[dmdba@dvmaildb01 bin]$ ./DmServiceDMSERVER restart

--查看id_code:
SQL> select id_code;

--查看license:
SQL> select * from v$license;

--表空间管理
--创建数据表空间/索引表空间(初始128M,具体以业务实际情况而定)
create tablespace "TBS_TEST" datafile 'TBS_TEST01.DBF' size 128 autoextend on next 2048,'TBS_TEST2.DBF' size 128 autoextend on next 2048;
create tablespace "IDX_TEST" datafile 'IDX_TEST1.DBF' size 128 autoextend on next 2048,'IDX_TEST02.DBF' size 128 autoextend on next 2048;
(1)表空间状态
select tablespace_name,STATUS from dba_tablespaces;
Status:0 代表联机,在线;1 代表脱机,离线
表所在表空间脱机后,将无法访问该表的数据
将 MAIN 表空间脱机和联机
alter TABLESPACE MAIN OFFLINE;
alter TABLESPACE MAIN ONLINE;
(2)添加数据文件
alter tablespace "TEST" add datafile '/dm8/data/DAMENG/TEST02.DBF' size 32;
(3)迁移数据文件:
Alter tablespace "TEST" offline;
alter tablespace "TEST" rename datafile 'TEST01.DBF' to '/home/dmdba/TEST01.DBF';
alter tablespace "TEST" online;
(4)修改 TEMP 表空间大小
将 TEMP 表空间大小改为 100M
sp_set_para_value(2,'TEMP_SIZE',100);
--第一个参数 2:表示修改范围
1 = 仅当前会话有效
2 = 全局有效,立即生效(内存+配置文件)
3 = 仅修改配置文件,重启后生效
--第二个参数 'TEMP_SIZE':要修改的参数名
这是临时表空间初始大小参数
--第三个参数 100:要设置的值
单位是 MB,所以这里是设置为 100MB

(5)删除表空间
drop tablespace "TBS";
注意:SYSTEM、TEMP、ROLL 表空间不能脱机、删除。

--创建用户/指定数据表空间/指定索引表空间
create user "TEST" identified by "xxxxxx" default tablespace "TBS_TEST" default index tablespace "IDX_TEST";

--赋予权限
"PUBLIC","RESOURCE","VTI","SOI","SVI" to "TEST";

--取消用户限制
alter user "TEST" limit failed_login_attemps unlimited, password_lock_time unlimited, password_grace_time unlimited;

--日志管理
select path,RLOG_SIZE/1024/1024 from v$rlogfile;
添加重做日志文件:
alter DATABASE ADD LOGFILE '/dm8/data/DAMENG/DAMENG03.log' SIZE 300;
Resize 重做日志文件大小
alter database RESIZE LOGFILE '/dm8/data/DAMENG/DAMENG01.log' to 300;
alter database RESIZE LOGFILE '/dm8/data/DAMENG/DAMENG02.log' to 300;
注意:重做日志文件,只能添加不能删除;只能扩大,不能缩小。

--数据文件
select * from v$datafile;
select * from DBA_DATA_FILES;

--内存管理
(1)共享内存池
服务器启动会向操作系统申请一大片内存,供其他内存池或者缓冲区不够用时,提供调用。
参数:MEMORY_POOL
MEMORY_TARGET:共享内存池在扩充到此大小以上后,空闲时收缩回此指定大小

数据缓冲区:缓存的是数据页。

select para_name,para_value from v$dm_ini where para_name='BUFFER';
(2)数据缓冲区类型:
Normal,keep 缓存的是数据页,可以手动管理,达梦数据库 keep 的是表空间
Fast,recycle 缓存的是临时页和回滚页,数据库自动管理。
(3)重做日志缓冲区
select para_name,para_value,para_type from v$dm_ini where para_name='RLOG_BUF_SIZE';
(4)SQL 缓冲区
SQL 缓冲区缓存的是 SQL、执行计划、结果集的信息。
参数:CACHE_POOL_SIZE
select para_name,para_value,para_type from v$dm_ini where para_name='CACHE_POOL_SIZE';
(5)字典缓冲区
缓存的是数据字典的信息。
参数:DICT_BUF_SIZE
select para_name,para_value,para_type from v$dm_ini where para_name='DICT_BUF_SIZE';
当字典缓冲区不够用时,会向共享内存池申请内存。


--联机备份恢复
select * from v$dm_ini where para_name='BAK_PATH';

联机备份:
联机方式支持数据库、用户表空间、用户表和归档的备份以及用户表的还原。在进行联机库级备份、归档备份和表空间备份时,必须保证系统处于归档模式,否则联机备份不能进行。
联机备份恢复表:
disql 连进去可以对表进行backup备份
backup table coremail.test1 backupset 'coremail_test1_bak';
restore table coremail.test1 from backupset '/data/dmdata/DAMENG/bak/coremail_bak01';

联机备份数据库:

全备

BACKUP DATABASE FULL BACKUPSET '/opt/dmdbms/BAK/db_full_bak_01';

描述信息可以更详细地对备份类型、用途等进行说明

BACKUP DATABASE BACKUPSET '/home/dm_bak/db_bak_3_04' BACKUPINFO '完全备份';

创建备份限制备份片大小为300M

BACKUP DATABASE BACKUPSET '/home/dm_bak/db_bak_3_05' MAXPIECESIZE 300;

压缩备份

BACKUP DATABASE BACKUPSET '/home/dm_bak/db_bak_3_06' COMPRESSED LEVEL 5;

压缩选项有不同的压缩级别可以选择,取值范围为 0~9。

应根据存储空间、数据文件大小等确定合适地压缩级别

创建并行备份,指定并行数为8

BACKUP DATABASE BACKUPSET '/home/dm_bak/db_bak_3_07' PARALLEL 8;

联机归档备份:
disql 输入以下命令即可备份归档:
SQL>BACKUP ARCHIVE LOG ALL BACKUPSET 'arch_bak_01';

备份集“arch_bak_01”会生成到默认的备份路径下。

--脱机备份恢复
DMRMAN(DM RECOVERY MANAGER)是脱机备份还原命令行工具,无需额外安装,由它来统一负责库级脱机备份、脱机还原、脱机恢复等相关操作,该工具支持命令行指定参数方式和控制台交互方式执行,降低用户的操作难度。

数据库备份

./dmrman
RMAN>BACKUP DATABASE '/opt/dmdbms/data/DAMENG/dm.ini ' FULL BACKUPSET '/home/dm_bak/db_full_bak_01';

增量备份

DMRMAN中输入以下命令:

RMAN>BACKUP DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' INCREMENT WITH BACKUPDIR '/home/dm_bak'BACKUPSET '/home/dm_bak/db_increment_bak_02';

脱机备份归档

DMRMAN 中输入以下命令:

backup database '/data/dmdbms/DAMNG/dm.ini' full backupset '/data/dmbak/full_bak';

数据库还原:
以联机数据库备份说明使用 DMRMAN 如何执行数据库还原操作:

联机备份数据库,保证数据库运行在归档模式及 OPEN 状态;

SQL>BACKUP DATABASE BACKUPSET '/home/dm_bak/db_full_bak_for_restore';

准备目标库。还原目标库可以是已经存在的数据库,也可使用 dminit 工具初始化一个新库。如下所示:

./dminit path=/opt/dmdbms/data db_name=DAMENG_FOR_RESTORE SYSDBA_PWD=****** SYSAUDITOR_PWD=******

校验备份,校验待还原备份集的合法性。校验备份有两种方式,联机和脱机,此处使用脱机校验;

RMAN>CHECK BACKUPSET '/home/dm_bak/db_full_bak_for_restore';

还原数据库。启动 DMRMAN,输入以下命令:

RMAN>RESTORE DATABASE '/opt/dmdbms/data/DAMENG_FOR_RESTORE/dm.ini' FROM BACKUPSET '/home/dm_bak/db_full_bak_for_restore';

数据库恢复

RMAN>RECOVER DATABASE '/opt/dmdbms/data/DAMENG_FOR_RESTORE/dm.ini' WITH ARCHIVEDIR'/home/dm_arch/arch'

数据库更新

RMAN>RECOVER DATABASE '/opt/dmdbms/data/DAMENG_FOR_RESTORE/dm.ini' UPDATE DB_MAGIC;

posted @ 2025-09-25 10:30  ocmji  阅读(24)  评论(0)    收藏  举报