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

Oracle Dataguard(主库为 Oracle rac 集群)配置教程(03)—— 创建 dataguard 数据库之前的准备工作

Oracle Dataguard(主库为 Oracle rac 集群)配置教程(03)—— 创建 dataguard 数据库之前的准备工作

在这里插入图片描述

/
本专栏详细讲解 Oracle Dataguard(Oracle 版本为11g,主库为双节点 Oracle rac 集群)的配置过程。主要内容包括:
(1)dataguard 服务器 Oracle 软件的安装。
(2)Oracle RAC 主库与 Dataguard 服务器的配置。
(3)主从同步测试。
(4)主备库切换。
/

目录

  • Oracle Dataguard(主库为 Oracle rac 集群)配置教程(03)—— 创建 dataguard 数据库之前的准备工作
    • 一、从 Oracle RAC 主库复制所需的文件到 Dataguard 服务器
        • 1、切换到 Oracle RAC 主库的节点1,复制文件到 Dataguard 服务器
        • 2、在 dataguard 服务器查看文件
    • 二、在 dataguard 服务器创建口令文件
    • 三、修改物理备库的初始化参数文件
        • 1、把备份的初始化参数文件复制到 \$ORACLE_HOME/dbs 目录下
        • 2、查看参数文件的内容
        • 3、修改参数文件,修改之后的内容如下
        • 4、创建参数文件所需要的目录
    • 四、配置 Oracle RAC 主库的两个节点以及 dataguard 服务器的 tnsnames.ora 文件
        • 1、配置 Oracle RAC 集群节点1的 tnsnames.ora 文件
        • 2、配置 Oracle RAC 集群节点2的 tnsnames.ora 文件
        • 3、配置 dataguard 服务器的 tnsnames.ora 文件
        • 4、连接测试

一、从 Oracle RAC 主库复制所需的文件到 Dataguard 服务器

把 Oracle RAC 主库的备份文件、备库控制文件、备库参数文件复制至dataguard 服务器。

1、切换到 Oracle RAC 主库的节点1,复制文件到 Dataguard 服务器

# 查看文件
[oracle@rac1 rman_backup]$ ll
total 1097744
-rw-r----- 1 oracle asmadmin   2332160 Feb 10 16:30 ARC_0a1k5bh5_1_1.bak
-rw-r----- 1 oracle asmadmin   1490432 Feb 10 16:30 ARC_0b1k5bh6_1_1.bak
-rw-r----- 1 oracle asmadmin 665313280 Feb 10 16:27 Full_051k5ba1_1_1.bak
-rw-r----- 1 oracle asmadmin 409878528 Feb 10 16:28 Full_061k5ba2_1_1.bak
-rw-r----- 1 oracle asmadmin   6725632 Feb 10 16:29 Full_071k5ba2_1_1.bak
-rw-r----- 1 oracle asmadmin  18546688 Feb 10 16:29 Full_081k5bab_1_1.bak
-rw-r----- 1 oracle asmadmin     98304 Feb 10 16:29 Full_091k5beb_1_1.bak
-rw-r--r-- 1 oracle asmadmin      1392 Feb 10 16:40 inithisdg.ora
drwx------ 2 oracle oinstall     16384 Feb 10 16:02 lost+found
-rw-r----- 1 oracle asmadmin  18546688 Feb 10 16:36 standby_0c1k5bse_1_1.ctl[oracle@rac1 rman_backup]$ scp ARC* 192.168.1.151:/rman_backup/
The authenticity of host '192.168.1.151 (192.168.1.151)' can't be established.
ECDSA key fingerprint is 99:44:64:04:3b:1b:0b:94:78:cf:ef:c8:db:42:ca:0c.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.151' (ECDSA) to the list of known hosts.
oracle@192.168.1.151's password: 
ARC_0a1k5bh5_1_1.bak                                                                          100% 2278KB   2.2MB/s   00:00    
ARC_0b1k5bh6_1_1.bak                                                                          100% 1456KB   1.4MB/s   00:00    
[oracle@rac1 rman_backup]$ 
[oracle@rac1 rman_backup]$ scp Full* 192.168.1.151:/rman_backup/
oracle@192.168.1.151's password: 
Full_051k5ba1_1_1.bak                                                                         100%  634MB  28.8MB/s   00:22    
Full_061k5ba2_1_1.bak                                                                         100%  391MB  35.5MB/s   00:11    
Full_071k5ba2_1_1.bak                                                                         100% 6568KB   6.4MB/s   00:00    
Full_081k5bab_1_1.bak                                                                         100%   18MB  17.7MB/s   00:00    
Full_091k5beb_1_1.bak                                                                         100%   96KB  96.0KB/s   00:01    
[oracle@rac1 rman_backup]$ 
[oracle@rac1 rman_backup]$ scp init* 192.168.1.151:/rman_backup/
oracle@192.168.1.151's password: 
inithisdg.ora                                                                                 100% 1392     1.4KB/s   00:00    
[oracle@rac1 rman_backup]$ scp stand* 192.168.1.151:/rman_backup/
oracle@192.168.1.151's password: 
standby_0c1k5bse_1_1.ctl                                                                      100%   18MB  17.7MB/s   00:01 

