专栏首页从ORACLE起航,领略精彩的IT技术。相克军_Oracle体系_随堂笔记002-基础

相克军_Oracle体系_随堂笔记002-基础

1.常见的Oracle生产库环境:

图2-1可以说是标准的生产库环境,处处体现了冗余,有效防止了单点故障。这就是HA(高可用)

而且冗在某种条件下还可以去掉,平常实现同时运行提供服务,如果一台坏掉,另一台也可以继续提供完整服务。这就是LB(负载均衡)

也就是说实现了HA+LB(高可用+负载均衡)

还涉及一个MPIO技术(多路径技术,实现2根线能看做是一根线传输)

困惑已久的数据库各种文件的管理在上图中已经得到答案,将Oracle软件和存储的文件分开管理,即使系统坏了都可以重装,不用担心丢失数据文件,这个方案相见恨晚,very good~

ps:①一般生产库环境中,常见的方案是服务器和光纤存储交换机都选用IBM的,存储选用EMC的存储。

②服务器的硬盘过去通常选用scsi硬盘,如今是选用SAS、FC的比较多。EMC存储通常选用FC盘。

③服务器是通过HA卡和光纤与光纤存储交换机相连接的,光纤存储交换机通过光纤和存储相连接。

④生产环境中,服务器的cpu需要支持64位,linux系统和Oracle的软件,都要选用64位的。

⑤安装Oracle软件,遵循OFA(灵活体系结构)

2.Linux上安装Oracle数据库软件

前期需要注意的东东:

一般物理内存小于4g的时候,swap分区大小规划为是2倍的物理内存;

/tmp 这个如果是生产库环境,建议分给这个节点一个独立的文件系统,大小10G。练习就随意了;

/ 这个剩下的所有空间就给它吧~

Red Hat系统已经装好,网络已经配置完成;

oracle软件版本选择,建议选用企业版,因为标准版中连基本的RAC和分区表都没有;

Oracle 10g 建议安装在RedHat 4系统中;

是用OUI安装Oracle

安装可以选用静默模式安装,但需提前配置好应答文件~

存储那里选择,练习环境选用“文件系统”;生产库环境选择ASM和裸设备的比较多。

正式安装的步骤:(建议参照官方文档)

①确保需要的开发工具、系统工具都装上了;(建议配置yum来安装缺失的rpm包)

②配置网络环境(IP地址和hosts文件)-主机名和ip地址的对应写到hosts文件中。

③建立相关用户组,用户

④修改Linux一些系统内核参数,设置环境变量

$ORACLE_BASE
$ORACLE_HOME
$ORACLE_SID
$LD_LIBRARY_PATH
$NLS_LANG
$NLS_DATE_FORMAT
……

⑤xmanager 安装Oracle

./runInstaller

⑥安装仅安装Oracle软件,最后根据提示执行两个脚本

⑦dbca创建Oracle数据库

注意:

(1)建库过程中,示例方案在生产库中肯定是不能选择的,练习环境可以选; (2)字符集的选择就两种常见选择的方法; (3)存储的位置,控制文件、数据文件、重做日志文件具体的位置可以选择。

⑧netca配置监听

如果监听识别不了数据库,强制让系统注册监听

SQL>alter system register

3.Oracle数据库相关软件的使用

①EM如果出问题,可以删除重建;(默认端口号1158)

EM一旦建立以后,linux服务器的主机名就不要修改了;

EM主要用到管理,性能;

ps:查看端口号,$ORACLE_HOME下,
$cd install
$more portlist.ini

②isqlplus

③sqlplus

④数据库、监听、EM、isqlplus启动和关闭的顺序

启动顺序:依次启动监听、数据库、isqlplus或EM。

$lsnrctl start
SQL>startup
$lsnrctl status
jiagulun    Ready.
$isqlplusctl start
$emctl start dbconsole

关闭顺序:依次关闭isqlplus或EM、监听、数据库。

$isqlplusctl stop
$netstat -tulnp | grep 5560
 
$emctl stop dbconsole
$emctl status dbconsole
 
$lsnrctl stop
$sqlplus / as sysdba
SQL>shutdown immediate;
 
$ps -ef | grep ora

⑤EM管理架构

4.计算机工作机制

CPU、内存、硬盘

问:一核心CPU如何处理3个进程?

答:微观来讲,CPU只能同时执行一个程序;宏观讲,由于时间片很短,可以看做是3个进程同时被处理。

所以服务器的CPU数量比较多,服务器并发量大啊。

内存相当于一个大的缓存。

硬盘:用于永久存放数据的,硬盘属于半电子半机械的东西!

计算机处理数据的瓶颈是:I/O操作,即硬盘=>内存

linux系统的top命令

#top
Cpu(s)    %us    %sy    %id    %wa
Mem:内存被大量使用(不一定是内存不够用)
Swap:{
防止内存耗尽系统挂掉,但尽量少用;
in,out都比较频繁,说明内存不够了;
}

硬盘工作机制:

磁头悬浮在磁道上方,如果不小心触碰,就会产生物理损伤;

读数据(从硬盘读数据){

1.寻道时间T1,磁臂驱动磁头到指定磁道上方(耗时最长)

2.盘面旋转T2

3.通过接口传输数据给内存的时间T3

}

