Oracle

oracle,相比都有所了解,是一家企业级的数据库公司(收费),上图是oracle官网,也是对外的服务平台

oracle有自己独特的安装方式:ASM   :  自动存储管理(ASM,Automatic Storage Management)

ASM 是 Oracle 数据库 10g之后中一个非常出色的新特性,它以平台无关的方式提供了文件系统、逻辑卷管理器以及软件 RAID(磁盘阵列) 等服务。ASM 可以条带化和镜像磁盘,从而实现了在数据库被加载的情况下添加或移除磁盘以及自动平衡 I/O 以删除“热点”。它还支持直接和异步的 I/O 并使用 Oracle9i 中引入的 Oracle 数据管理器 API(简化的 I/O 系统调用接口)。

使用ASM安装好处:

1、 将I/O平均分部到所有可用磁盘驱动器上以防止产生热点,并且最大化性能。
   2、 配置更简单,并且最大化推动数据库合并的存储资源利用。
   3、 内在的支持大文件
   4、 在增量增加或删除存储容量后执行自动联系重分配
   5、 维护数据的冗余副本以提高可用性。
   6、 支持10g,11g的数据存储及RAC的共享存储管理
   7、 支持第三方的多路径软件
   8、 使用OMF方式来管理文件

关于ASM还有很多理论和底层的东西(有兴趣可以网上查),这里我们只需要基本知道为什么要用asm安装oracle即可。

  简单来说,使用asm安装方式是DBA普遍选择,具了解:大多数能购买起oracle的公司,基本也是购买了他的服务,也就是说,部署oracle有针对的解决方案,而个人部署可能性太小。本章详解个人单机部署,是为了能帮助想学oracle的同学了解oracle部署。


下面开始部署oracle11g(单机部署)

系统 数量
centos6.5 (全包环境) 1

  oracle-ASM部署分两步:第一步主要是部署oracle服务的包,oracle官网提供了给普通用户的一个服务应用的包,包含构建库,图形化安装等服务。oracle不同于其他数据库(mysql),可以形象的说,oracle数据库,像是一个数据库服务的总称。这里为了找部署安装的过程,本人翻阅了官网文档,在各大平台寻找,借鉴DBA小伙伴的部署心得,来一步一步走下去...........

第一步:

1,修改主机名与hosts文件

# vi /etc/sysconfig/network
# hostname 11g
# vim /etc/hosts
    IP 主机名

2,关闭防火墙与安全机制

[root@11g ~]# service iptables stop
[root@11g ~]# chkconfig iptables off
[root@11g ~]# chkconfig libvirtd off
[root@11g ~]# vim /etc/selinux/config

3,创建oracle用户,grid用户,dba组

[root@11g ~]# groupadd -g 501 oinstall
[root@11g ~]# groupadd -g 502 dba
[root@11g ~]# groupadd -g 503 asmadmin
[root@11g ~]# groupadd -g 504 asmdba
[root@11g ~]# groupadd -g 505 asmoper
[root@11g ~]# useradd -u 501 -g oinstall -G dba,asmadmin,asmoper,asmdba grid
[root@11g ~]# useradd -u 502 -g oinstall -G dba,asmdba oracle
[root@11g ~]# passwd oracle
更改用户 oracle 的密码 。
新的 密码:
无效的密码: 它没有包含足够的不同字符
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。
[root@11g ~]# passwd grid
更改用户 grid 的密码 。
新的 密码:
无效的密码: 它没有包含足够的不同字符
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。

3.1,以防在安装库时空间不够,给home目录进行扩容

#sdb是一块文件系统ext4的磁盘
[root@11g ~]# mount /dev/sdb /home/

4,创建目录。赋予对应的权限

(1)oraInventory目录

[root@11g ~]# mkdir -p /u01/app/oraInventory
[root@11g ~]# chown grid:oinstall -R /u01/app/oraInventory/
[root@11g ~]# chmod 775 -R /u01/app/oraInventory/

(2)oracle_base目录

