最全关于 Oracle 存储双活配置和实战,实战SpringCloud通用请求字段拦截处理

面试资料整理汇总

成功从小公司跳槽进蚂蚁定级P7,只因刷了七遍这些面试真题

成功从小公司跳槽进蚂蚁定级P7,只因刷了七遍这些面试真题

这些面试题是我朋友进阿里前狂刷七遍以上的面试资料,由于面试文档很多,内容更多,没有办法一一为大家展示出来,所以只好为大家节选出来了一部分供大家参考。

面试的本质不是考试,而是告诉面试官你会做什么,所以,这些面试资料中提到的技术也是要学会的,不然稍微改动一下你就凉凉了

在这里祝大家能够拿到心仪的offer!

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

FAILGROUP bb DISK ‘/dev/asm-bbdata1’

ATTRIBUTE ‘au_size’=‘1M’,

‘compatible.asm’ = ‘11.2’,

‘compatible.rdbms’ = ‘11.2’,

‘compatible.advm’ = ‘11.2’;

如果上线后有添加磁盘的需求,Data 磁盘组添加磁盘命令如下:

alter diskgroup DATA add

FAILGROUP aa disk ‘/dev/asm-aadata2’

FAILGROUP bb disk ‘/dev/asm-bbdata2’

rebalance power 111;

双活的 ocr 磁盘组创建好之后需要将 OCR 和 votedisk 设备迁移至 OCR 磁盘中,命令如下:

$ORACLE_HOME/bin/ocrconfig -add +OCR

$ORACLE_HOME/bin/ocrconfig -delete +TMPOCR

$ORACLE_HOME/bin/crsctl replace votedisk +OCR

$ORACLE_HOME/bin/crsctl query css votedisk

$ORACLE_HOME/bin/ocrcheck

将 ASM 实例的参数文件迁移到 asmspfile 至 OCR 磁盘组

sqlplus / as sysasm

SQL> create pfile=‘/tmp/pfile.ora’ from spfile;

SQL> create spfile=‘+OCR’ from pfile=‘/tmp/pfile.ora’;

ASM 实例的参数需要做如下设置(优先读本地磁盘组):

alter system set asm_preferred_read_failure_groups=‘DATA.aa’  sid=‘+ASM1’ SCOPE=SPFILE;

alter system set  asm_preferred_read_failure_groups=‘DATA.bb’  sid=‘+ASM2’ SCOPE=SPFILE;

3Oracle 存储双活性能测试

Oracle 双活存储安装完毕之后需要重点做读写性能速度测试,在这里我们通过主机层的软件和数据库及的写入速度测试:

① 主机层测试

这里我们采用 Orion 软件分别在2个 RAC 节点上对两块异地测试盘做读写速度测试:(同样块大小,100%写)

/home/oracle/orion-run advanced -testname yt -num_disks 1 -size_small 64 -size_large 64 -typerand -write 100 -duration 20

测试结果如下:

[oracle@ytaeplogdb1 test]$ cat  yt_20171107_0255_trace.txt|grep bw

ran (small): my    1 oth   0 iops 2490 size 64 K  lat   0.40 ms bw = 155.64 MBps dur  19.91 s  WRITE

ran (small): my    2 oth   0 iops 4489 size 64 K  lat   0.45 ms bw = 280.58 MBps dur  20.00 s  WRITE

ran (small): my    3 oth   0 iops 5699 size 64 K  lat   0.53 ms bw = 356.19 MBps dur  20.00 s  WRITE

ran (small): my    4 oth   0 iops 4927 size 64 K  lat   0.81 ms bw = 308.00 MBps dur  20.00 s  WRITE

ran (small): my    5 oth   0 iops 5099 size 64 K  lat   0.98 ms bw = 318.70 MBps dur  19.99 s  WRITE

然后再对比2个 RAC 节点分别测试2块盘的写速度

Orion 测速写

AA 磁盘组

BB 磁盘组

Rac1

170M/秒

84 M/秒

Rac2

88 M/秒

169M/秒

测试结果描述:因为 RAC1节点和 aa 的存储在一个本地机房,RAC2 节点和 bb 存储在一个机房,所以 RAC1 节点写 aa 存储的速度和 RAC2 节点写 bb 存储的速度都接近理想值 。但是 RAC1 存储写 bb 存储和 RAC2 存储写 aa 存储需要跨两个机房之间定的光纤和传输网络,实际速度根据两个机房的距离,存储光纤的信号传输速率,进而影响 Orin 写入速率,通过上表我们可以看出跨光纤距离为理想值的50%左右,而且两端的写入速度比较对称(从 RAC 写入到 bb 和从 RAC2 写入到 aa 的速度)。

② 数据库层测试

数据库层的测试主要是在2个 RAC 节点对两个异地机房的磁盘模拟插入数据测试,详细测试方案如下:

创建2个磁盘组,分别为两个异地机房的磁盘

CREATE DISKGROUP AA external REDUNDANCY DISK  ‘/dev/asm-aatest’

ATTRIBUTE ‘au_size’=‘1M’, ‘compatible.asm’ =  ‘11.2.0.4.0’,

‘compatible.rdbms’ = ‘11.2’,  ‘compatible.advm’ = ‘11.2’;

CREATE DISKGROUP BB external REDUNDANCY DISK  ‘/dev/asm-bbtest’

ATTRIBUTE ‘au_size’=‘1M’, ‘compatible.asm’ =  ‘11.2.0.4.0’,

‘compatible.rdbms’ = ‘11.2’,  ‘compatible.advm’ = ‘11.2’;

