当前位置: 首页 > news >正文

Oracle Dataguard(主库为单节点)配置详解(4):将主库复制到备库并启动同步

Oracle Dataguard(主库为单节点)配置详解(4):将主库复制到备库并启动同步

目录

  • Oracle Dataguard(主库为单节点)配置详解(4):将主库复制到备库并启动同步
    • 一、在主库执行备份操作
        • 1、在主库创建备份目录
        • 2、使用 RMAN 命令全备数据库
    • 二、把备份文件复制到备库
        • 1、在备库上创建存放备份文件的目录
        • 2、把主库的备份文件复制到备库
        • 3、查看备库中的主库备份文件
    • 三、在备库上恢复数据库
        • 1、启动数据库到 nomount
        • 2、启动 rman,恢复控制文件,启动数据库到 mount
        • 3、查看控制文件中的数据文件与临时文件信息
        • 4、开始恢复数据库
        • 5、数据库恢复完成,修改日志文件
        • 6、启动数据库
    • 四、开启实时同步
        • 1、开启实时同步
        • 2、查看备库进程
        • 3、查看主库进程信息
        • 4、查看备库信息
        • 5、查看主库信息
    • 五、数据同步验证
        • 1、在主库执行以下 SQL
        • 2、在备库执行以下 SQL查询数据

一、在主库执行备份操作

1、在主库创建备份目录
[oracle@ora dbs]$ mkdir /home/oracle/bak0101
[oracle@ora dbs]$ ll /home/oracle/
总用量 76
drwxr-xr-x 2 oracle oinstall     6 11 19:48 bak0101
-rwxr-xr-x 1 oracle oinstall 44551 1230 21:44 dbca.rsp
-rw-r--r-- 1 oracle oinstall 25283 1230 21:12 db_install.rsp
drwxr-xr-x 3 oracle oinstall   114 1230 20:52 soft
-rw-r--r-- 1 oracle oinstall  1386 11 17:31 spfile1231.ora
2、使用 RMAN 命令全备数据库

(1)设置备份参数:备份到磁盘,使用 6 个通道

RMAN> configure device type disk parallelism 6 backup type to backupset;using target database control file instead of recovery catalog
new RMAN configuration parameters:
CONFIGURE DEVICE TYPE DISK PARALLELISM 6 BACKUP TYPE TO BACKUPSET;
new RMAN configuration parameters are successfully stored

(2)设置备份参数:设置备份文件的位置及文件名格式

RMAN> configure channel device type disk format '/home/oracle/bak0101/%d_%I_%s_%p_%T.bkp';new RMAN configuration parameters:
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT   '/home/oracle/bak0101/%d_%I_%s_%p_%T.bkp';
new RMAN configuration parameters are successfully stored

(3)备份控制文件

-- 备份成 standby 类型的控制文件
RMAN> backup current controlfile for standby format ='/home/oracle/bak0101/control_bak_%s.bak';Starting backup at 01-JAN-25
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=40 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=44 device type=DISK
allocated channel: ORA_DISK_3
channel ORA_DISK_3: SID=38 device type=DISK
allocated channel: ORA_DISK_4
channel ORA_DISK_4: SID=43 device type=DISK
allocated channel: ORA_DISK_5
channel ORA_DISK_5: SID=1 device type=DISK
allocated channel: ORA_DISK_6
channel ORA_DISK_6: SID=42 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including standby control file in backup set
channel ORA_DISK_1: starting piece 1 at 01-JAN-25
channel ORA_DISK_1: finished piece 1 at 01-JAN-25
piece handle=/home/oracle/bak0101/control_bak_12.bak tag=TAG20250101T205548 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 01-JAN-25

(4)备份数据库

RMAN> backup as compressed backupset database;Starting backup at 01-JAN-25
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
using channel ORA_DISK_5
using channel ORA_DISK_6
channel ORA_DISK_1: starting compressed full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00001 name=/usr/local/oradata/hisdb/system01.dbf
channel ORA_DISK_1: starting piece 1 at 01-JAN-25
channel ORA_DISK_2: starting compressed full datafile backup set
channel ORA_DISK_2: specifying datafile(s) in backup set
input datafile file number=00002 name=/usr/local/oradata/hisdb/sysaux01.dbf
channel ORA_DISK_2: starting piece 1 at 01-JAN-25
channel ORA_DISK_3: starting compressed full datafile backup set
channel ORA_DISK_3: specifying datafile(s) in backup set
input datafile file number=00003 name=/usr/local/oradata/hisdb/undotbs01.dbf
channel ORA_DISK_3: starting piece 1 at 01-JAN-25
channel ORA_DISK_4: starting compressed full datafile backup set
channel ORA_DISK_4: specifying datafile(s) in backup set
channel ORA_DISK_5: starting compressed full datafile backup set
channel ORA_DISK_5: specifying datafile(s) in backup set
input datafile file number=00004 name=/usr/local/oradata/hisdb/users01.dbf
channel ORA_DISK_5: starting piece 1 at 01-JAN-25
channel ORA_DISK_6: starting compressed full datafile backup set
channel ORA_DISK_6: specifying datafile(s) in backup set
including current SPFILE in backup set
channel ORA_DISK_6: starting piece 1 at 01-JAN-25
including current control file in backup set
channel ORA_DISK_4: starting piece 1 at 01-JAN-25
channel ORA_DISK_6: finished piece 1 at 01-JAN-25
piece handle=/home/oracle/bak0101/HISDB_2101731232_7_1_20250101.bkp tag=TAG20250101T195259 comment=NONE
channel ORA_DISK_6: backup set complete, elapsed time: 00:00:01
channel ORA_DISK_3: finished piece 1 at 01-JAN-25
piece handle=/home/oracle/bak0101/HISDB_2101731232_4_1_20250101.bkp tag=TAG20250101T195259 comment=NONE
channel ORA_DISK_3: backup set complete, elapsed time: 00:00:03
channel ORA_DISK_4: finished piece 1 at 01-JAN-25
piece handle=/home/oracle/bak0101/HISDB_2101731232_5_1_20250101.bkp tag=TAG20250101T195259 comment=NONE
channel ORA_DISK_4: backup set complete, elapsed time: 00:00:03
channel ORA_DISK_5: finished piece 1 at 01-JAN-25
piece handle=/home/oracle/bak0101/HISDB_2101731232_6_1_20250101.bkp tag=TAG20250101T195259 comment=NONE
channel ORA_DISK_5: backup set complete, elapsed time: 00:00:05
channel ORA_DISK_2: finished piece 1 at 01-JAN-25
piece handle=/home/oracle/bak0101/HISDB_2101731232_3_1_20250101.bkp tag=TAG20250101T195259 comment=NONE
channel ORA_DISK_2: backup set complete, elapsed time: 00:00:28
channel ORA_DISK_1: finished piece 1 at 01-JAN-25
piece handle=/home/oracle/bak0101/HISDB_2101731232_2_1_20250101.bkp tag=TAG20250101T195259 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:38
Finished backup at 01-JAN-25