[root@11g ~]# mkdir -p /u01/app/grid
[root@11g ~]# chown grid:oinstall -R /u01/app/grid
[root@11g ~]# chmod 775 -R /u01/app/grid
[root@11g ~]# mkdir -p /u01/app/oracle
[root@11g ~]# chown oracle:oinstall -R /u01/app/oracle
[root@11g ~]# chmod 775 -R /u01/app/oracle

(3)扩容给指定的安装目录( /u01/app/oracle/)

#sdc是一块文件系统ext4的磁盘
[root@11g ~]# mount /dev/sdc /u01/app/oracle/
#因为扩容,需重新赋予组别和权限
[root@11g ~]# chown oracle:oinstall -R /u01/app/oracle
[root@11g ~]# chmod 775 -R /u01/app/oracle

(4)oracle_home目录

[root@11g ~]# mkdir -p /u01/app/grid/11.2
[root@11g ~]# chown grid:oinstall -R /u01/app/grid/11.2
[root@11g ~]# chmod 775 -R /u01/app/grid/11.2
[root@11g ~]# mkdir -p /u01/app/oracle/product/11.2/db_1
[root@11g ~]# chown oracle:oinstall -R /u01/app/oracle/product/11.2/db_1
[root@11g ~]# chmod 775 -R /u01/app/oracle/product/11.2/db_1

5,设置环境变量(给两个用户设置)

[root@11g ~]# vi /home/grid/.bash_profile
  export ORACLE_BASE=/u01/app/grid
  export ORACLE_HOME=/u01/app/grid/11.2
  export ORACLE_SID=+ASM
  export PATH=$ORACLE_HOME/bin:$PATH
[root@11g ~]# vi /home/oracle/.bash_profile
  export ORACLE_BASE=/u01/app/oracle
  export ORACLE_HOME=/u01/app/oracle/product/11.2/db_1
  export ORACLE_SID=test
  export PATH=$ORACLE_HOME/bin:$PATH
#生效环境变量
[root@11g ~]# sh /home/grid/.bash_profile 
[root@11g ~]# sh /home/oracle/.bash_profile

5.1,磁盘分区并映射(一个磁盘至少3个区,是为了后面图形化安装库有空间)

查看磁盘信息:fdisk -l

开始分区:fdisk /dev/sdb

分3个主分区(每个3G):n p 按序号依次 回车 +3G

分一个扩展分区(剩下全给):n e 回车

扩展分区下添加8个逻辑分区(每个3G):n 回车 +3G

w 保存!

映射磁盘    添加以下内容:
vi /etc/udev/rules.d/60-raw.rules
ACTION=="add", KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", KERNEL=="sdb2", RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION=="add", KERNEL=="sdb3", RUN+="/bin/raw /dev/raw/raw3 %N"
ACTION=="add", KERNEL=="sdb5", RUN+="/bin/raw /dev/raw/raw5 %N"
ACTION=="add", KERNEL=="sdb6", RUN+="/bin/raw /dev/raw/raw6 %N"
ACTION=="add", KERNEL=="sdb7", RUN+="/bin/raw /dev/raw/raw7 %N"
ACTION=="add", KERNEL=="sdb8", RUN+="/bin/raw /dev/raw/raw8 %N"
ACTION=="add", KERNEL=="sdb9", RUN+="/bin/raw /dev/raw/raw9 %N"
ACTION=="add", KERNEL=="sdb10", RUN+="/bin/raw /dev/raw/raw10 %N"
ACTION=="add", KERNEL=="sdb11", RUN+="/bin/raw /dev/raw/raw11 %N"
ACTION=="add", KERNEL=="raw[1-9]", OWNER=="grid", GROUP=="asmadmin", MODE=="660"
ACTION=="add", KERNEL=="raw1[0-1]", OWNER=="grid", GROUP=="asmadmin", MODE=="660"

使配置生效:
start_udev
查看是否生效:
raw -qa
查看是否正确:
ls -l /dev/raw/raw*

6,上传下载好的服务包并进行解压

