单机19c oracle不停机搭建ADG备库 同步数据并主备切换
0.前期准备数据库版本、补丁、操作系统版本一样ADG只需要安装数据库软件不需要dbca创建库备库ORACLE_HOME、ORACLE_SID路径和主库保持一致主库ADG-备库IP10.98.3.7010.98.3.75数据库版本19.19.0.0.019.19.0.0.0补丁19.19_DB_p35042068_190000_Linux-x86-64.zip19.19_DB_p35042068_190000_Linux-x86-64.zip操作系统版本Red Hat7.9Red Hat8.8备库hostnamewza01,oracle_sidorcl,db_unique_nameorcl备库hostnamewzabak,oracle_sidorcldg,db_unique_nameorcldg一、主库备库环境准备1、主库配置1.1.主库更改hosts文件vi /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 #DG备库 10.98.3.75 wzabak #主库 10.98.3.70 wza011.2.主库开启强日志归档模式select force_logging from v$database; alter database force logging; archive log list; --如果主库没有开启归档是需要停机窗口开启归档的 sqlplus / as sysdba shutdown immediate startup mount alter database archivelog; alter database open1.3.主库配置参数查询数据文件位置select name from v$datafile;查询日志文件位置select member from v$logfile;DG_CONFIG主库和备库必须设置不同的名称不区分大小写oracle_sid可以重复因为是异机fal_client本机oracle_sidDB_FILE_NAME_CONVERT主库路径、备库路径alter system set LOG_ARCHIVE_CONFIGDG_CONFIG(orcl,orcldg) scopeboth sid*; alter system set log_archive_dest_1LOCATION/archivelog VALID_FOR(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAMEorcl scopespfile; alter system set LOG_ARCHIVE_DEST_2SERVICEorcldg LGWR ASYNC VALID_FOR(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAMEorcldg scopeboth sid*; alter system set fal_clientorcl scopeboth sid*; alter system set FAL_SERVERorcldg scopeboth sid*; alter system set standby_file_managementAUTO scopeboth sid*; alter system set DB_FILE_NAME_CONVERT/data/orcl,/u01/app/oracle/oradata/orcldg/datafile scopespfile sid*; alter system set LOG_FILE_NAME_CONVERT/data/orcl,/u01/app/oracle/oradata/orcldg/onlinelog scopespfile sid*; alter system set log_archive_format%t_%s_%r.arc scopespfile sid*; alter system set remote_login_passwordfileEXCLUSIVE scopespfile; alter system set PARALLEL_EXECUTION_MESSAGE_SIZE8192 scopespfile; 有scopespfile的参数需要重启数据库生效 (无停机窗口的时候可以不设置非必要的参数1.4.主库增加standby logfile日志组select GROUP#,BYTES/1024/1024 MB,STATUS from v$log; GROUP# MB STATUS ---------- ---------- ---------------- 1 200 CURRENT 2 200 INACTIVE 3 200 INACTIVE 4 200 CURRENT 备库比主库多一组redolog大小一样group最好从10开始防止和主库冲突 alter database add standby logfile thread 1 group 11 /u01/app/oracle/fast_recovery_area/redo11.log size 200m; alter database add standby logfile thread 1 group 12 /u01/app/oracle/fast_recovery_area/redo12.log size 200m; alter database add standby logfile thread 1 group 13 /u01/app/oracle/fast_recovery_area/redo13.log size 200m; alter database add standby logfile thread 2 group 14 /u01/app/oracle/fast_recovery_area/redo14.log size 200m; alter database add standby logfile thread 2 group 15 /u01/app/oracle/fast_recovery_area/redo15.log size 200m; alter database add standby logfile thread 2 group 16 /u01/app/oracle/fast_recovery_area/redo16.log size 200m;1.5.主库修改tnsnames文件cd $ORACLE_HOME/network/admin vi tnsnames.ora ORCL (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST wza-01)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED) (SERVICE_NAME orcl) ) ) ORCLDG (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST wzabak)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED) (SERVICE_NAME orcldg) ) )1.6.主库监听重启确认监听状态su - oracle lsnrctl stop lsnrctl start lsnrctl status [oraclewza01]$ lsnrctl status LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 17-APR-2025 15:55:29 Copyright (c) 1991, 2023, Oracle. All rights reserved. Connecting to (ADDRESS(PROTOCOLtcp)(HOST)(PORT1521)) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production Start Date 14-APR-2025 10:14:49 Uptime 3 days 5 hr. 40 min. 40 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /u01/app/19c/grid/network/admin/listener.ora Listener Log File /u01/app/grid/diag/tnslsnr/wza01/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION(ADDRESS(PROTOCOLipc)(KEYLISTENER))) (DESCRIPTION(ADDRESS(PROTOCOLtcp)(HOST10.98.3.70)(PORT1521))) Services Summary... Service orcl has 1 instance(s). Instance orcl1, status READY, has 1 handler(s) for this service... The command completed successfully2、备库配置2.1.备库更改hosts文件和主库内容相同su - root vi /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 #DG备库 10.98.3.75 wzabak #主库 10.98.3.70 wza012.2.备库更改Oracle用户环境变量[oraclewzabak ~]$ pwd /home/oracle [oraclewzabak ~]$ cat .bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH$PATH:$HOME/.local/bin:$HOME/bin export PATH export EDITORvi export TMP/tmp export TMPDIR$TMP export ORACLE_SIDorcldg export ORACLE_BASE/u01/app/oracle export ORACLE_HOME$ORACLE_BASE/product/19c/db_1 export INVENTORY_LOCATION/u01/oraInventory export TNS_ADMIN$ORACLE_HOME/network/admin export LD_LIBRARY_PATH$ORACLE_HOME/lib export NLS_LANGAMERICAN_AMERICA.AL32UTF8 export NLS_DATE_FORMATYYYY-MM-DD HH24:MI:SS export PATH$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:$PATH:$HOME/bin2.3.备库修改tnsnames文件和主库内容相同cd $ORACLE_HOME/network/admin vi tnsnames.ora ORCL (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST wza-01)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED) (SERVICE_NAME orcl) ) ) ORCLDG (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST wzabak)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED) (SERVICE_NAME orcldg) ) )2.4.备库修改listener.ora文件cd $ORACLE_HOME/network/admin vi listener.ora LISTENER (DESCRIPTION_LIST (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST 10.98.3.75)(PORT 1521)) (ADDRESS (PROTOCOL IPC)(KEY EXTPROC1521)) ) ) SID_LIST_LISTENER (SID_LIST (SID_DESC (GLOBAL_DBNAME orcl) (ORACLE_HOME /u01/app/oracle/product/19c/db_1) (SID_NAME orcl) ) (SID_DESC (GLOBAL_DBNAME orcldg) (ORACLE_HOME /u01/app/oracle/product/19c/db_1) (SID_NAME orcldg) ) )2.5.备库监听重启确认监听状态su - oracle lsnrctl stop lsnrctl start lsnrctl status [oraclewzabak]$ lsnrctl status LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 16-APR-2025 17:25:01 Copyright (c) 1991, 2023, Oracle. All rights reserved. Connecting to (DESCRIPTION(ADDRESS(PROTOCOLTCP)(HOST10.98.3.75)(PORT1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production Start Date 16-APR-2025 17:14:50 Uptime 0 days 0 hr. 10 min. 10 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /u01/app/oracle/product/19c/db_1/network/admin/listener.ora Listener Log File /u01/app/oracle/diag/tnslsnr/wzabak/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION(ADDRESS(PROTOCOLtcp)(HOST10.98.3.75)(PORT1521))) (DESCRIPTION(ADDRESS(PROTOCOLipc)(KEYEXTPROC1521))) Services Summary... Service orcl has 1 instance(s). Instance orcl, status UNKNOWN, has 1 handler(s) for this service... Service orcldg has 1 instance(s). Instance orcldg, status UNKNOWN, has 1 handler(s) for this service... The command completed successfully3、复制密码文件到备库注意duplicate需要确保主备库的数据库密码用户名一致pfile(init*.ora)文件名一致3.1.主库重新生成密码文件密码文件名称orapw{主库ORACLE_SID}密码需要满足复杂度至少8位有一个特殊字符包含字母和数字spfile同路径下可以找到密码文件的位置 SQL show parameter spfile; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ spfile string /data/ORCL/PARAMETERFILE/spfil e.276.1191232127 su - grid orapwd file$ORACLE_HOME/dbs/orapworcl passworddba_12345 forcey3.2.复制密码文件到备库备库的路径不可以用$ORACLE_HOME代替除非主备库的ORACLE_HOME一模一样scp $ORACLE_HOME/dbs/orapworcl oraclewzabak:/u01/app/oracle/product/19c/db_1/dbs/ 备库 cd /u01/app/oracle/product/19c/db_1/dbs/ cp orapworcl orapworcldg4、备库修改参数文件备库的参数文件名称init{主库ORACLE_SID}.ora备库启动主库duplicate的时候读取此文件文件修改完毕之后复制一份init{备库ORACLE_SID}.ora搭建完成之后读取此文件主库: create pfile from spfile cd $ORACLE_HOME/dbs scp $ORACLE_HOME/dbs/initorcl.ora oraclewzabak:/u01/app/oracle/product/19c/db_1/dbs/ 备库 cp initorcl.ora initorcldg.ora4.1.修改参数文件enable_pluggable_databasetrue备库开启PDB模式这个是可选项su - oracle vi /u01/app/oracle/product/19c/db_1/dbs/initorcl.ora *.audit_file_dest/u01/app/oracle/audit *.audit_traildb *.compatible19.19.0.0 *.control_files/u01/app/oracle/oradata/orcldg/control01.ctl,/u01/app/oracle/oradata/orcldg/control02.ctl *.db_block_size8192 *.db_create_file_dest/u01/app/oracle/oradata/orcldg *.db_nameorcl *.diagnostic_dest/u01/app/oracle/diag/rdbms *.db_unique_nameorcldg *.dispatchers *.fal_clientorcldg *.fal_serverorcl *.LOG_ARCHIVE_CONFIGDG_CONFIG(orcl,orcldg) *.log_archive_dest_1LOCATION/u01/app/oracle/fast_recovery_area VALID_FOR(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAMEorcldg *.LOG_ARCHIVE_DEST_2SERVICEorcl LGWR ASYNC VALID_FOR(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAMEorcl *.log_archive_format%t_%s_%r.arc *.LOG_FILE_NAME_CONVERTDATA/orcl,/u01/app/oracle/oradata/orcldg/onlinelog *.DB_FILE_NAME_CONVERTDATA/orcl,/u01/app/oracle/oradata/orcldg/datefile *.nls_languageAMERICAN *.nls_territoryAMERICA *.open_cursors300 *.parallel_execution_message_size8192 *.pga_aggregate_target1006m *.processes320 *.remote_login_passwordfileEXCLUSIVE *.sga_target3018m *.standby_file_managementAUTO *.db_recovery_file_dest/u01/app/oracle/fast_recovery_area *.db_recovery_file_dest_size5242880 *.enable_pluggable_databasetrue *.service_namesorcl,orcldg log_archive_dest_state_1ENABLE log_archive_dest_state_2ENABLE4.2.根据参数文件在备库创建目录su - oracle mkdir -p /u01/app/oracle/oradata/orcldg/onlinelog mkdir -p /u01/app/oracle/oradata/orcldg/datafile mkdir -p /u01/app/oracle/oradata/orcldg/ mkdir -p /u01/app/oracle/diag/rdbms/ mkdir -p /u01/app/oracle/audit mkdir -p /u01/app/oracle/fast_recovery_area二、主备库数据同步1、备库启动至unmount[oraclewzabak ]$ sqlplus / as sysdba SQL startup nomount; ORACLE instance started. Total System Global Area 3170891368 bytes Fixed Size 9168488 bytes Variable Size 637534208 bytes Database Buffers 2516582400 bytes Redo Buffers 7606272 bytes SQL select status from v$instance; STATUS ------------------------------------ STARTED2、主库使用RMAN进行在线auxiliary克隆2.1rman登录主库和备库主备库的数据库登录用户名和密码必须相同[oraclewza01:/home/oracle]$ rman target sys/dba_12345orcl auxiliary sys/dba_12345orcldg Recovery Manager: Release 19.0.0.0.0 - Production on Wed Apr 16 17:30:39 2025 Version 19.19.0.0.0 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. connected to target database: ORCL (DBID1719012227) connected to auxiliary database: ORCL (not mounted) RMAN2.2duplicate复制run { allocate channel c1 type disk; allocate channel c2 type disk; allocate channel c3 type disk; allocate channel c4 type disk; allocate channel c5 type disk; allocate channel c6 type disk; allocate AUXILIARY channel c7 type disk; allocate AUXILIARY channel c8 type disk; allocate AUXILIARY channel c9 type disk; allocate AUXILIARY channel c10 type disk; allocate AUXILIARY channel c11 type disk; allocate AUXILIARY channel c12 type disk; DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE DORECOVER NOFILENAMECHECK; release channel c1; release channel c2; release channel c3; release channel c4; release channel c5; release channel c6; release channel c7; release channel c8; release channel c9; release channel c10; release channel c11; release channel c12; }2.3复制成功此时备库应为mounted状态。以下为示例logStarting restore at 18-JUL-26 channel aux1: starting archived log restore to default destination channel aux1: using network backup set from service orcl channel aux1: restoring archived log archived log thread1 sequence96993 channel aux2: starting archived log restore to default destination channel aux2: using network backup set from service orcl channel aux2: restoring archived log archived log thread1 sequence96994 channel aux3: starting archived log restore to default destination channel aux3: using network backup set from service orcl channel aux3: restoring archived log archived log thread1 sequence96995 channel aux1: restore complete, elapsed time: 00:00:00 channel aux2: restore complete, elapsed time: 00:00:01 channel aux3: restore complete, elapsed time: 00:00:01 Finished restore at 18-JUL-26 Starting recover at 18-JUL-26 Starting recover at 18-JUL-26 starting media recovery archived log for thread 1 with sequence 96993 is already on disk as file /data/app/oracle/archivelog1_96993_1204799200.dbf archived log for thread 1 with sequence 96994 is already on disk as file /data/app/oracle/archivelog1_96994_1204799200.dbf archived log for thread 1 with sequence 96995 is already on disk as file /data/app/oracle/archivelog1_96995_1204799200.dbf archived log file name/data/app/oracle/archivelog1_96993_1204799200.dbf thread1 sequence96993 archived log for thread 1 with sequence 96995 is already on disk as file /data/app/oracle/archivelog1_96995_1204799200.dbf archived log file name/data/app/oracle/archivelog1_96993_1204799200.dbf thread1 sequence96993 archived log file name/data/app/oracle/archivelog1_96994_1204799200.dbf thread1 sequence96994 archived log file name/data/app/oracle/archivelog1_96995_1204799200.dbf thread1 sequence96995 media recovery complete, elapsed time: 00:00:02 Finished recover at 18-JUL-26 Deleted 1 objects deleted archived log archived log file name/data/app/oracle/archivelog1_96994_1204799200.dbf RECID3 STAMP1238945222 Deleted 1 objects Finished Duplicate Db at 18-JUL-26 released channel: c1 released channel: c2 released channel: c3 released channel: c4 released channel: aux1 released channel: aux2 released channel: aux3 released channel: aux43、备库启动至openalter database recover managed standby database using current logfile disconnect;该命令用于启动备用数据库的恢复管理进程让备用数据库开始接收并应用主数据库传输过来的重做日志Redo Log以此保持与主数据库的数据同步。同时disconnect 选项允许在启动恢复进程后当前的 SQL 会话与恢复进程断开连接这样你可以继续使用该会话执行其他操作而恢复进程会在后台持续运行SQL alter database open; Database altered. SQL select open_mode from v$database; OPEN_MODE -------------------- READ ONLY SQL alter database recover managed standby database using current logfile disconnect; Database altered. SQL select open_mode from v$database; OPEN_MODE -------------------- READ ONLY WITH APPLY SQL select status from v$instance; STATUS ------------ OPEN4、在备库确认物理备库搭建成功进程正常运行SQL select process,client_process,sequence#, THREAD# status from v$managed_standby; PROCESS CLIENT_P SEQUENCE# THREAD# STATUS --------- -------- ---------- ---------- ------------ ARCH ARCH 0 0 CONNECTED DGRD N/A 0 0 ALLOCATED DGRD N/A 0 0 ALLOCATED ARCH ARCH 0 0 CONNECTED ARCH ARCH 0 0 CONNECTED ARCH ARCH 0 0 CONNECTED RFS Archival 0 1 IDLE RFS LGWR 177 1 IDLE MRP0 N/A 170 2 WAIT_FOR_LOG RFS UNKNOWN 0 0 IDLE 10 rows selected. SQL select database_role,protection_mode,protection_level,open_mode from v$database; DATABASE_ROLE PROTECTION_MODE PROTECTION_LEVEL OPEN_MODE ---------------- -------------------- -------------------- -------------------- PHYSICAL STANDBY MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE READ ONLY WITH APPLY SQL SELECT sequence#, thread#, first_time FROM V$ARCHIVED_LOG ORDER BY sequence#; SEQUENCE# THREAD# FIRST_TIME ---------- ---------- ------------------- 167 2 2025-04-25 10:52:31 168 2 2025-04-25 10:59:08 169 2 2025-04-25 10:59:26 169 2 2025-04-25 10:59:26 175 1 2025-04-25 10:59:06 176 1 2025-04-25 10:59:26 6 rows selected. SQL select group#,thread#,sequence#,archived,status from v$standby_log; GROUP# THREAD# SEQUENCE# ARC STATUS ---------- ---------- ---------- --- ---------- 11 1 0 NO UNASSIGNED 12 1 0 NO UNASSIGNED 13 1 177 YES ACTIVE 14 2 0 YES UNASSIGNED 15 2 0 YES UNASSIGNED 16 2 0 YES UNASSIGNED 6 rows selected.三、主备库角色切换0.应用停止向数据库写入因为主备切换有段时间停止窗口1.在主库检查 Switchover 状态SELECT SWITCHOVER_STATUS FROM V$DATABASE; -- 预期返回 TO STANDBY 或 SESSIONS ACTIVE 才能继续 检查主库状态必须在主库执行 SELECT DATABASE_ROLE, OPEN_MODE FROM V$DATABASE; -- 预期PRIMARY READ WRITE 检查主库是否有活动会话建议切换前先踢掉应用连接 SELECT COUNT(*) FROM V$SESSION WHERE USERNAME IS NOT NULL; 在主、备库执行确认最后归档已应用 SELECT MAX(SEQUENCE#) FROM V$ARCHIVED_LOG WHERE APPLIEDYES; 在备库确认同步状态 SELECT PROCESS, STATUS, SEQUENCE# FROM V$MANAGED_STANDBY WHERE PROCESSMRP0; -- MRP0 状态应为 APPLYING_LOGSEQUENCE# 应与主库一致2.主库执行 Switchover 切换状态变为备库-- 在主库执行将主库转为备库角色 ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY WITH SESSION SHUTDOWN; -- 切换完成后主库会进入 MOUNT 状态 -- 然后关闭并启动到备库模式 SHUTDOWN IMMEDIATE; STARTUP MOUNT;3.在备库执行 Switchover 切换-- 在备库当前是 READ ONLY WITH APPLY执行 -- 先取消日志应用 ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; -- 切换为新主库 ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY WITH SESSION SHUTDOWN; -- 打开新主库 ALTER DATABASE OPEN;4.验证新主库状态-- 在新主库原备库上执行 SELECT DATABASE_ROLE, OPEN_MODE FROM V$DATABASE; DATABASE_ROLE OPEN_MODE ---------------- ------------ PRIMARY READ WRITE5.在新备库原主库启动日志应用如果这个新的备库准备废弃可以不做直接关机-- 在原主库现在是新备库上执行 ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;6.验证ADG同步-- 在新主库原备库上查询 SELECT THREAD#, SEQUENCE#, FIRST_TIME, LAST_TIME FROM V$ARCHIVED_LOG WHERE APPLIEDYES ORDER BY SEQUENCE# DESC FETCH FIRST 3 ROWS ONLY; -- 在新备库原主库上查询 SELECT PROCESS, STATUS, SEQUENCE# FROM V$MANAGED_STANDBY WHERE PROCESSMRP0;