(5)备份归档日志

--设置备份文件格式:
RMAN> configure channel device type disk format '/home/oracle/bak0101/arch_%d_%I_%s_%p_%T.bkp';old RMAN configuration parameters:
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT   '/home/oracle/bak0101/%d_%I_%s_%p_%T.bkp';
new RMAN configuration parameters:
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT   '/home/oracle/bak0101/arch_%d_%I_%s_%p_%T.bkp';
new RMAN configuration parameters are successfully stored
released channel: ORA_DISK_1
released channel: ORA_DISK_2
released channel: ORA_DISK_3
released channel: ORA_DISK_4
released channel: ORA_DISK_5
released channel: ORA_DISK_6-- 备份归档日志:
RMAN> backup as compressed backupset archivelog all;Starting backup at 01-JAN-25
current log archived
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=43 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=38 device type=DISK
allocated channel: ORA_DISK_3
channel ORA_DISK_3: SID=40 device type=DISK
allocated channel: ORA_DISK_4
channel ORA_DISK_4: SID=44 device type=DISK
allocated channel: ORA_DISK_5
channel ORA_DISK_5: SID=45 device type=DISK
allocated channel: ORA_DISK_6
channel ORA_DISK_6: SID=46 device type=DISK
channel ORA_DISK_1: starting compressed archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
input archived log thread=1 sequence=7 RECID=1 STAMP=1189224012
channel ORA_DISK_1: starting piece 1 at 01-JAN-25
channel ORA_DISK_2: starting compressed archived log backup set
channel ORA_DISK_2: specifying archived log(s) in backup set
input archived log thread=1 sequence=8 RECID=2 STAMP=1189272700
channel ORA_DISK_2: starting piece 1 at 01-JAN-25
channel ORA_DISK_3: starting compressed archived log backup set
channel ORA_DISK_3: specifying archived log(s) in backup set
input archived log thread=1 sequence=9 RECID=3 STAMP=1189272703
channel ORA_DISK_3: starting piece 1 at 01-JAN-25
channel ORA_DISK_4: starting compressed archived log backup set
channel ORA_DISK_4: specifying archived log(s) in backup set
input archived log thread=1 sequence=10 RECID=4 STAMP=1189281347
channel ORA_DISK_4: starting piece 1 at 01-JAN-25
channel ORA_DISK_2: finished piece 1 at 01-JAN-25
piece handle=/home/oracle/bak0101/arch_HISDB_2101731232_9_1_20250101.bkp tag=TAG20250101T195548 comment=NONE
channel ORA_DISK_2: backup set complete, elapsed time: 00:00:02
channel ORA_DISK_3: finished piece 1 at 01-JAN-25
piece handle=/home/oracle/bak0101/arch_HISDB_2101731232_10_1_20250101.bkp tag=TAG20250101T195548 comment=NONE
channel ORA_DISK_3: backup set complete, elapsed time: 00:00:02
channel ORA_DISK_4: finished piece 1 at 01-JAN-25
piece handle=/home/oracle/bak0101/arch_HISDB_2101731232_11_1_20250101.bkp tag=TAG20250101T195548 comment=NONE
channel ORA_DISK_4: backup set complete, elapsed time: 00:00:01
channel ORA_DISK_1: finished piece 1 at 01-JAN-25
piece handle=/home/oracle/bak0101/arch_HISDB_2101731232_8_1_20250101.bkp tag=TAG20250101T195548 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:04
Finished backup at 01-JAN-25

(6)查看备份文件信息

[oracle@ora bak0101]$ cd /home/oracle/bak0101
[oracle@ora bak0101]$ ll
总用量 308812
-rw-r----- 1 oracle oinstall  13821952 1月   1 20:57 arch_HISDB_2101731232_19_1_20250101.bkp
-rw-r----- 1 oracle oinstall   5672448 1月   1 20:57 arch_HISDB_2101731232_20_1_20250101.bkp
-rw-r----- 1 oracle oinstall     48640 1月   1 20:57 arch_HISDB_2101731232_21_1_20250101.bkp
-rw-r----- 1 oracle oinstall   2004992 1月   1 20:57 arch_HISDB_2101731232_22_1_20250101.bkp
-rw-r----- 1 oracle oinstall   1540608 1月   1 20:57 arch_HISDB_2101731232_23_1_20250101.bkp
-rw-r----- 1 oracle oinstall   9797632 1月   1 20:55 control_bak_12.bak
-rw-r----- 1 oracle oinstall 202989568 1月   1 20:57 HISDB_2101731232_13_1_20250101.bkp
-rw-r----- 1 oracle oinstall  76685312 1月   1 20:56 HISDB_2101731232_14_1_20250101.bkp
-rw-r----- 1 oracle oinstall   1359872 1月   1 20:56 HISDB_2101731232_15_1_20250101.bkp
-rw-r----- 1 oracle oinstall   1097728 1月   1 20:56 HISDB_2101731232_16_1_20250101.bkp
-rw-r----- 1 oracle oinstall   1097728 1月   1 20:56 HISDB_2101731232_17_1_20250101.bkp
-rw-r----- 1 oracle oinstall     98304 1月   1 20:56 HISDB_2101731232_18_1_20250101.bkp

二、把备份文件复制到备库