2、在 dataguard 服务器查看文件

[root@hisdg ~]# cd /rman_backup/
[root@hisdg rman_backup]# ll
总用量 1097744
-rw-r-----. 1 oracle oinstall   2332160 210 16:56 ARC_0a1k5bh5_1_1.bak
-rw-r-----. 1 oracle oinstall   1490432 210 16:56 ARC_0b1k5bh6_1_1.bak
-rw-r-----. 1 oracle oinstall 665313280 210 16:57 Full_051k5ba1_1_1.bak
-rw-r-----. 1 oracle oinstall 409878528 210 16:57 Full_061k5ba2_1_1.bak
-rw-r-----. 1 oracle oinstall   6725632 210 16:57 Full_071k5ba2_1_1.bak
-rw-r-----. 1 oracle oinstall  18546688 210 16:57 Full_081k5bab_1_1.bak
-rw-r-----. 1 oracle oinstall     98304 210 16:57 Full_091k5beb_1_1.bak
-rw-r--r--. 1 oracle oinstall      1392 210 16:57 inithisdg.ora
drwx------. 2 oracle oinstall     16384 210 16:12 lost+found
-rw-r-----. 1 oracle oinstall  18546688 210 16:57 standby_0c1k5bse_1_1.ctl

二、在 dataguard 服务器创建口令文件

在 Oracle RAC 主库节点1执行以下操作:

[oracle@rac1 rman_backup]$ cd $ORACLE_HOME/dbs[oracle@rac1 dbs]$ pwd
/u01/app/oracle/product/11.2.0/db_1/dbs[oracle@rac1 dbs]$ ll
total 18084
-rw-rw---- 1 oracle asmadmin     1544 Feb 10 08:27 hc_false1.dat
-rw-rw---- 1 oracle asmadmin     1544 Feb 10 16:04 hc_hisdb1.dat
-rw-r----- 1 oracle oinstall       37 Feb 10 08:59 inithisdb1.ora
-rw-r--r-- 1 oracle oinstall     2851 May 15  2009 init.ora
-rw-r----- 1 oracle oinstall     1536 Feb 10 16:42 orapwhisdb1
-rw-r----- 1 oracle asmadmin 18497536 Feb 10 16:36 snapcf_hisdb1.f[oracle@rac1 dbs]$ scp orapwhisdb1 192.168.1.151:/u01/app/oracle/product/11.2.0/db_1/dbs/orapwhisdg
oracle@192.168.1.151's password: 
orapwhisdb1                                                                                   100% 1536     1.5KB/s   00:00

在 dataguard 服务器上查看口令文件信息:

[oracle@hisdg dbs]$ pwd
/u01/app/oracle/product/11.2.0/db_1/dbs
[oracle@hisdg dbs]$ ll
总用量 8
-rw-r--r--. 1 oracle oinstall 2851 515 2009 init.ora
-rw-r-----. 1 oracle oinstall 1536 210 17:05 orapwhisdg

三、修改物理备库的初始化参数文件

1、把备份的初始化参数文件复制到 $ORACLE_HOME/dbs 目录下

[oracle@hisdg dbs]$ pwd
/u01/app/oracle/product/11.2.0/db_1/dbs
[oracle@hisdg dbs]$ ll
总用量 8
-rw-r--r--. 1 oracle oinstall 2851 515 2009 init.ora
-rw-r-----. 1 oracle oinstall 1536 210 17:05 orapwhisdg
[oracle@hisdg dbs]$ cp /rman_backup/inithisdg.ora ./
[oracle@hisdg dbs]$ ll
总用量 12
-rw-r--r--. 1 oracle oinstall 1392 211 00:39 inithisdg.ora
-rw-r--r--. 1 oracle oinstall 2851 515 2009 init.ora
-rw-r-----. 1 oracle oinstall 1536 210 17:05 orapwhisdg

