开发者社区> jeanron100> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

备库搭建中的一波三折

简介: 这几天一台服务器出了硬件问题之后,这台服务器上的两个备库都殉职了,我们真是如坐针毡,毕竟没有了备库感觉就是裸奔,两个库差不多有10T,搭一套备库也是颇有波折。 当服务器到了我手里之后,首先就开始准备安装数据库软件,安装前的基本检查很快做完了,需要预先安装的依赖包我看使用yum源已经识别了,我也标示了yes,然后开始克隆安装。
+关注继续查看
这几天一台服务器出了硬件问题之后,这台服务器上的两个备库都殉职了,我们真是如坐针毡,毕竟没有了备库感觉就是裸奔,两个库差不多有10T,搭一套备库也是颇有波折。
当服务器到了我手里之后,首先就开始准备安装数据库软件,安装前的基本检查很快做完了,需要预先安装的依赖包我看使用yum源已经识别了,我也标示了yes,然后开始克隆安装。
奇怪的是克隆安装显示成功,竟然sqlplus不可用。
$ sqlplus -v
sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory
这个问题还比较简单,一般就是LD_LIBRARY_PATH没有设置
但是设置之后,重新relink发现报错信息变成了下面的样子。
$ sqlplus -v
sqlplus: error while loading shared libraries: libclntsh.so.11.1: cannot open shared object file: No such file or directory
查看这个链接文件,还确实是有问题。
$ ll libclnt*
lrwxrwxrwx. 1 oracle oinstall 59 Nov 17 05:45 libclntsh.so -> /U01/app/oracle/product/11.2.0.2/db_1/lib/libclntsh.so.11.1
lrwxrwxrwx. 1 oracle oinstall 54 Nov 17 05:45 libclntsh.so.10.1 -> /U01/app/oracle/product/11.2.0.2/db_1/lib/libclntsh.so
-rw-r--r--. 1 oracle oinstall  0 Sep 17  2011 libclntst11.a
最后发现是静默安装的时候把ORACLE_HOME写错了。ORACLE_HOME应该为11.2.3 结果自己在使用命令
perl clone.pl ORACLE_BASE=/U01/app/oracle ORACLE_HOME=/U01/app/oracle/product/11.2.0.2/db_1  ORACLE_HOME_NAME=OraDb10g_home1
不小心给标记成了11.2.0.2这样链接库文件在relink的时候就会错误链接
修改后又继续开始克隆安装,这次的错误更奇怪了。
$ sqlplus -v
sqlplus: error while loading shared libraries: /U01/app/oracle/product/11.2.0.2/db_1/lib/libclntsh.so.11.1: file too short
可以从下面看到两个链接文件都是空的。看来还是在relink的时候什么丢了,但是安装包都预安装了,怎么就不行啊。
$ ll libcln*
lrwxrwxrwx. 1 oracle oinstall 59 Nov 17 06:09 libclntsh.so -> /U01/app/oracle/product/11.2.0.2/db_1/lib/libclntsh.so.11.1
lrwxrwxrwx. 1 oracle oinstall 54 Nov 17 06:09 libclntsh.so.10.1 -> /U01/app/oracle/product/11.2.0.2/db_1/lib/libclntsh.so
-rw-r--r--. 1 oracle oinstall  0 Nov 17 06:10 libclntsh.so.11.1
-rw-r--r--. 1 oracle oinstall  0 Sep 17  2011 libclntst11.a
这个问题纠结了好一会,甚至怀疑是不是新机器出现了什么不兼容的地方,因为是比较新的920机器,最后查看了一下操作日志,发现原来原装yum源的时候就出了问题。
比如yum install xxxx的时候,有下面的日志,我选择yes
Install       5 Package(s)
Total download size: 15 M
Installed size: 33 M
Is this ok [y/N]: y
Downloading Packages:
Error Downloading Packages:
  mpfr-2.4.1-6.el6.x86_64: failure: Packages/mpfr-2.4.1-6.el6.x86_64.rpm from base: [Errno 256] No more mirrors to try.
  cloog-ppl-0.15.7-1.2.el6.x86_64: failure: Packages/cloog-ppl-0.15.7-1.2.el6.x86_64.rpm from base: [Errno 256] No more mirrors to try.