相关新闻

能仿写歌曲的AI工具:8款AI作曲与旋律生成工具使用思路

能仿写歌曲的AI工具:8款AI作曲与旋律生成工具使用思路

能仿写歌曲的AI工具:8款AI作曲与旋律生成工具使用思路 没有乐理基础,作曲也可以从一小段旋律开始 很多人不是没有音乐想法,而是不知道怎样把脑海里的哼唱变成一段完整旋律。打开传统编曲软件后,音轨、和弦、节拍和音色又会一起出现…

2026/7/22 22:50:58 阅读更多 →
Transformer架构解析:从自注意力机制到实战应用

Transformer架构解析:从自注意力机制到实战应用

1. Transformer的诞生背景与核心价值2017年,Google Brain团队在论文《Attention Is All You Need》中首次提出Transformer架构,彻底改变了自然语言处理领域的游戏规则。当时主流的序列建模方法如RNN和LSTM存在一个根本性缺陷:它们必须按顺序处…

2026/7/22 22:53:36 阅读更多 →
YOLO26全平台部署:实时视觉AI的跨平台实践

YOLO26全平台部署:实时视觉AI的跨平台实践

1. YOLO26全平台部署的核心价值 YOLO26作为新一代实时视觉AI框架,其全平台部署能力正在重塑工业级计算机视觉应用的开发范式。在传统工作流中,从训练完成的模型到实际生产部署往往需要经历复杂的格式转换和性能调优过程,不同硬件平台间的适配…