平常大家都做过的碎片整理,实际上就是把磁盘上的数据存放在一起,减少了寻道时间。

柱面:4个磁头一次性从柱面读取数据。(linux系统的分区就是根据柱面分区的)

只要硬盘在线,就会一直旋转,节能的可能会减慢转速。

这回知道了为什么平日里大家的笔记本最好不要在开机状态下乱动,否则可能会损伤磁道的原因!

硬盘的接口:

pc机{

IDE,并口

SATA,串口

SATA2,

SATA3,

}

服务器{

SCSI,并口

SAS,串口

FC

}注意:无论是pc机还是服务器的硬盘,都有串口化的历程:(串口优点是占空间少;干扰小);

IDE,SATA硬盘上没有CPU芯片,取数据会占用CPU的时间;

SCSI,SAS,FC硬盘有单独的cpu芯片,不会占用CPU那么多时间。

计算机缓存技术:

#iostat 1 10

缓存存在的意义:

1.CPU在短时间内处理相同数据的几率非常高;

2.CPU在处理相邻数据的几率非常高。

命中率=逻辑读/(逻辑读+物理读)

命中率低一定有问题,命中率高不一定没问题。

命中率高2种情况{

①正常

②逻辑读非常之大,cpu一直高负荷运转

}

缓存的特点:数据容易丢失

{

1.缓存read:大部分都是这种

2.缓存write:Oracle数据库的内存可以缓存写;存储的缓存可以缓存写。

}

存储的电池就一个作用,断电时暂时不丢数据。而如果存储的缓存电池坏了,会自动关闭缓存写。 如今存储还提供flash,在存储长时间不能加电时,可以把存储缓存中内容-->到flash中。

存储的控制器最为重要,也最为值钱。很多存储本身也提供了冗余技术,比如一个存储设备通常配有2个控制器和2个电源。

存储的特点:{

1.能够集合所有的硬盘;

2.加快了读写速度;

3.支持raid技术。

}

raid技术{

1.提高冗余

2.提高读写速度

}

raid0,raid1,raid5 --这三种现在很少单独使用了;

raid6,raid10,raid01 --这三种后面两种用的最多,推荐使用;

raid0,提高读写速度,但没有任何冗余。需要2块或以上,建议不超过6块。

raid1,对写速度没有提高,读速度有提高,提供冗余。

raid5,有冗余,1/n,写性能差,读性能高;可以坏一块硬盘,但坏了之后,读的速度会受到严重影响。

raid6,有冗余,可以坏2块硬盘,写性能很差,坏一个硬盘时,还可以,坏2个硬盘读的速度一样受到严重影响。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 如何构建企业的业务永续解决方案-架构篇

    上篇文章《真正的双活产品,不仅仅是实现7×24小时》中,我们介绍了沃趣的同城双活性能,从性能指标来看,已经能够满足企业中对性能要求较高的核心业务。

    沃趣科技
  • 「实战篇」开源项目docker化运维部署-开篇(一)

    PS:除了高级篇之前的docker几个系列还比较接地气,如何将docker和实际的开发中串联起来。让docker真正的接地气。找个项目就开始干!

    IT故事会
  • 解决并发问题,数据库常用的两把锁!

    在写入数据库的时候需要有锁,比如同时写入数据库的时候会出现丢数据,那么就需要锁机制。

    Java技术栈
  • 架构取经之路3 - 悟空聊无事务

    悟空和师父一行人正在前往西天取经的路上,师父在线上买了一个福袋,订单状态显示订单已支付,但是电子福袋状态为未发送。

    Jackson0714
  • GEPIA:点点鼠标就能分析TCGA数据

    随着公共数据库的建立和开放,越来越多的研究者可以接触到测序数据,非常适合我们这种“三无”研究者(无课题,无经费,无文章)运用公共数据找点事情干,可以是另辟蹊径从...

    微点
  • 沃趣科技携手某省交警总队,为智慧交通系统建设保驾护航

    “堵堵堵,怎么又堵上了”,当大家还在诟病城市化过程中发生的道路拥堵时,某省交警总队积极响应民生要求,已经开始了对交通管理系统进行效能提升,对交通警务 “六合一”...

    沃趣科技
  • [SpingBoot guides系列翻译]通过JDBC和Spring访问关系数据库

    build的时候用到了spring-boot-maven-plugin插件。他提供了很多便捷的特性。

    _淡定_
  • 面试常问,缓存三大问题及解决方案!

    随着互联网系统发展的逐步完善,提高系统的qps,目前的绝大部分系统都增加了缓存机制从而避免请求过多的直接与数据库操作从而造成系统瓶颈,极大的提升了用户体验和系统...

    lyb-geek
  • 分布式全局唯一ID生成策略

    在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识。如在美团点评的金融、支付、餐饮、酒店、猫眼电影等产品的系统中,数据日渐增长,对数据库的分库分表后需要...

    lyb-geek
  • 通用数据权限的思考与设计

    数据权限是指对系统用户进行数据资源可见性的控制,通俗的解释就是:符合某条件的用户只能看到该条件下对应的数据资源。那么最简单的数据权限大概就是:用户只能看到自己的...

    猿天地

扫码关注云+社区

领取腾讯云代金券