2、查看参数文件的内容

[oracle@hisdg dbs]$ cat inithisdg.ora 
hisdb1.__db_cache_size=385875968
hisdb2.__db_cache_size=385875968
hisdb1.__java_pool_size=4194304
hisdb2.__java_pool_size=4194304
hisdb1.__large_pool_size=8388608
hisdb2.__large_pool_size=8388608
hisdb1.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment
hisdb1.__pga_aggregate_target=209715200
hisdb2.__pga_aggregate_target=209715200
hisdb1.__sga_target=629145600
hisdb2.__sga_target=629145600
hisdb1.__shared_io_pool_size=0
hisdb2.__shared_io_pool_size=0
hisdb1.__shared_pool_size=222298112
hisdb2.__shared_pool_size=222298112
hisdb1.__streams_pool_size=0
hisdb2.__streams_pool_size=0
*.audit_file_dest='/u01/app/oracle/admin/hisdb/adump'
*.audit_trail='db'
*.cluster_database=true
*.compatible='11.2.0.4.0'
*.control_files='+DATA/hisdb/controlfile/current.265.1128415467','+BAK/hisdb/controlfile/current.256.1128415469'
*.db_block_size=8192
*.db_create_file_dest='+DATA'
*.db_domain=''
*.db_name='hisdb'
*.db_recovery_file_dest='+BAK'
*.db_recovery_file_dest_size=4621074432
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=hisdbXDB)'
hisdb1.instance_number=1
hisdb2.instance_number=2
*.open_cursors=300
*.pga_aggregate_target=209715200
*.processes=150
*.remote_listener='rac-scan:1521'
*.remote_login_passwordfile='exclusive'

3、修改参数文件,修改之后的内容如下

*.audit_file_dest='/u01/app/oracle/admin/hisdg/adump'
*.audit_trail='db'
*.cluster_database=false
*.compatible='11.2.0.4.0'
*.control_files='/u01/app/oradata/control01.ctl'
*.db_block_size=8192
*.db_create_file_dest='/u01/app/oradata/'
*.db_domain=''
*.db_name='hisdb'
*.db_unique_name='hisdg'
*.db_file_name_convert=('+DATA/hisdb/datafile/','/u01/app/oradata/datafile/')
*.db_file_name_convert=('+DATA/hisdb/tempfile/','/u01/app/oradata/tempfile/')
*.log_file_name_convert=('+DATA/hisdb/onlinelog/','/u01/app/oradata/onlinelog/')
*.log_file_name_convert=('+BAK/hisdb/onlinelog/','/u01/app/oraInventory/onlinelog/')
*.db_recovery_file_dest='/u01/app/oraInventory/'
*.db_recovery_file_dest_size=4621074432
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=hisdgXDB)'
*.log_archive_format='ARC_%t_%S_%r.arc'
*.open_cursors=300
*.pga_aggregate_target=209715200
*.processes=150
*.remote_login_passwordfile='exclusive'
*.sga_target=629145600
*.thread=1
*.undo_tablespace='UNDOTBS1'

4、创建参数文件所需要的目录

mkdir -p /u01/app/oracle/admin/hisdg/adump
mkdir -p /u01/app/oradata/datafile
mkdir -p /u01/app/oradata/tempfile
mkdir -p /u01/app/oradata/onlinelog
mkdir -p /u01/app/oraInventory/onlinelog[oracle@hisdg dbs]$ mkdir -p /u01/app/oracle/admin/hisdg/adump
[oracle@hisdg dbs]$ mkdir -p /u01/app/oradata/datafile
[oracle@hisdg dbs]$ mkdir -p /u01/app/oradata/tempfile
[oracle@hisdg dbs]$ mkdir -p /u01/app/oradata/onlinelog
[oracle@hisdg dbs]$ mkdir -p /u01/app/oraInventory/onlinelog

四、配置 Oracle RAC 主库的两个节点以及 dataguard 服务器的 tnsnames.ora 文件

1、配置 Oracle RAC 集群节点1的 tnsnames.ora 文件