2026/7/21 20:17:31 阅读更多 →

最新新闻

CANNBot 实操体验:基于Ascend C的矩阵乘法算子开发

CANNBot 实操体验:基于Ascend C的矩阵乘法算子开发

目录 引言 测评结论 ✅ 核心优势 ⚠️ 待优化点 📊 效率提升效果 CANNBot 是什么? 核心能力一览 本次实操案例 第一部分:环境搭建 1.1 创建Notebook实例 1.2 安装 Node.js 18 1.3 安装 OpenCode 1.4 安装 CANNBot-Skills 第二部分&#xff1a…

2026/7/23 22:55:37 阅读更多 →
AI辅助开发效能跃迁路径(2024企业级落地白皮书首发)

AI辅助开发效能跃迁路径(2024企业级落地白皮书首发)

更多请点击: https://codechina.net 第一章:AI辅助开发效能跃迁路径(2024企业级落地白皮书首发) 企业正从“局部试点AI工具”迈向“系统性重构研发范式”的关键拐点。2024年,头部科技公司实测数据显示:在C…

2026/7/23 22:55:37 阅读更多 →
【RT-DETR涨点改进】CVPR 2026 | 卷积创新改进篇 | 轻量化改进!引入YOLO-ULM中轻量D3C2f轻量化模块,含二次创新模块,5种创新改进点,助力目标检测任务,高效涨点