创建2个表空间,datafile 分别为两个机房的磁盘组

Create tablespace aa datafile  ’ +AA’ size 30g;

Create tablespace bb datafile  ’ +BB’ size 30g;

模拟创建一个 10G 的表,分别再 RAC 的两个节点上写两个磁盘组,并测试速度(因为 Redo 在 Data 磁盘组上,data 磁盘组跨两个异地存储节点,这里我们测试需要绕过 Redo,直接写在对应磁盘组上,这里我们用 create table as 测试写入速度,(绕过 Redo 直接测试写到某个磁盘)

Rac1 节点执行:

Create table a1 tablespace aa as select * from test;

Create table b1 tablespace bb as select * from test;

Rac2 节点执行:

Create table a2 tablespace aa as select * from test;

Create table b2 tablespace bb as select * from test;

测试结果如下:

Create as 测速

AA 磁盘组

BB 磁盘组

Rac1

150M/秒

67 M/秒

Rac2

73 M/秒

162M/秒

最后我们该如何学习?

1、看视频进行系统学习

这几年的Crud经历,让我明白自己真的算是菜鸡中的战斗机,也正因为Crud,导致自己技术比较零散,也不够深入不够系统,所以重新进行学习是很有必要的。我差的是系统知识,差的结构框架和思路,所以通过视频来学习,效果更好,也更全面。关于视频学习,个人可以推荐去B站进行学习,B站上有很多学习视频,唯一的缺点就是免费的容易过时。

另外,我自己也珍藏了好几套视频资料躺在网盘里,有需要的我也可以分享给你:

1年半经验,2本学历,Curd背景,竟给30K,我的美团Offer终于来了

2、读源码,看实战笔记,学习大神思路

“编程语言是程序员的表达的方式,而架构是程序员对世界的认知”。所以,程序员要想快速认知并学习架构,读源码是必不可少的。阅读源码,是解决问题 + 理解事物,更重要的:看到源码背后的想法;程序员说:读万行源码,行万种实践。

Spring源码深度解析:

1年半经验,2本学历,Curd背景,竟给30K,我的美团Offer终于来了

Mybatis 3源码深度解析:

1年半经验,2本学历,Curd背景,竟给30K,我的美团Offer终于来了

Redis学习笔记:

1年半经验,2本学历,Curd背景,竟给30K,我的美团Offer终于来了

Spring Boot核心技术-笔记:

1年半经验,2本学历,Curd背景,竟给30K,我的美团Offer终于来了

3、面试前夕,刷题冲刺

面试的前一周时间内,就可以开始刷题冲刺了。请记住,刷题的时候,技术的优先,算法的看些基本的,比如排序等即可,而智力题,除非是校招,否则一般不怎么会问。

关于面试刷题,我个人也准备了一套系统的面试题,帮助你举一反三:

1年半经验,2本学历,Curd背景,竟给30K,我的美团Offer终于来了

只有技术过硬,在哪儿都不愁就业,“万般带不去,唯有业随身”学习本来就不是在课堂那几年说了算,而是在人生的旅途中不间断的事情。

人生短暂,别稀里糊涂的活一辈子,不要将就。

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

mg-MyaXMglA-1715595045024)]

只有技术过硬,在哪儿都不愁就业,“万般带不去,唯有业随身”学习本来就不是在课堂那几年说了算,而是在人生的旅途中不间断的事情。

人生短暂,别稀里糊涂的活一辈子,不要将就。

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 27
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过在Nacos配置中心上配置两个不同的配置文件,分别对应MySQL和Oracle数据源的配置。在Spring Cloud应用中,通过使用Spring Cloud Config客户端,将这些配置文件下载到本地,并在应用程序中进行解析和使用。 以下是一个简单的示例,假设我们有两个数据源:MySQL和Oracle。我们可以在Nacos配置中心上创建两个不同的配置文件:mysql.properties和oracle.properties。示例配置如下: mysql.properties: ``` jdbc.url=jdbc:mysql://localhost:3306/mysql_db jdbc.username=mysql_user jdbc.password=mysql_password ``` oracle.properties: ``` jdbc.url=jdbc:oracle:thin:@localhost:1521:orcl jdbc.username=oracle_user jdbc.password=oracle_password ``` 然后,在Spring Cloud应用程序中,我们可以使用以下代码来加载这些配置文件,并在应用程序中使用它们: ```java @Configuration @RefreshScope public class DataSourceConfig { @Value("${jdbc.url}") private String url; @Value("${jdbc.username}") private String username; @Value("${jdbc.password}") private String password; @Bean(name = "mysqlDataSource") @Primary public DataSource mysqlDataSource() { return DataSourceBuilder.create() .url(url) .username(username) .password(password) .driverClassName("com.mysql.jdbc.Driver") .build(); } @Bean(name = "oracleDataSource") public DataSource oracleDataSource() { return DataSourceBuilder.create() .url(url) .username(username) .password(password) .driverClassName("oracle.jdbc.driver.OracleDriver") .build(); } } ``` 在这个例子中,我们使用@Value注释来注入配置文件中的属性。然后,我们可以使用DataSourceBuilder来构建数据源对象,并将其声明为Spring Bean。通过在@Bean注释中设置名称,我们可以在应用程序中引用这些数据源对象。 需要注意的是,使用Spring Cloud Config客户端从Nacos配置中心下载配置文件的具体细节可能会有所不同,具体取决于您的应用程序和环境。但是,上述示例应该可以帮助您了解如何在Spring Cloud应用程序中使用多个数据源配置

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值