1、在备库上创建存放备份文件的目录
[oracle@oradg dbs]$ mkdir /home/oracle/bak11
2、把主库的备份文件复制到备库
[oracle@ora bak0101]$ scp * oracle@oradg:/home/oracle/bak11
oracle@oradg's password: 
arch_HISDB_2101731232_19_1_20250101.bkp       100%   13MB  13.2MB/s   00:00    
arch_HISDB_2101731232_20_1_20250101.bkp       100% 5540KB   5.4MB/s   00:00    
arch_HISDB_2101731232_21_1_20250101.bkp       100%   48KB  47.5KB/s   00:00    
arch_HISDB_2101731232_22_1_20250101.bkp       100% 1958KB   1.9MB/s   00:00    
arch_HISDB_2101731232_23_1_20250101.bkp       100% 1505KB   1.5MB/s   00:00    
control_bak_12.bak                            100% 9568KB   9.3MB/s   00:01    
HISDB_2101731232_13_1_20250101.bkp            100%  194MB  96.8MB/s   00:02    
HISDB_2101731232_14_1_20250101.bkp            100%   73MB  73.1MB/s   00:01    
HISDB_2101731232_15_1_20250101.bkp            100% 1328KB   1.3MB/s   00:01    
HISDB_2101731232_16_1_20250101.bkp            100% 1072KB   1.1MB/s   00:00    
HISDB_2101731232_17_1_20250101.bkp            100% 1072KB   1.1MB/s   00:00    
HISDB_2101731232_18_1_20250101.bkp            100%   96KB  96.0KB/s   00:00    
3、查看备库中的主库备份文件
[oracle@oradg dbs]$ cd /home/oracle/bak11
[oracle@oradg bak11]$ ll
总用量 308812
-rw-r----- 1 oracle oinstall  13821952 1月   1 20:58 arch_HISDB_2101731232_19_1_20250101.bkp
-rw-r----- 1 oracle oinstall   5672448 1月   1 20:58 arch_HISDB_2101731232_20_1_20250101.bkp
-rw-r----- 1 oracle oinstall     48640 1月   1 20:58 arch_HISDB_2101731232_21_1_20250101.bkp
-rw-r----- 1 oracle oinstall   2004992 1月   1 20:58 arch_HISDB_2101731232_22_1_20250101.bkp
-rw-r----- 1 oracle oinstall   1540608 1月   1 20:58 arch_HISDB_2101731232_23_1_20250101.bkp
-rw-r----- 1 oracle oinstall   9797632 1月   1 20:58 control_bak_12.bak
-rw-r----- 1 oracle oinstall 202989568 1月   1 20:58 HISDB_2101731232_13_1_20250101.bkp
-rw-r----- 1 oracle oinstall  76685312 1月   1 20:58 HISDB_2101731232_14_1_20250101.bkp
-rw-r----- 1 oracle oinstall   1359872 1月   1 20:58 HISDB_2101731232_15_1_20250101.bkp
-rw-r----- 1 oracle oinstall   1097728 1月   1 20:58 HISDB_2101731232_16_1_20250101.bkp
-rw-r----- 1 oracle oinstall   1097728 1月   1 20:58 HISDB_2101731232_17_1_20250101.bkp
-rw-r----- 1 oracle oinstall     98304 1月   1 20:58 HISDB_2101731232_18_1_20250101.bkp

三、在备库上恢复数据库

1、启动数据库到 nomount
SQL> startup nomount
ORACLE instance started.Total System Global Area 1068937216 bytes
Fixed Size		    2260088 bytes
Variable Size		  331350920 bytes
Database Buffers	  729808896 bytes
Redo Buffers		    5517312 bytes
2、启动 rman,恢复控制文件,启动数据库到 mount

(1)查看备份的控制文件

[oracle@oradg ~]$ cd /home/oracle/bak11
[oracle@oradg bak11]$ ll
总用量 308812
-rw-r----- 1 oracle oinstall  13821952 1月   1 20:58 arch_HISDB_2101731232_19_1_20250101.bkp
-rw-r----- 1 oracle oinstall   5672448 1月   1 20:58 arch_HISDB_2101731232_20_1_20250101.bkp
-rw-r----- 1 oracle oinstall     48640 1月   1 20:58 arch_HISDB_2101731232_21_1_20250101.bkp
-rw-r----- 1 oracle oinstall   2004992 1月   1 20:58 arch_HISDB_2101731232_22_1_20250101.bkp
-rw-r----- 1 oracle oinstall   1540608 1月   1 20:58 arch_HISDB_2101731232_23_1_20250101.bkp
-rw-r----- 1 oracle oinstall   9797632 1月   1 20:58 control_bak_12.bak
-rw-r----- 1 oracle oinstall 202989568 1月   1 20:58 HISDB_2101731232_13_1_20250101.bkp
-rw-r----- 1 oracle oinstall  76685312 1月   1 20:58 HISDB_2101731232_14_1_20250101.bkp
-rw-r----- 1 oracle oinstall   1359872 1月   1 20:58 HISDB_2101731232_15_1_20250101.bkp
-rw-r----- 1 oracle oinstall   1097728 1月   1 20:58 HISDB_2101731232_16_1_20250101.bkp
-rw-r----- 1 oracle oinstall   1097728 1月   1 20:58 HISDB_2101731232_17_1_20250101.bkp
-rw-r----- 1 oracle oinstall     98304 1月   1 20:58 HISDB_2101731232_18_1_20250101.bkp

(2)恢复控制文件

RMAN> restore controlfile from '/home/oracle/bak11/control_bak_12.bak';Starting restore at 01-JAN-25
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=20 device type=DISKchannel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/usr/local/oradata/hisdbdg/control01.ctl
output file name=/usr/local/oracle/fast_recovery_area/hisdbdg/control02.ctl
Finished restore at 01-JAN-25

(3)启动数据库到 mount