【RT-DETR涨点改进】CVPR 2026 | 卷积创新改进篇 | 轻量化改进!引入YOLO-ULM中轻量D3C2f轻量化模块,含二次创新模块,5种创新改进点,助力目标检测任务,高效涨点

一、本文介绍 🔥本文给大家介绍使用 YOLO-ULM中轻量D3C2f模块 改进RT-DETR网络模型,D3C2f 通过特征切分与聚合结构保留 C2f 的高效梯度流动和特征复用能力,同时在 D3 Block 中级联 33 深度可分离卷积、77 大核深度卷积和 33 深度可分离卷积,既扩大模型感受野、增强高层语…

2026/7/23 22:55:37 阅读更多 →
【RT-DETR涨点改进】TGRS 2026 | 特征融合改进篇 |引入CDSF跨域协同融合模块,增强特征互补性与语义一致性,助力高光谱目标检测、遥感目标检测、多模态融合目标检测任务,高效涨点

【RT-DETR涨点改进】TGRS 2026 | 特征融合改进篇 |引入CDSF跨域协同融合模块,增强特征互补性与语义一致性,助力高光谱目标检测、遥感目标检测、多模态融合目标检测任务,高效涨点

一、本文介绍 🔥本文给大家介绍使用 CDSF跨域协同融合模块 改进 RT-DETR 网络模型,主要作用是对不同层级、不同尺度或不同模态的特征进行自适应对齐与互补融合,避免传统拼接或直接相加造成的语义错位和信息冗余。该模块先利用多尺度深度可分离卷积提取局部细节与大范围上下…