[oracle@rac1 admin]$ pwd
/u01/app/oracle/product/11.2.0/db_1/network/admin
[oracle@rac1 admin]$ ll
total 8
drwxr-xr-x 2 oracle oinstall  64 Feb 10 00:45 samples
-rw-r--r-- 1 oracle oinstall 381 Dec 17  2012 shrept.lst
-rw-r----- 1 oracle oinstall 325 Feb 10 08:54 tnsnames.ora[oracle@rac1 admin]$ vi tnsnames.ora # tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.HISDB =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = rac-scan)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = hisdb)))HISDB1 =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.101)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = hisdb)(INSTANCE_NAME = hisdb1)))
HISDB2 =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = hisdb)(INSTANCE_NAME = hisdb2)))HISTDBDG =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.151)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = histdg)))

2、配置 Oracle RAC 集群节点2的 tnsnames.ora 文件

[oracle@rac2 admin]$ pwd
/u01/app/oracle/product/11.2.0/db_1/network/admin
[oracle@rac2 admin]$ ll
total 8
drwxr-xr-x 2 oracle oinstall  64 Feb 10 01:04 samples
-rw-r--r-- 1 oracle oinstall 381 Feb 10 01:04 shrept.lst
-rw-r----- 1 oracle oinstall 325 Feb 10 08:54 tnsnames.ora[oracle@rac2 admin]$ vi tnsnames.ora # tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.HISDB =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = rac-scan)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = hisdb)))HISDB1 =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.101)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = hisdb)(INSTANCE_NAME = hisdb1)))
HISDB2 =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = hisdb)(INSTANCE_NAME = hisdb2)))HISTDBDG =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.151)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = histdg)))

3、配置 dataguard 服务器的 tnsnames.ora 文件

[oracle@hisdg admin]$ pwd
/u01/app/oracle/product/11.2.0/db_1/network/admin
[oracle@hisdg admin]$ ll
总用量 12
-rw-r--r--. 1 oracle oinstall 366 210 14:48 listener.ora
drwxr-xr-x. 2 oracle oinstall  64 210 14:22 samples
-rw-r--r--. 1 oracle oinstall 381 1217 2012 shrept.lst
-rw-r--r--. 1 oracle oinstall 219 210 14:48 sqlnet.ora[oracle@hisdg admin]$ vi tnsnames.ora HISDB =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.201)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = hisdb)))HISDB1 =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.101)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = hisdb)(INSTANCE_NAME = hisdb1)))HISDB2 =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = hisdb)(INSTANCE_NAME = hisdb2)))HISTDBDG =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.151)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = histdg)))

4、连接测试

-- Oracle RAC 主库的节点1SQL> conn sys/oracle@hisdb as sysdba
Connected.
SQL> conn sys/oracle@hisdb1 as sysdba
Connected.
SQL> conn sys/oracle@hisdb2 as sysdba
Connected.
-- dataguard 没有数据库,因此无法连接
SQL> conn sys/oracle@hisdg as sysdba
ERROR:
ORA-12154: TNS:could not resolve the connect identifier specifiedWarning: You are no longer connected to ORACLE.-- Oracle RAC 主库的节点2
SQL> conn sys/oracle@hisdb as sysdba
Connected.
SQL> conn sys/oracle@hisdb1 as sysdba
Connected.
SQL> conn sys/oracle@hisdb2 as sysdba
Connected.
-- dataguard 没有数据库,因此无法连接
SQL> conn sys/oracle@hisdg as sysdba
ERROR:
ORA-12154: TNS:could not resolve the connect identifier specifiedWarning: You are no longer connected to ORACLE.-- dataguard 服务器
SQL> conn sys/oracle@hisdb as sysdba
Connected.
SQL> conn sys/oracle@hisdb1 as sysdba
Connected.
SQL> conn sys/oracle@hisdb2 as sysdba
Connected.
-- dataguard 没有数据库,因此无法连接
SQL> conn sys/oracle@hisdg as sysdba
ERROR:
ORA-12541: TNS:no listenerWarning: You are no longer connected to ORACLE.

相关文章:

Oracle Dataguard(主库为 Oracle rac 集群)配置教程(03)—— 创建 dataguard 数据库之前的准备工作

Oracle Dataguard(主库为 Oracle rac 集群)配置教程(03)—— 创建 dataguard 数据库之前的准备工作 / 本专栏详细讲解 Oracle Dataguard(Oracle 版本为11g,主库为双节点 Oracle rac 集群)的配置…...

零代码做分析报表的bi软件才是好软件

有些数据分析软件对IT的依赖比较重,在制作报表的过程中需要用到SQL,这就导致了IT人员懂技术不懂业务,业务人员懂业务不懂技术,数据分析做来做去总是差点什么的局面。要是遇到了IT部门相对较弱的情况,还会加重IT负担&am…...