结果最后显示都是Errno 256
最后简单配置yum源,mount /home/xxxxx  /media/xxxx -o loop就搞定了
看来操作日志也是非常重要,要不到时候出了问题都没有依据。而且步骤的检查还是要仔细,老是返工也是费时费力。
好了,数据库软件安装不是一件难事,很快搞定,现在就开始使用duplicate的方式来同步文件了。
发现11g里面的rman同步着实很全面,如果上次同步中断取消,下次重新duplicate还可以做断点续传。
再次duplicate会有下面的日志信息
sql statement: alter database mount standby database
Using previous duplicated file /U01/app/oracle/oradata/xxx/xxx_data280.dbf for datafile 187 with checkpoint SCN of 220705796796
Using previous duplicated file /U01/app/oracle/oradata/xxx/xxx_data2.277.dbf for datafile 213 with checkpoint SCN of 220705796789
然后就是漫长的等待了,不过还有一个非常重要的地方需要注意就是主库的归档一定要保留好,如果定时删除,不小心多删了的话,那么长时间的等待就白费了。
所以也是一边关注主库的磁盘空间,一边关注文件复制的进度。
早上看了下,两个几乎同时开始复制的备库,早上醒来查看一个已经完成了2T,另外一个竟然还只完成了600G,差别也着实太大了。
目前知道唯一的差别就是2T的机器主库是raid5,600G的机器主库是raid10
当时差点得出了一个错误的结论,就是raid5比较挫。性能也差。
下午的时候,有一件事情特别纠结,有一个备库已经复制完成了近90%,但是主库的归档区域已经快满了,使用的是ASM,想临时压缩一下归档都没办法。删除归档吧,那备库就白搭了,不删除吧,主库的归档已经满了,新归档也会有影响。
就在这种纠结中,最后还是硬着头皮拖了一下,幸亏当时系统负载不算太大,所以这部分归档的影响还比较小,等备库一同步完,就开始开启RFS接收归档,然后马上释放主库的空间。
整个过程也是有条不紊的在进行。总算把这个问题缓冲了下来。
等到晚上6点多的时候,发现另外一台备库的文件复制速度开始大幅度提升,查看网卡的流量情况如下。
通过这个图可以看出其实不是raid5和raid10造成的文件复制低效问题,根源还是在于网络的设置上
文件复制较快的服务器网卡流量如下:

而文件复制较慢的服务器流量情况如下,可以看到两者是相互补充的。至于为什么先开始文件复制的那台服务器就快很多,为什么不是平均这部分资源。自己也没有想明白。

一台备库搭建完成,另外一台备库速度也开始提升,心情都一下子美丽起来了。
备份重于一切,没有备库裸奔的感觉真是不踏实。对于硬件的监控也要全面注意起来,提前发现问题,提前部署方案。唉,就会少有一些无奈的悲剧。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Dubbo之 环境搭建(二)
搭建服务的提供者和服务的消费者,实现服务消费者跨应用远程调用服务提供者
24 0
ECS使用体验----搭建博客
ECS使用体验----搭建博客
111 0
Dubbo 中的 SPI 机制(上)
本文主要讲述 Dubbo 中的 SPI 机制, 首先给大家带来一个简单的 Spring-Boot-Dubbo 案例,然后通过 Java 中的 SPI 的机制和讲解来引出 SPI 解决的问题,最后再通过一下几个方面讲述 Dubbo 中的 SPI 的设。 Dubbo 中的 SPI 实现 Dubbo 中的依赖注入 Dubbo 中的 AOP Dubbo 中的 Adaptive 机制 版本说明: dubbo 2.7.8
47 0
Dubbo 中的 SPI 机制(下)
本文主要讲述 Dubbo 中的 SPI 机制, 首先给大家带来一个简单的 Spring-Boot-Dubbo 案例,然后通过 Java 中的 SPI 的机制和讲解来引出 SPI 解决的问题,最后再通过一下几个方面讲述 Dubbo 中的 SPI 的设。 Dubbo 中的 SPI 实现 Dubbo 中的依赖注入 Dubbo 中的 AOP Dubbo 中的 Adaptive 机制 版本说明: dubbo 2.7.8
25 0
基于ECS搭建云上博客
做任务免费抽iphone13,还可得阿里云新春限量手办(已结束)
142 0
记一次使用ECS搭建云上博客的经历
在体验了阿里云两小时的搭建云上博客项目的时候,我收获颇丰,跟着教程搭建了LAMP环境和使用wordpress创建了个人博客。然后领取了两周的服务器之后自己尝试搭建的时候出现了很多bug(当时手贱点了centos8),在翻看很多文章之后,在此记录一下centos8搭建云上博客的过程。
262 0
安装WordPress,快速搭建自己的云上博客。
安装WordPress,快速搭建自己的云上博客。
764 0
字体大宝库:1000+精美的中文字体下载
  之前的文章和大家分享过各种英文艺术字体、手写字体和涂鸦字体等等非常多的英文字体资源。很多朋友都留言说喜欢能分享一下中文字体,所以就去网上搜索,发现了一个非常好的中文字体资源,包括创艺、华文、长城、文鼎、微软、金桥、汉鼎、经典、迷你、汉仪和方正等多个系列,上千种字体,分享给大家下载。
2242 0
+关注
jeanron100
Oracle ACE,《Oracle DBA工作笔记》作者 现就职于国内某互联网公司,擅长数据管理,数据迁移,性能优化,目前专注于开源技术,运维自动化和性能优化。
1178
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载