SQL> alter database mount;Database altered.
3、查看控制文件中的数据文件与临时文件信息
RMAN>  report schema;released channel: ORA_DISK_1
Starting implicit crosscheck backup at 01-JAN-25
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=20 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=27 device type=DISK
allocated channel: ORA_DISK_3
channel ORA_DISK_3: SID=28 device type=DISK
allocated channel: ORA_DISK_4
channel ORA_DISK_4: SID=29 device type=DISK
allocated channel: ORA_DISK_5
channel ORA_DISK_5: SID=30 device type=DISK
allocated channel: ORA_DISK_6
channel ORA_DISK_6: SID=31 device type=DISK
Crosschecked 11 objects
Finished implicit crosscheck backup at 01-JAN-25Starting implicit crosscheck copy at 01-JAN-25
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
using channel ORA_DISK_5
using channel ORA_DISK_6
Finished implicit crosscheck copy at 01-JAN-25searching for all files in the recovery area
cataloging files...
no files catalogedRMAN-06139: WARNING: control file is not current for REPORT SCHEMA
Report of database schema for database with db_unique_name HISDBDGList of Permanent Datafiles
===========================
File Size(MB) Tablespace           RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
1    0        SYSTEM               ***     /usr/local/oradata/hisdbdg/system01.dbf
2    0        SYSAUX               ***     /usr/local/oradata/hisdbdg/sysaux01.dbf
3    0        UNDOTBS1             ***     /usr/local/oradata/hisdbdg/undotbs01.dbf
4    0        USERS                ***     /usr/local/oradata/hisdbdg/users01.dbfList of Temporary Files
=======================
File Size(MB) Tablespace           Maxsize(MB) Tempfile Name
---- -------- -------------------- ----------- --------------------
1    20       TEMP                 32767       /usr/local/oradata/hisdbdg/temp01.dbf
4、开始恢复数据库

(1)核对备份文件

RMAN> crosscheck backup;using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
using channel ORA_DISK_5
using channel ORA_DISK_6
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/bak0101/control_bak_1.bak RECID=1 STAMP=1189281129
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/bak0101/HISDB_2101731232_7_1_20250101.bkp RECID=2 STAMP=1189281181
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/bak0101/HISDB_2101731232_4_1_20250101.bkp RECID=3 STAMP=1189281180
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/bak0101/HISDB_2101731232_5_1_20250101.bkp RECID=4 STAMP=1189281182
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/bak0101/HISDB_2101731232_6_1_20250101.bkp RECID=5 STAMP=1189281181
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/bak0101/HISDB_2101731232_3_1_20250101.bkp RECID=6 STAMP=1189281179
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/bak0101/HISDB_2101731232_2_1_20250101.bkp RECID=7 STAMP=1189281179
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/bak0101/arch_HISDB_2101731232_10_1_20250101.bkp RECID=8 STAMP=1189281348
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/bak0101/arch_HISDB_2101731232_11_1_20250101.bkp RECID=9 STAMP=1189281349
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/bak0101/arch_HISDB_2101731232_9_1_20250101.bkp RECID=10 STAMP=1189281348
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/oracle/bak0101/arch_HISDB_2101731232_8_1_20250101.bkp RECID=11 STAMP=1189281348
Crosschecked 11 objects

(2)删除失效的备份文件

RMAN> delete expired backup;using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
using channel ORA_DISK_5
using channel ORA_DISK_6List of Backup Pieces
BP Key  BS Key  Pc# Cp# Status      Device Type Piece Name
------- ------- --- --- ----------- ----------- ----------
1       1       1   1   EXPIRED     DISK        /home/oracle/bak0101/control_bak_1.bak
2       2       1   1   EXPIRED     DISK        /home/oracle/bak0101/HISDB_2101731232_7_1_20250101.bkp
3       3       1   1   EXPIRED     DISK        /home/oracle/bak0101/HISDB_2101731232_4_1_20250101.bkp
4       4       1   1   EXPIRED     DISK        /home/oracle/bak0101/HISDB_2101731232_5_1_20250101.bkp
5       5       1   1   EXPIRED     DISK        /home/oracle/bak0101/HISDB_2101731232_6_1_20250101.bkp
6       6       1   1   EXPIRED     DISK        /home/oracle/bak0101/HISDB_2101731232_3_1_20250101.bkp
7       7       1   1   EXPIRED     DISK        /home/oracle/bak0101/HISDB_2101731232_2_1_20250101.bkp
8       8       1   1   EXPIRED     DISK        /home/oracle/bak0101/arch_HISDB_2101731232_10_1_20250101.bkp
9       9       1   1   EXPIRED     DISK        /home/oracle/bak0101/arch_HISDB_2101731232_11_1_20250101.bkp
10      10      1   1   EXPIRED     DISK        /home/oracle/bak0101/arch_HISDB_2101731232_9_1_20250101.bkp
11      11      1   1   EXPIRED     DISK        /home/oracle/bak0101/arch_HISDB_2101731232_8_1_20250101.bkpDo you really want to delete the above objects (enter YES or NO)? yes
deleted backup piece
backup piece handle=/home/oracle/bak0101/control_bak_1.bak RECID=1 STAMP=1189281129
deleted backup piece
backup piece handle=/home/oracle/bak0101/HISDB_2101731232_7_1_20250101.bkp RECID=2 STAMP=1189281181
deleted backup piece
backup piece handle=/home/oracle/bak0101/HISDB_2101731232_4_1_20250101.bkp RECID=3 STAMP=1189281180
deleted backup piece
backup piece handle=/home/oracle/bak0101/HISDB_2101731232_5_1_20250101.bkp RECID=4 STAMP=1189281182
deleted backup piece
backup piece handle=/home/oracle/bak0101/HISDB_2101731232_6_1_20250101.bkp RECID=5 STAMP=1189281181
deleted backup piece
backup piece handle=/home/oracle/bak0101/HISDB_2101731232_3_1_20250101.bkp RECID=6 STAMP=1189281179
deleted backup piece
backup piece handle=/home/oracle/bak0101/HISDB_2101731232_2_1_20250101.bkp RECID=7 STAMP=1189281179
deleted backup piece
backup piece handle=/home/oracle/bak0101/arch_HISDB_2101731232_10_1_20250101.bkp RECID=8 STAMP=1189281348
deleted backup piece
backup piece handle=/home/oracle/bak0101/arch_HISDB_2101731232_11_1_20250101.bkp RECID=9 STAMP=1189281349
deleted backup piece
backup piece handle=/home/oracle/bak0101/arch_HISDB_2101731232_9_1_20250101.bkp RECID=10 STAMP=1189281348
deleted backup piece
backup piece handle=/home/oracle/bak0101/arch_HISDB_2101731232_8_1_20250101.bkp RECID=11 STAMP=1189281348
Deleted 11 EXPIRED objects

(3)重新核对备份文件

RMAN> crosscheck backup;using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
using channel ORA_DISK_5
using channel ORA_DISK_6
specification does not match any backup in the repository