linux ALSA 驱动架构

一、kernel Audio驱动架构主流有两大类,一类是SOC Machine架构,另一类是simple-card架构。 MTK、QCom主要采用machine架构,rockchip采用simple card架构。 二、Machine架构驱动介绍 machine 架构每家平台实现并不完全相同,mach…...

JDK 8 JVM内存结构详解

前言 本文所介绍的是 JDK 1.8 版本,其他版本的 JDK 在这里并不一定正确;内容主要摘自周志明的《深入理解Java虚拟机》一书的关键点,并根据自身的理解进行记录。感兴趣的同学可以去阅读原著。 JVM 的内存结构,主要包括以下 5 个区…...

黑马程序员 Linux 教程

目录Linux 简介不同应用领域主流操作系统Linux 系统历史Linux 系统版本Linux 安装安装方式网卡设置安装 SSH 连接工具使用 FinalShell 连接到 LinuxLinux 和 Windows 目录结构对比Linux 目录介绍Linux 常用命令Linux 命令初体验Linux 命令使用技巧Linux 命令格式文件目录操作命…...

文件操作 -- IO

文章目录文件操作 -- IO文件 :文件路径 :文件的类型java 中的文件操作文件内容的相关操作字节流的读和写操作字符流的读和写操作代码案例代码案例一 :代码案例二 :代码案例三 :文件操作 – IO 文件 : 文件相比大家都不陌生把 , 打…...

FPGA解析串口协议帧3.0版本,增加了错误重发功能,提供仿真文件以及源码

FPGA解析串口协议帧已经发布2个版本了,分别如下: 版本1:点击查看版本1 版本1详细介绍了串口协议帧的帧组成和设计思想,但设计粗糙,注释不详细; 版本1:点击查看版本2 版本2优化了代码&#xff0c…...

365天深度学习训练营 第P6周:好莱坞明星识别

🍨 本文为🔗365天深度学习训练营 内部限免文章(版权归 K同学啊 所有)🍦 参考文章地址: 🔗第P6周:好莱坞明星识别 | 365天深度学习训练营🍖 作者:K同学啊 | 接…...

一文读懂 Zebec Chain 的“先行网络” Nautilus 链

最近,Zebec 上线了 DAO 治理系统后,上线并通过了关于 Nautilus 链的提案,这也是DAO系统上线后通过的首个提案。 Nautilus 链可以被看作是Zebec Chain上线前的“先行”链,并且是目前行业内为数不多的以“Layer3”作为特点的模块化通…...

FuzzyMathematicalModel模糊数学模型-2-多目标模糊综合评价案例分享