2026/7/23 22:55:37 阅读更多 →
MTK安全启动分析9:MTK LK 编译Makefile完整解析

MTK安全启动分析9:MTK LK 编译Makefile完整解析

MTK LK 编译Makefile完整解析整体概述MTK平台LittleKernel(BL33二级引导器)是由编译Makfile脚本build_lk.mk来编译,核心特性:多LK编译模式(LK_MODE):一套LK源码编译出不同功能固件(普…

2026/7/23 22:54:37 阅读更多 →
沁园春·智能潮

沁园春·智能潮

沁园春智能潮浦江七月,展台十万,机杼争朝。 望徐汇滩头,机器成阵; 张江云上,算力奔涛。 月之暗面,一朝破壁,开源权重撼寰霄。 消息出,惊华尔街夜,股海生潮。莫道东方难超…

2026/7/23 22:54:37 阅读更多 →

日新闻

从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表)

从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表)

更多请点击: https://intelliparadigm.com 第一章:从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表) 当AI副业主理人不再仅满足于单次服务交付,而是主动构建可复用、可裂变、可…

2026/7/23 0:00:25 阅读更多 →
AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析

AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析

更多请点击: https://codechina.net 第一章:AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析 在对2,346篇跨行业AI生成文案的A/B测试数据进行聚类分析后,我们发现&#xff1…

2026/7/23 0:01:26 阅读更多 →
Chitchatter完整指南:免费开源的终极点对点安全聊天工具

Chitchatter完整指南:免费开源的终极点对点安全聊天工具

Chitchatter完整指南:免费开源的终极点对点安全聊天工具 【免费下载链接】chitchatter Secure peer-to-peer chat that is serverless, decentralized, and ephemeral 项目地址: https://gitcode.com/gh_mirrors/ch/chitchatter Chitchatter是一款革命性的安…

2026/7/23 0:01:26 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/22 8:58:19 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/22 19:43:43 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/23 17:49:47 阅读更多 →

月新闻