(4)更新备份文件

RMAN> catalog start with '/home/oracle/bak11';searching for all files that match the pattern /home/oracle/bak11List of Files Unknown to the Database
=====================================
File Name: /home/oracle/bak11/arch_HISDB_2101731232_19_1_20250101.bkp
File Name: /home/oracle/bak11/arch_HISDB_2101731232_20_1_20250101.bkp
File Name: /home/oracle/bak11/arch_HISDB_2101731232_21_1_20250101.bkp
File Name: /home/oracle/bak11/arch_HISDB_2101731232_22_1_20250101.bkp
File Name: /home/oracle/bak11/arch_HISDB_2101731232_23_1_20250101.bkp
File Name: /home/oracle/bak11/control_bak_12.bak
File Name: /home/oracle/bak11/HISDB_2101731232_13_1_20250101.bkp
File Name: /home/oracle/bak11/HISDB_2101731232_14_1_20250101.bkp
File Name: /home/oracle/bak11/HISDB_2101731232_15_1_20250101.bkp
File Name: /home/oracle/bak11/HISDB_2101731232_16_1_20250101.bkp
File Name: /home/oracle/bak11/HISDB_2101731232_17_1_20250101.bkp
File Name: /home/oracle/bak11/HISDB_2101731232_18_1_20250101.bkpDo you really want to catalog the above files (enter YES or NO)? yes
cataloging files...
cataloging doneList of Cataloged Files
=======================
File Name: /home/oracle/bak11/arch_HISDB_2101731232_19_1_20250101.bkp
File Name: /home/oracle/bak11/arch_HISDB_2101731232_20_1_20250101.bkp
File Name: /home/oracle/bak11/arch_HISDB_2101731232_21_1_20250101.bkp
File Name: /home/oracle/bak11/arch_HISDB_2101731232_22_1_20250101.bkp
File Name: /home/oracle/bak11/arch_HISDB_2101731232_23_1_20250101.bkp
File Name: /home/oracle/bak11/control_bak_12.bak
File Name: /home/oracle/bak11/HISDB_2101731232_13_1_20250101.bkp
File Name: /home/oracle/bak11/HISDB_2101731232_14_1_20250101.bkp
File Name: /home/oracle/bak11/HISDB_2101731232_15_1_20250101.bkp
File Name: /home/oracle/bak11/HISDB_2101731232_16_1_20250101.bkp
File Name: /home/oracle/bak11/HISDB_2101731232_17_1_20250101.bkp
File Name: /home/oracle/bak11/HISDB_2101731232_18_1_20250101.bkp

(5)查看备份集信息

RMAN> list backup of database;List of Backup Sets
===================BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
6       Full    193.57M    DISK        00:00:00     01-JAN-25      BP Key: 6   Status: AVAILABLE  Compressed: YES  Tag: TAG20250101T195259Piece Name: /home/oracle/bak11/HISDB_2101731232_2_1_20250101.bkpList of Datafiles in backup set 6File LV Type Ckp SCN    Ckp Time  Name---- -- ---- ---------- --------- ----1       Full 1063667    01-JAN-25 /usr/local/oradata/hisdb/system01.dbfBS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
7       Full    72.98M     DISK        00:00:00     01-JAN-25      BP Key: 7   Status: AVAILABLE  Compressed: YES  Tag: TAG20250101T195259Piece Name: /home/oracle/bak11/HISDB_2101731232_3_1_20250101.bkpList of Datafiles in backup set 7File LV Type Ckp SCN    Ckp Time  Name---- -- ---- ---------- --------- ----2       Full 1063668    01-JAN-25 /usr/local/oradata/hisdb/sysaux01.dbfBS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
8       Full    1.20M      DISK        00:00:00     01-JAN-25      BP Key: 8   Status: AVAILABLE  Compressed: YES  Tag: TAG20250101T195259Piece Name: /home/oracle/bak11/HISDB_2101731232_4_1_20250101.bkpList of Datafiles in backup set 8File LV Type Ckp SCN    Ckp Time  Name---- -- ---- ---------- --------- ----3       Full 1063669    01-JAN-25 /usr/local/oradata/hisdb/undotbs01.dbfBS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
10      Full    1.04M      DISK        00:00:00     01-JAN-25      BP Key: 10   Status: AVAILABLE  Compressed: YES  Tag: TAG20250101T195259Piece Name: /home/oracle/bak11/HISDB_2101731232_6_1_20250101.bkpList of Datafiles in backup set 10File LV Type Ckp SCN    Ckp Time  Name---- -- ---- ---------- --------- ----4       Full 1063671    01-JAN-25 /usr/local/oradata/hisdb/users01.dbf

(6)恢复数据库