网址:https://www.oracle.com/
#下载的包
oracel11g zip.rar                       p13390677_112040_Linux-x86-64_2of7.zip
p13390677_112040_Linux-x86-64_1of7.zip p13390677_112040_Linux-x86-64_3of7.zip
#创建目录放下载好的包
[root@11g ~]# mkdir /oracle
[root@11g ~]# chown grid:oinstall -R /oracle
[root@11g ~]# c
#解压包
#切换到grid用户下操作
su - grid
cd /oracle
unizp p13390677_112040_Linux-x86-64_3of7.zip
#切换到oracle用户下操作
su - oracle
cd /oracle
unzip p13390677_112040_Linux-x86-64_1of7.zip
unzip p13390677_112040_Linux-x86-64_2of7.zip

7,安装所需要的依赖包 (要求一下包都要安装)

yum -y install binutils compat-libstdc++ elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel libXp compat-libstdc++-33-3.2.3
缺少的包:
#compat-libstdc++
#elfutils-libelf-devel-static

第二步,图形安装

安装grid依赖包:

rpm -ivh compat-libcap1-1.10-1.x86_64.rpm
cd /oracle/grid
./runInstaller

<---------图形操作如下--------->

(1)跳过软件更新:

(2)选择第二项:

(3)选择语言(英语

(4)创建磁盘组

(5)密码输入

(6)如果密码简单,会有一下提示,直接点击继续即可

(7)默认即可

(8)路径根据环境变量自动填写的:

(9)不是报错,可忽略警告:

(10)执行脚本,使用root用户,按照弹窗顺序启动脚本,启动完成再点OK:

(11)查看asm进程

实例创建完毕


图形化安装oracle软件

(1)直接下一步

(2)跳过软件更新

(3)选择只安装软件,数据库稍后创建:

(4)选择单实例数据库

(5)选择英语

(6)选择默认企业版

(7)根据环境变量自动填写

(8)检查缺少包,安装

(9)使用root用户执行

以上,oracle软件安装完毕!!!


使用oracle用户执行 dbca 打开图形界面,创建数据库

(1)

(2)自定义

(3)实例名

(4)不用EM

(5)密码

(6)yes

(7)选择存储方式,因为需要ASM磁盘组,使用grid用户登陆服务器,创建磁盘组

(8)登陆,执行命令asmca

(9)磁盘组完成,回到oracle数据库创建页面,选择磁盘组(oracle用户操作)

(10)不勾选

(11)选择字符集:

Oracle 11g 单机服务器ASM部署的更多相关文章

  1. Linux平台oracle 11g单实例 + ASM存储 安装部署 快速参考

    操作环境:Citrix虚拟化环境中申请一个Linux6.4主机(模板)目标:创建单机11g + ASM存储 数据库 1. 主机准备 2. 创建ORACLE 用户和组成员 3. 创建以下目录并赋予对应权 ...

  2. 转://oracle 11gR2 oracle restart 单机使用asm存储 主机名发生更改处理过程

    oracle 11gR2 oracle restart 单机使用asm存储 主机名发生更改并且主机重启后处理过程: 以下为解决方案: 1. Remove Oracle Restart configur ...

  3. Linux平台oracle 11g单实例 安装部署配置 快速参考

    1.重建主机的Oracle用户 组 统一规范 uid gid 以保证共享存储挂接或其他需求的权限规范 userdel -r oracle groupadd -g 7 oinstall groupadd ...

  4. Oracle 11G 单机asm安装

    http://sugarlovecxq.blog.51cto.com/6707742/1702092/

  5. Oracle 11G RAC For ASM 利用RMAN COPY进行存储迁移

    转载请注明出处 一.需求背景 客户数据库存储空间接近存满,需购置一台新的存储,进行数据迁移,客户允许少量停机时间. 二.实施方法讨论 利用ASM rebalance 进行迁移 可以实现0宕机进行迁移, ...

  6. Oracle 11G单机 无网络环境静默安装

    参考文章https://blog.csdn.net/xiaoyu19910321/article/details/89856514 环境centos 7.6最小化安装 1,关闭防护墙selinux,配 ...

  7. Oracle 11g静默安装简明版

    环境:RHEL 6.5 + Oracle 11.2.0.4 1. 初步处理应答文件 2. 静默安装软件 3. 静默安装监听 4. 静默dbca建库 说明: 本文默认安装软件前的步骤已经设置完毕 如果没 ...

  8. Linux 6.x 下Oracle 11g R2 安装配置

    Oracle 11g R2 数据库安装硬件配置要求: 最小内存 1 GB of RAM 虚拟内存容量,这个oracle也有要求,不用担心此时的swap分区不够oracle的要求 .虚拟内存swap如何 ...

  9. Oracle 11g静默安装软件+手工创建数据库

    由于是二次跳转+远程操作,无法使用图形界面,不能直接图形界面安装.采用静默安装软件+手工创建数据库的方式完成需求. 静默模式安装Oracle软件,配置监听程序 手工建库 检查各组件是否符合要求 1. ...

  10. Oracle 11g DG配置简明版

    环境: 主库A机:在线生产环境,RHEL 6.4 + Oracle 11.2.0.3 备库B机:新增备机,RHEL 6.4 需求: 对生产环境最小影响前提下配置DG备库. 目录: 一.B机安装相同版本 ...

随机推荐

  1. JS传值与应用

    问题提出:在进行页面书写的时候,有时候需要进行动态页面拼接,在动态拼接的时候,涉及到函数的调用,函数的传值可能是HTML标签,或者含有json的标签,这样在传值时就有可能出现问题,由于"&q ...

  2. 成功解决pycharm 的setting中的Error occurred when installing package 'Keras'

    成功解决pycharm 的setting中的Error occurred when installing package 'Keras' 刚刚开始学习python在安装package上碰了不上壁. M ...

  3. Django三大主流Web框架(django版本安装-项目创建-应用创建-django三板斧)

    目录 一:python三大主流web框架 1.python三大主流Web框架 2:三大主流web框架特点 二:正常运行Django项目所需要知道的注意事项 1.计算机的名称不能有中文,不然bug在哪你 ...

  4. Mqttnet内存与性能改进录

    1 MQTTnet介绍 MQTTnet是一个高性能的 .NET MQTT库,它提供MQTT客户端和MQTT服务器的功能,支持到最新MQTT5协议版本,支持.Net Framework4.5.2版本或以 ...

  5. vue后退页面刷新数据和缓存数据

    我们在项目中经常使用this.$router.go(-1)  但是,有时我们需要把前一个页面的数据进行缓存,有时需要刷新数据,下面来记录一下怎么操作吧 首先:在vue项目中缓存页面我们能想到 keep ...

  6. css实习滤镜效果(背景图模糊)

    模糊实例 图片使用高斯模糊效果: img { -webkit-filter: blur(5px); /* Chrome, Safari, Opera */ filter: blur(5px); } c ...

  7. JavaScript 深拷贝的循环引用问题

    如果说道实现深拷贝最简单的方法,我们第一个想到的就是 JSON.stringify() 方法,因为JSON.stringify()后返回的是字符串,所以我们会再使用JSON.parse()转换为对象, ...

  8. Python图像处理丨详解图像去雾处理方法

    摘要:本文主要讲解ACE去雾算法.暗通道先验去雾算法以及雾化生成算法. 本文分享自华为云社区<[Python图像处理] 三十.图像预处理之图像去雾详解(ACE算法和暗通道先验去雾算法)丨[拜托了 ...

  9. 避免用Apache Beanutils进行属性的copy。why?让我们一起一探究竟

    在实际的项目开发中,对象间赋值普遍存在,随着双十一.秒杀等电商过程愈加复杂,数据量也在不断攀升,效率问题,浮出水面. 问:如果是你来写对象间赋值的代码,你会怎么做? 答:想都不用想,直接代码走起来,g ...

  10. 数论专项复习(一)扩展欧几里得算法(exgcd)

    简介 扩展欧几里得算法(简称扩欧,exgcd),用来求下列方程的一组解: \[ax+by=(a,b) \] 算法介绍 1. 裴蜀定理 裴蜀定理(Bézout's lemma):若 \(a\in \ma ...