主函数:clc, clear% 输入模糊矩阵的原型x [4700 6700 5900 8800 76005000 5500 5300 6800 600004.0 06.1 05.5 07.0 06.80030 0050 0040 0200 01601500 0700 1000 0050 0100];r muti_objective_fuzzy_analysis(x);% 各指标在决策中占的权重(专家系统,自…...

单链表--C语言版(从0开始,超详细解析,小白一看就会)

目录 一、前言 🍎 为什么要学习链表 💦顺序表有缺陷 💦 优化方案:链表 二、链表详解 🍐链表的概念 🍉链表的结构组成:节点 🍓链表节点的连接(逻辑结构与物理结构的区…...

cv2-特征点匹配(bf、FLANN)

cv2-特征点匹配(bf、KNN、FLANN) 文章目录cv2-特征点匹配(bf、KNN、FLANN)1. 暴力匹配法(bf)1.1 bf.match()1.2 bf.knnMatch()3. FLANN匹配法4. 总结1. 暴力匹配法(bf) &#xff08…...

基于matlab多功能相控阵雷达资源管理的服务质量优化

一、前言此示例说明如何为基于服务质量 (QoS) 优化的多功能相控阵雷达 (MPAR) 监控设置资源管理方案。它首先定义必须同时调查的多个搜索扇区的参数。然后,它介绍了累积检测范围作为搜索质量的度量,并展示了…...

立创eda专业版学习笔记(6)(pcb板移动节点)

先要看一个设置方面的东西: 进入设置-pcb-通用 我鼠标放到竖着的线上面,第一次点左键是这样选中的: 再点一次左键是这样选中的: 这个时候,把鼠标放到转角的地方,点右键,就会出现对于节点的选项…...

Java面试——MyBatis相关知识

目录 1.什么是MyBatis 2.MyBatis优缺点 3.MyBatis工作原理 4.MyBatis缓存模式 5.MyBatis代码相关问题 6.MyBatis和hibernate区别 1.什么是MyBatis MyBatis是一个半ORM持久层框架(对象关系映射),基于JDBC进行封装,使得开发者…...

Cortex-M0编程入门

目录1.嵌入式系统编程入门微控制器是如何启动的嵌入式程序设计2.输入和输出3.开发流程4.C编程和汇编编程5.什么是程序映像6.C编程:数据类型7.用C语言操作外设8.Cortex微控制器软件接口标准(CMSIS)简介标准化内容组织结构使用方法优势1.嵌入式…...

字符串函数能有什么坏心思?

🚀write in front🚀 📝个人主页:认真写博客的夏目浅石. 🎁欢迎各位→点赞👍 收藏⭐️ 留言📝 📣系列专栏:夏目的C语言宝藏 💬总结:希望你看完之…...

Vue3 组件之间的通信

组件之间的通信 经过前面几章的阅读,相信开发者已经可以搭建一个基础的 Vue 3 项目了! 但实际业务开发过程中,还会遇到一些组件之间的通信问题,父子组件通信、兄弟组件通信、爷孙组件通信,还有一些全局通信的场景。 …...

多路查找树

1.二叉树与 B 树 1.1二叉树的问题分析 二叉树的操作效率较高,但是也存在问题, 请看下面的二叉树 二叉树需要加载到内存的,如果二叉树的节点少,没有什么问题,但是如果二叉树的节点很多(比如 1 亿), 就 存在如下问题:问…...

Mybatis——注入执行sql查询、更新、新增以及建表语句

文章目录前言案例dao和mapper编写XXXmapper.xml编写编写业务层代码,进行注入调用额外扩展--创建表语句前言 在平时的项目开发中,mybatis应用非常广泛,但一般都是直接CRUD类型sql的执行。 本片博客主要说明一个另类的操作,注入sq…...

练习(含atoi的模拟实现,自定义类型等练习)

一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...

在四层代理中还原真实客户端ngx_stream_realip_module

一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...

Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器

第一章 引言:语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域,文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量,支撑着搜索引擎、推荐系统、…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...

【从零开始学习JVM | 第四篇】类加载器和双亲委派机制(高频面试题)

前言: 双亲委派机制对于面试这块来说非常重要,在实际开发中也是经常遇见需要打破双亲委派的需求,今天我们一起来探索一下什么是双亲委派机制,在此之前我们先介绍一下类的加载器。 目录 ​编辑 前言: 类加载器 1. …...

MySQL:分区的基本使用

目录 一、什么是分区二、有什么作用三、分类四、创建分区五、删除分区 一、什么是分区 MySQL 分区(Partitioning)是一种将单张表的数据逻辑上拆分成多个物理部分的技术。这些物理部分(分区)可以独立存储、管理和优化,…...

jdbc查询mysql数据库时,出现id顺序错误的情况

我在repository中的查询语句如下所示&#xff0c;即传入一个List<intager>的数据&#xff0c;返回这些id的问题列表。但是由于数据库查询时ID列表的顺序与预期不一致&#xff0c;会导致返回的id是从小到大排列的&#xff0c;但我不希望这样。 Query("SELECT NEW com…...

Matlab实现任意伪彩色图像可视化显示

Matlab实现任意伪彩色图像可视化显示 1、灰度原始图像2、RGB彩色原始图像 在科研研究中&#xff0c;如何展示好看的实验结果图像非常重要&#xff01;&#xff01;&#xff01; 1、灰度原始图像 灰度图像每个像素点只有一个数值&#xff0c;代表该点的​​亮度&#xff08;或…...

【若依】框架项目部署笔记

参考【SpringBoot】【Vue】项目部署_no main manifest attribute, in springboot-0.0.1-sn-CSDN博客 多一个redis安装 准备工作&#xff1a; 压缩包下载&#xff1a;http://download.redis.io/releases 1. 上传压缩包&#xff0c;并进入压缩包所在目录&#xff0c;解压到目标…...

高抗扰度汽车光耦合器的特性

晶台光电推出的125℃光耦合器系列产品&#xff08;包括KL357NU、KL3H7U和KL817U&#xff09;&#xff0c;专为高温环境下的汽车应用设计&#xff0c;具备以下核心优势和技术特点&#xff1a; 一、技术特性分析 高温稳定性 采用先进的LED技术和优化的IC设计&#xff0c;确保在…...