/*
run{
set newname for datafile  1  to  '/usr/local/oradata/hisdbdg/system01.dbf';
set newname for datafile  2  to  '/usr/local/oradata/hisdbdg/sysaux01.dbf';
set newname for datafile  4  to  '/usr/local/oradata/hisdbdg/undotbs01.dbf';
set newname for datafile  3  to  '/usr/local/oradata/hisdbdg/users01.dbf';
set newname for tempfile  1  to  '/usr/local/oracle/data/oradata/temp01';
restore database;
switch datafile all;
switch tempfile all;
recover database;
}
*/RMAN> run{
set newname for datafile  1  to  '/usr/local/oradata/hisdbdg/system01.dbf';
set newname for datafile  2  to  '/usr/local/oradata/hisdbdg/sysaux01.dbf';
set newname for datafile  4  to  '/usr/local/oradata/hisdbdg/undotbs01.dbf';
set newname for datafile  3  to  '/usr/local/oradata/hisdbdg/users01.dbf';
set newname for tempfile  1  to  '/usr/local/oracle/data/oradata/temp01';
restore database;
switch datafile all;
switch tempfile all;
recover database;
11> }executing command: SET NEWNAMEexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEexecuting command: SET NEWNAMEStarting restore at 01-JAN-25
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
using channel ORA_DISK_5
using channel ORA_DISK_6channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to /usr/local/oradata/hisdbdg/system01.dbf
channel ORA_DISK_1: reading from backup piece /home/oracle/bak11/HISDB_2101731232_13_1_20250101.bkp
channel ORA_DISK_2: starting datafile backup set restore
channel ORA_DISK_2: specifying datafile(s) to restore from backup set
channel ORA_DISK_2: restoring datafile 00002 to /usr/local/oradata/hisdbdg/sysaux01.dbf
channel ORA_DISK_2: reading from backup piece /home/oracle/bak11/HISDB_2101731232_14_1_20250101.bkp
channel ORA_DISK_3: starting datafile backup set restore
channel ORA_DISK_3: specifying datafile(s) to restore from backup set
channel ORA_DISK_3: restoring datafile 00003 to /usr/local/oradata/hisdbdg/users01.dbf
channel ORA_DISK_3: reading from backup piece /home/oracle/bak11/HISDB_2101731232_15_1_20250101.bkp
channel ORA_DISK_4: starting datafile backup set restore
channel ORA_DISK_4: specifying datafile(s) to restore from backup set
channel ORA_DISK_4: restoring datafile 00004 to /usr/local/oradata/hisdbdg/undotbs01.dbf
channel ORA_DISK_4: reading from backup piece /home/oracle/bak11/HISDB_2101731232_17_1_20250101.bkp
channel ORA_DISK_4: piece handle=/home/oracle/bak11/HISDB_2101731232_17_1_20250101.bkp tag=TAG20250101T205640
channel ORA_DISK_4: restored backup piece 1
channel ORA_DISK_4: restore complete, elapsed time: 00:00:01
channel ORA_DISK_3: piece handle=/home/oracle/bak11/HISDB_2101731232_15_1_20250101.bkp tag=TAG20250101T205640
channel ORA_DISK_3: restored backup piece 1
channel ORA_DISK_3: restore complete, elapsed time: 00:00:07
channel ORA_DISK_1: piece handle=/home/oracle/bak11/HISDB_2101731232_13_1_20250101.bkp tag=TAG20250101T205640
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:25
channel ORA_DISK_2: piece handle=/home/oracle/bak11/HISDB_2101731232_14_1_20250101.bkp tag=TAG20250101T205640
channel ORA_DISK_2: restored backup piece 1
channel ORA_DISK_2: restore complete, elapsed time: 00:00:25
Finished restore at 01-JAN-25datafile 3 switched to datafile copy
input datafile copy RECID=3 STAMP=1189287623 file name=/usr/local/oradata/hisdbdg/users01.dbf
datafile 4 switched to datafile copy
input datafile copy RECID=4 STAMP=1189287623 file name=/usr/local/oradata/hisdbdg/undotbs01.dbfrenamed tempfile 1 to /usr/local/oracle/data/oradata/temp01 in control fileStarting recover at 01-JAN-25
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
using channel ORA_DISK_5
using channel ORA_DISK_6starting media recoverychannel ORA_DISK_1: starting archived log restore to default destination
channel ORA_DISK_1: restoring archived log
archived log thread=1 sequence=11
channel ORA_DISK_1: reading from backup piece /home/oracle/bak11/arch_HISDB_2101731232_23_1_20250101.bkp
channel ORA_DISK_1: piece handle=/home/oracle/bak11/arch_HISDB_2101731232_23_1_20250101.bkp tag=TAG20250101T205722
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
archived log file name=/usr/local/oracle/fast_recovery_area/HISDBDG/archivelog/2025_01_01/o1_mf_1_11_mqbkg85f_.arc thread=1 sequence=11
channel default: deleting archived log(s)
archived log file name=/usr/local/oracle/fast_recovery_area/HISDBDG/archivelog/2025_01_01/o1_mf_1_11_mqbkg85f_.arc RECID=2 STAMP=1189287624
unable to find archived log
archived log thread=1 sequence=12
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 01/01/2025 21:40:25
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 12 and starting SCN of 1068028

恢复报错,把数据库恢复到 SCN=1068028:

RMAN> recover database until scn 1068028;Starting recover at 01-JAN-25
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
using channel ORA_DISK_5
using channel ORA_DISK_6starting media recovery
media recovery complete, elapsed time: 00:00:00Finished recover at 01-JAN-25
5、数据库恢复完成,修改日志文件

(1)查看日志文件

SQL> select member from v$logfile;MEMBER
--------------------------------------------------------------------------------
/usr/local/oradata/hisdbdg/redo03.log
/usr/local/oradata/hisdbdg/redo02.log
/usr/local/oradata/hisdbdg/redo01.log
/usr/local/oradata/hisdbdg/standby01.log
/usr/local/oradata/hisdbdg/standby02.log
/usr/local/oradata/hisdbdg/standby03.log
/usr/local/oradata/hisdbdg/standby04.log7 rows selected.

(2)修改日志文件名(此步骤不用做)

/*
alter database rename file '/usr/local/oradata/hisdb/redo01.log' to '/usr/local/oradata/hisdbdg/redo01.log';
alter database rename file '/usr/local/oradata/hisdb/redo02.log' to '/usr/local/oradata/hisdbdg/redo02.log';
alter database rename file '/usr/local/oradata/hisdb/redo03.log' to '/usr/local/oradata/hisdbdg/redo03.log';alter database rename file '/usr/local/oradata/hisdb/standby01.log' to '/usr/local/oradata/hisdbdg/standby01.log';
alter database rename file '/usr/local/oradata/hisdb/standby02.log' to '/usr/local/oradata/hisdbdg/standby02.log';
alter database rename file '/usr/local/oradata/hisdb/standby03.log' to '/usr/local/oradata/hisdbdg/standby03.log';
alter database rename file '/usr/local/oradata/hisdb/standby04.log' to '/usr/local/oradata/hisdbdg/standby04.log';
*/SQL> alter database rename file '/usr/local/oradata/hisdb/redo01.log' to '/usr/local/oradata/hisdbdg/redo01.log';Database altered.SQL> alter database rename file '/usr/local/oradata/hisdb/redo02.log' to '/usr/local/oradata/hisdbdg/redo02.log';Database altered.SQL> alter database rename file '/usr/local/oradata/hisdb/redo03.log' to '/usr/local/oradata/hisdbdg/redo03.log';Database altered.SQL> alter database rename file '/usr/local/oradata/hisdb/standby01.log' to '/usr/local/oradata/hisdbdg/standby01.log';Database altered.SQL> alter database rename file '/usr/local/oradata/hisdb/standby02.log' to '/usr/local/oradata/hisdbdg/standby02.log';Database altered.SQL> alter database rename file '/usr/local/oradata/hisdb/standby03.log' to '/usr/local/oradata/hisdbdg/standby03.log';Database altered.SQL> alter database rename file '/usr/local/oradata/hisdb/standby04.log' to '/usr/local/oradata/hisdbdg/standby04.log';Database altered.
6、启动数据库
SQL> alter database open;Database altered.

四、开启实时同步

1、开启实时同步
SQL> alter database recover managed standby database using current logfile disconnect from session;Database altered.
2、查看备库进程
SQL> select process, status, thread#,sequence#, block#, blocks from v$managed_standby;PROCESS   STATUS	  THREAD#  SEQUENCE#	 BLOCK#     BLOCKS
--------- ------------ ---------- ---------- ---------- ----------
ARCH	  CONNECTED		0	   0	      0 	 0
ARCH	  CONNECTED		0	   0	      0 	 0
ARCH	  CONNECTED		0	   0	      0 	 0
ARCH	  CONNECTED		0	   0	      0 	 0
RFS	  IDLE			1	  38	   8009 	 1
RFS	  IDLE			0	   0	      0 	 0
RFS	  IDLE			0	   0	      0 	 0
RFS	  IDLE			0	   0	      0 	 0
MRP0	  APPLYING_LOG		1	  38	   8009     1024009 rows selected.
3、查看主库进程信息
SQL> select process, status, thread#,sequence#, block#, blocks from v$managed_standby;PROCESS   STATUS	  THREAD#  SEQUENCE#	 BLOCK#     BLOCKS
--------- ------------ ---------- ---------- ---------- ----------
ARCH	  CLOSING		1	  35	  32769        251
ARCH	  CLOSING		1	  37	  28672        799
ARCH	  CLOSING		1	  37	      1      29470
ARCH	  CLOSING		1	  34	  77825       2456
LNS	  	  WRITING       1	  38	   7895 	 1
4、查看备库信息
SQL> select open_mode,log_mode,open_mode ,database_role from v$database;OPEN_MODE	     LOG_MODE	  OPEN_MODE	       DATABASE_ROLE
-------------------- ------------ -------------------- ----------------
READ ONLY WITH APPLY ARCHIVELOG   READ ONLY WITH APPLY PHYSICAL STANDBY
5、查看主库信息
SQL> select open_mode,log_mode,open_mode ,database_role from v$database;OPEN_MODE	     LOG_MODE	  OPEN_MODE	       DATABASE_ROLE
-------------------- ------------ -------------------- ----------------
READ WRITE	     ARCHIVELOG   READ WRITE	       PRIMARY

五、数据同步验证

1、在主库执行以下 SQL
SQL> create table t01(id int primary key, name varchar2(20));Table created.insert into t01 values(1,'jack');1 row created.SQL> commit;Commit complete.SQL> select * from t01;ID NAME
---------- --------------------1 jack
2、在备库执行以下 SQL查询数据
SQL> select * from t01;ID NAME
---------- --------------------1 jack

相关文章:

Oracle Dataguard(主库为单节点)配置详解(4):将主库复制到备库并启动同步

Oracle Dataguard(主库为单节点)配置详解(4):将主库复制到备库并启动同步 目录 Oracle Dataguard(主库为单节点)配置详解(4):将主库复制到备库并启动同步一、…...

OpenCL(贰):浅析CL内核程序接口函数

目录 1.前言 2.获取平台信息 1.cl_int类型 2.cl_platform_id类型 3.clGetPlatformIDs():查询系统OpenCL平台数量或获取具体的平台信息 4.clGetPlatformInfo():查询指定OpenCL平台的信息,例如平台名称、供应商、版本等 3.设置OpenCL上下文…...

Leetcode 3407. Substring Matching Pattern

Leetcode 3407. Substring Matching Pattern 1. 解题思路2. 代码实现 题目链接:3407. Substring Matching Pattern 1. 解题思路 这一题是一道leetcode easy的题目,照说应该没啥的,不过实际我做的时候在这里卡了一下,所以还是拿…...

学英语学压测:02jmeter组件-测试计划和线程组ramp-up参数的作用

📢📢📢:先看关键单词,再看英文,最后看中文总结,再回头看一遍英文原文,效果更佳!! 关键词 Functional Testing功能测试[ˈfʌŋkʃənəl ˈtɛstɪŋ]Sample样…...

Vue笔记-001-声明式渲染

https://cn.vuejs.org/tutorial/#step-2https://cn.vuejs.org/tutorial/#step-2 Vue 单文件组件 (Single-File Component,缩写为 SFC) 单文件组件是一种可复用的代码组织形式,它将从属于同一个组件的 HTML、CSS 和 JavaScript 封装在使用 .vue 后缀的文件…...

26考研资料分享 百度网盘

26考研资料分享考研资料合集 百度网盘(仅供参考学习) 基础班: 通过网盘分享的文件:2026【考研英语】等3个文件 链接: https://pan.baidu.com/s/1Q6rvKop3sWiL9zBHs87kAQ?pwd5qnn 提取码: 5qnn --来自百度网盘超级会员v3的分享…...

.NET 8 + Ocelot + Consul 实现代理网关、服务发现

.NET 8 Ocelot Consul 实现代理网关、服务发现 本文环境:.NET 8 Ocelot 23.4.2 Consul 1.7.14.6 1 实现网关 分别创建3个WebApi工程:OcelotGw、TestGwAService、TestGwBService;在OcelotGw工程中安装Ocelot包:Install-Packag…...

使用 Nginx 轻松处理跨域请求(CORS)

使用 Nginx 轻松处理跨域请求(CORS) 在现代 Web 开发中,跨域资源共享(CORS)是一种重要的机制,用于解决浏览器的同源策略限制。CORS 允许服务器声明哪些来源可以访问其资源,从而确保安全性与可用…...

【LeetCode Hot100 二分查找】搜索插入位置、搜索二维矩阵、搜索旋转排序数组、寻找两个正序数组的中位数

二分查找 搜索插入位置搜索二维矩阵在排序数组中查找元素的第一个和最后一个位置寻找旋转排序数组中的最小值搜索旋转排序数组寻找两个正序数组的中位数(hard) 搜索插入位置 给定一个排序数组和一个目标值,在数组中找到目标值,并…...

使用MediaPipe Face Mesh 面部动作检测

一、技术选型 OpenCV(Open Source Computer Vision Library) 用于视频流捕捉、图像预处理和基本图像处理操作。 MediaPipe 提供高效的人脸检测与关键点提取功能(Face Mesh)。 Python 作为后端开发语言,整合上述库进行…...

【Vue】<script setup>和 <script>区别是什么?在使用时的写法区别?

<script setup> 是 Vue 3 引入的一种新的脚本语法&#xff0c;它提供了一种更简洁和声明式的方式来编写组件逻辑。它是为了解决传统 <script> 标签在 Vue 单文件组件&#xff08;SFC&#xff09;中的一些局限性而设计的。 <script setup> 与 <script>…...

微服务框架,Http异步编程中,如何保证数据的最终一致性

一、背景 在微服务框架下&#xff0c;跨服务之间的调用&#xff0c;当遇到操作耗时或者量大的情况&#xff0c;我们一般会采用异步编程实现。 本文出现的问题是&#xff1a;异步回调过来时&#xff0c;却未查询到数据库中的任务&#xff0c;导致未能正常处理回调。 下面是当…...

vue3-dom-diff算法

vue3diff算法 什么是vue3diff算法 Vue3中的diff算法是一种用于比较虚拟DOM树之间差异的算法&#xff0c;其目的是为了高效地更新真实DOM&#xff0c;减少不必要的重渲染 主要过程 整个过程主要分为以下五步 前置预处理后置预处理仅处理新增仅处理后置处理包含新增、卸载、…...

年会抽奖Html

在这里插入图片描述 <!-- <video id"backgroundMusic" src"file:///D:/background.mp3" loop autoplay></video> --> <divstyle"width: 290px; height: 580px; margin-left: 20px; margin-top: 20px; background: url(D:/nianhu…...

ubuntu16 重启之后lvm信息丢失故障恢复

一、背景 1、问题背景 业务有一台物理开发服务器&#xff0c;文件系统有损坏&#xff1b;由于重启时没有检查&#xff0c;导致重启卡住。后面通过断电重新启动之后&#xff0c;无法进入系统&#xff1b;进入救援模式&#xff0c;注释数据盘挂载。重启之后进入系统&#xff0c…...

【华为OD-E卷 - 热点网站统计 100分(python、java、c++、js、c)】

【华为OD-E卷 - 热点网站统计 100分&#xff08;python、java、c、js、c&#xff09;】 题目 企业路由器的统计页面&#xff0c;有一个功能需要动态统计公司访问最多的网页URL top N。请设计一个算法&#xff0c;可以高效动态统计Top N的页面 输入描述 每一行都是一个URL或…...

Ubuntu下安装Android Sdk

下载android sdk命令行工具 https://developer.android.com/studio?hlzh-cn#command-tools mkdir android-sdk cd android-sdk unzip commandlinetools-linux-11076708_latest.zip 添加环境变量到~/.bashrc export ANDROID_HOME$HOME/android-sdk export PATH$PATH:$ANDRO…...

【JVM】总结篇-类的加载篇之 类的加载器 和ClassLoader分析

文章目录 类的加载器ClassLoader自定义类加载器双亲委派机制概念源码分析优势劣势如何打破Tomcat 沙箱安全机制JDK9 双亲委派机制变化 类的加载器 获得当前类的ClassLoader clazz.getClassLoader() 获得当前线程上下文的ClassLoader Thread.currentThread().getContextClassLoa…...

怎样修改el-table主题样式

起因&#xff1a;el-table有主题样式&#xff0c;部分需要单独设置 环境&#xff1a;ideanodejs插件谷歌浏览器 第一步&#xff1a;找到scss文件&#xff1a; 谷歌浏览器打开表格页面&#xff0c;ctrlshifti打开开发者工具&#xff0c;点击后鼠标移动到表格单元格上单击一下…...

MySQL(二)MySQL DDL数据库定义语言

1. MySQL DDL数据库定义语言 1.1. MySQL定义语言 进入MySQL mysql -u root -p(回车后输入密码&#xff0c;即可进入mysq1)1.1.1. 数据库操作 &#xff08;1&#xff09;查看数据库 mysql>show databases;注:MySQL语句分隔符为“&#xff1b;”   mysql库很重要它里面有…...

(十)学生端搭建

本次旨在将之前的已完成的部分功能进行拼装到学生端&#xff0c;同时完善学生端的构建。本次工作主要包括&#xff1a; 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...

基于当前项目通过npm包形式暴露公共组件

1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹&#xff0c;并新增内容 3.创建package文件夹...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

人机融合智能 | “人智交互”跨学科新领域

本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...

招商蛇口 | 执笔CID,启幕低密生活新境

作为中国城市生长的力量&#xff0c;招商蛇口以“美好生活承载者”为使命&#xff0c;深耕全球111座城市&#xff0c;以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子&#xff0c;招商蛇口始终与城市发展同频共振&#xff0c;以建筑诠释对土地与生活的…...

JavaScript基础-API 和 Web API

在学习JavaScript的过程中&#xff0c;理解API&#xff08;应用程序接口&#xff09;和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能&#xff0c;使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...

Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换

目录 关键点 技术实现1 技术实现2 摘要&#xff1a; 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式&#xff08;自动驾驶、人工驾驶、远程驾驶、主动安全&#xff09;&#xff0c;并通过实时消息推送更新车…...

在 Spring Boot 项目里,MYSQL中json类型字段使用

前言&#xff1a; 因为程序特殊需求导致&#xff0c;需要mysql数据库存储json类型数据&#xff0c;因此记录一下使用流程 1.java实体中新增字段 private List<User> users 2.增加mybatis-plus注解 TableField(typeHandler FastjsonTypeHandler.class) private Lis…...

Spring Security 认证流程——补充

一、认证流程概述 Spring Security 的认证流程基于 过滤器链&#xff08;Filter Chain&#xff09;&#xff0c;核心组件包括 UsernamePasswordAuthenticationFilter、AuthenticationManager、UserDetailsService 等。整个流程可分为以下步骤&#xff1a; 用户提交登录请求拦…...