单节点oracle、ASM 详细安装步骤
目录
1.安装环境
Linux版本:
[oracle@yscsbfdb ~]$ uname -a
Linux yscsbfdb 4.1.12-61.1.28.el6uek.x86_64 #2 SMP Thu Feb 23 20:03:53 PST 2017 x86_64 x86_64 x86_64 GNU/Linux
[oracle@yscsbfdb ~]$ cat /proc/version
Linux version 4.1.12-61.1.28.el6uek.x86_64 (mockbuild@x86-ol6-builder-06) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC) ) #2 SMP Thu Feb 23 20:03:53 PST 2017
[oracle@yscsbfdb ~]$ cat /etc/issue
Oracle Linux Server release 6.9
Kernel \r on an \m
[oracle@yscsbfdb ~]$ lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: OracleServer
Description: Oracle Linux Server release 6.9
Release: 6.9
Codename: n/a
Oracle版本:Oracle 11.2.0.4.0
2.系统要求
2.1 Linux安装Oracle系统要求
1.查看RAM和交换空间以及磁盘大小
[root@yscsbfdb ~]# free -h
|
total used free shared buffers cached Mem: 251G 32G 219G 17G 337M 29G -/+ buffers/cache: 2.2G 249G Swap: 16G 0B 16G |
[root@yscsbfdb ~]# df -h
|
Filesystem Size Used Avail Use% Mounted on /dev/mapper/hbsw-hbsw 34G 24G 8.6G 73% / tmpfs 126G 18G 109G 15% /dev/shm /dev/sda1 477M 84M 364M 19% /boot /dev/mapper/hbsw-tmp 16G 50M 15G 1% /tmp /dev/mapper/hbsw-u01 197G 8.2G 179G 5% /u01 /dev/mapper/hbsw-goldengate 477G 70M 452G 1% /goldengate |
2.检查所需软件包
(这一步骤也可以放到后面安装oracle中安装环境检查的步骤中去做,以便更准确的确定缺少的软件包)
检查如下rpm包并安装:
[root@yscsbfdb ~]#rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils \
输入下边的东西
compat-libstdc++-33 \
elfutils-libelf \
elfutils-libelf-devel \
gcc \
gcc-c++ \
glibc \
glibc-common \
glibc-devel \
glibc-headers \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
make \
sysstat \
unixODBC \
unixODBC-devel
系统会显示哪些包安装了,哪些没有安装。如果有的包没有安装,必须安装。
#rpm -ivh package-name-major-version*
3.配置host和主机名
[root@yscsbfdb ~]#vi /etc/hosts
|
127.0.0.1 yscsbfdb ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.1.100 yscsbfdb |
[root@yscsbfdb ~]#vi /etc/sysconfig/network
|
NETWORKING=yes HOSTNAME=yscsbfdb |
2.2修改操作系统核心参数
1.创建相关用户和组
|
/usr/sbin/groupadd -g 501 oinstall /usr/sbin/groupadd -g 502 dba /usr/sbin/groupadd -g 504 asmadmin /usr/sbin/groupadd -g 506 asmdba /usr/sbin/groupadd -g 507 asmoper /usr/sbin/groupadd -g 508 oper /usr/sbin/useradd -g oinstall -G dba,asmdba,asmoper oracle /usr/sbin/useradd -g oinstall -G asmadmin,asmdba,asmoper grid |
2.创建数据库软件目录和数据文件存放目录
|
mkdir -p /oracle/app/oraInventory mkdir -p /u01/app/oracle mkdir /u01/app/oracle/cfgtoollogs chown -R oracle:oinstall /u01/app/oracle chmod -R 775 /u01/app/oracle mkdir -p /u01/app/oraInventory chown -R grid:oinstall /u01/app/oraInventory chmod -R 775 /u01/app/oraInventory mkdir -p /u01/11.2.0/grid chown -R grid:oinstall /u01/11.2.0/grid chmod -R 775 /u01/11.2.0 mkdir -p /u01/app/oracle/product/11.2.0/dbhome_1 chown -R oracle:oinstall /u01/app/oracle/product/11.2.0/dbhome_1 chmod -R 775 /u01/app/oracle/product/11.2.0/dbhome_1 |
3.配置oracle用户的环境变量
[oracle@yscsbfdb ~]$ pwd
/home/oracle
[oracle@yscsbfdb ~]$ vi .bash_profile
|
export TMP=/tmp export TMPDIR=$TMP export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1 export ORACLE_SID=yscsbfjx export PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 umask 022 |
[oracle@localhost ~]$ source .bash_profile --使环境变量生效
3.配置grid用户的环境变量
[grid@yscsbfdb ~]$ pwd
/home/grid
[grid@yscsbfdb ~]$ vi .bash_profile
|
export ORACLE_BASE=/u01/app/grid export ORACLE_HOME=/u01/11.2.0/grid export PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$PATH export TMP=/tmp export TMPDIR=$TMP export ORACLE_SID=+ASM export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib umask 022 |
[grid@localhost ~]$ source .bash_profile --使环境变量生效
5.修改用户的SHELL的限制
修改/etc/security/limits.conf文件,Oracle 要求的用户进程数必须大于2047(默认是1047)
[root@yscsbfdb ~]# vi /etc/security/limits.conf
|
grid soft nproc 2047 grid hard nproc 16384 grid soft nofile 1024 grid hard nofile 65536 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 |
6.修改/etc/pam.d/login 文件
[root@yscsbfdb ~]# vi /etc/pam.d/login
|
session required /lib/security/pam_limits.so |
7.修改linux内核
[root@yscsbfdb ~]# vi /etc/sysctl.conf (这里如果设置的不合适,在安装oracle的时候,最后检测会有脚本修复)
|
# Controls the maximum shared segment size, in bytes kernel.shmmax = 68719476736 # Controls the maximum number of shared memory segments, in pages kernel.shmall = 4294967296 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 6815744 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.wmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_max = 1048576 fs.aio-max-nr = 1048576 |
要使 /etc/sysctl.conf 更改立即生效,执行以下命令。 输入:sysctl -p
8.编辑 /etc/profile
[root@yscsbfdb ~]# vi /etc/profile (Root用户操作。注意在 = 号两边有空格,如果没有可能出错)
|
if [ $USER = "oracle" ] || [ $USER = "grid" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi |
3. 安装过程
3.1安装grid和asm
1.安装ASM包
[root@yscsbfdb grid]# rpm -qa | grep asm
这三个包得装上,安装过程不赘述。
|
oracleasm-2.6.18-194.el5-2.0.5-1.el5.x86_64 libatasmart-0.17-4.el6_2.x86_64 objectweb-asm-3.2-2.1.el6.noarch oracleasmlib-2.0.4-1.el6.x86_64 kdeplasma-addons-libs-4.3.4-5.el6.x86_64 oracleasm-support-2.1.8-1.el6.x86_64 kdeplasma-addons-4.3.4-5.el6.x86_64 |
2.配置ASMLib驱动
在配置asm之前,必须运行配置脚本准备驱动程序。
[root@yscsbfdb grid]# /etc/init.d/oracleasm configure
|
Configuring the Oracle ASM library driver. This will configure the on-boot properties of the Oracle ASM library driver. The following questions will determine whether the driver is loaded on boot and what permissions it will have. The current values will be shown in brackets ('[]'). Hitting <ENTER> without typing an answer will keep that current value. Ctrl-C will abort. Default user to own the driver interface []: grid Default group to own the driver interface []: asmadmin Start Oracle ASM library driver on boot (y/n) [n]: y Scan for Oracle ASM disks on boot (y/n) [y]: y Writing Oracle ASM library driver configuration: done Initializing the Oracle ASMLib driver: [ OK ] Scanning the system for Oracle ASMLib disks: [ OK ] |
[root@yscsbfdb grid]# /etc/init.d/oracleasm enable
|
Writing Oracle ASM library driver configuration: done Initializing the Oracle ASMLib driver: [ OK ] Scanning the system for Oracle ASMLib disks: [ OK ] |
3.配置ASM磁盘
在配置asm硬盘前,先使用fdisk /dev/sd?命令格式化硬盘(本次使用了sdc、sdd、sde、sdf)
[root@yscsbfdb dev]# fdisk /dev/sdc
|
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel with disk identifier 0xecfd8d30. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u'). Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-200512, default 1): 1 Last cylinder, +cylinders or +size{K,M,G} (1-200512, default 200512): 200512 Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. |
创建asm硬盘
|
/usr/sbin/oracleasm createdisk DATA01 /dev/sdc1 /usr/sbin/oracleasm createdisk DATA02 /dev/sdd1 /usr/sbin/oracleasm createdisk DATA03 /dev/sde1 /usr/sbin/oracleasm createdisk RECAREA01 /dev/sdf1 |
检查ASM磁盘是否创建
[root@yscsbfdb dev]# ls -l /dev/oracleasm/disks/
|
total 0 brw-rw----. 1 grid asmadmin 8, 33 Oct 23 15:17 DATA01 brw-rw----. 1 grid asmadmin 8, 49 Oct 23 15:17 DATA02 brw-rw----. 1 grid asmadmin 8, 65 Oct 23 15:17 DATA03 brw-rw----. 1 grid asmadmin 8, 81 Oct 23 15:17 RECAREA01 |
修改磁盘权限
|
chown grid:asmadmin /dev/sdc1 chown grid:asmadmin /dev/sdd1 chown grid:asmadmin /dev/sde1 chown grid:asmadmin /dev/sdf1 |
使用命令扫描、列出
|
/usr/sbin/oracleasm scandisks /usr/sbin/oracleasm listdisks |
4.解压grid软件,安装grid
Grid安装需要使用图形界面,本次使用xmanager软件,设DISPLAY环境变量,使图形界面远程传输到本地。
[grid@yscsbfdb grid]$ export DISPLAY=192.168.1.99(本地ip):0.0
使用grid用户解压grid安装包,形成grid目录,进入grid目录,执行./runInstaller,进行安装
[grid@yscsbfdb grid]$ ./runInstaller
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB. Actual 15114 MB Passed
Checking swap space: must be greater than 150 MB. Actual 16999 MB Passed
Checking monitor: must be configured to display at least 256 colors. Actual 16777216 Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2018-10-23_03-27-03PM. Please wait ...[grid@yscsbfdb grid]$
5.图形化安装grid
1>不更新

2>只安装asm,不安装grid

3>选择语言

4>此处没有带出asm能识别的磁盘,是因为目录不对,点击Change Discovery Path,输入/dev/oracleasm/disk/*即可找到已经分配的asm磁盘。

5>下边就没图了。从网上拿来的图

6>设置密码

7>用户组

8>检查环境是否通过

6.图形化配置ASM
[grid@yscsbfdb grid]$ asmca

点击Create,即可添加新的磁盘组,按照上边配置asm磁盘的方式,增加asm磁盘,这里就能够选到,建立新组。

3.2安装oracle软件
oracle安装需要使用图形界面,本次使用xmanager软件,设DISPLAY环境变量,使图形界面远程传输到本地。
[grid@yscsbfdb grid]$ export DISPLAY=192.168.1.99:0.0
使用oracle用户解压grid安装包,形成oracle目录,进入database目录,执行./runInstaller,进行安装
[oracle@yscsbfdb grid]$ ./runInstaller
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB. Actual 15114 MB Passed
Checking swap space: must be greater than 150 MB. Actual 16999 MB Passed
Checking monitor: must be configured to display at least 256 colors. Actual 16777216 Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2018-10-23_04-05-23PM. Please wait ...[oracle@yscsbfdb database]$
1> 不勾选

2> 不更新

3> 只安装软件,一会儿使用dbca命令建实例

4> 单节点数据库

5> 选择语言

6> 选择企业版

7> 选择目录,这都是之前设置好的

8> 组

9> 系统在检查

这里的图是我已经装完后的,正常来说这里会显示没有通过的项。如果有rpm包没有,我们可以使用rpm -ivh xxx.rpm --nodeps -- force (其中加上--nodeps -- force 代表强制安装,是在直接使用rpm –ivh xxx.rpm安装不成功的情况下用的)如果此处有参数没有设置正确,oracle会给出修复脚本,使用root用户执行,会自动设置2.2.6中的/etc/sysctl.conf文件

安装完成后,系统会提示需要用root权限执行2个shell脚本。执行即可
2. 数据库建库
使用oracle用户,执行命令dbca,建实例。




不安装OEM


输入统一密码(也可以分别设置其密码)

数据库存放位置,这里使用ASM管理


这里可以设置redo和control

开启闪回和归档

不安装示例数据

内存分配,选择oracle自己管理

选择Character Sets选项卡,设置数据库字符集,AL32UTF8

点击next,会显示刚才对数据库选的配置项,点击OK,会弹出创建数据库的界面

经过漫长的等待,当看到此界面,说明oracle建库完成(别人的图)

最后这个可以改密码或者不改。
3. 一些命令
5.1启动ASM关启
1.检查CSS服务是否启动
[grid@ogg1 ~]$ crsctl check css
[grid@ogg1 ~]$ ps -ef|grep cssd
2.检查HAS服务是否启动
[grid@ogg1 ~]$ crsctl check has
[grid@ogg1 ~]$ ps -ef|grep d.bin
发现HAS服务启动了,而ora.cssd和ora.diskmon这2个服务是依赖于HAS维护的.
3.进一步查看各资源的状态
[grid@ogg1 ~]$ crs_stat -t
[grid@ogg1 ~]$ crsctl status resource -t
4.查ora.cssd和ora.diskmon的默认属性
[grid@ogg1 ~]$ crs_stat -p ora.cssd
。。。。。
AUTO_START=never
。。。。。
[grid@ogg1 ~]$ crs_stat -p ora.diskmon
。。。。。。
AUTO_START=never
。。。。。。
可以看到这两个资源的AUTO_START属性默认都设置为never,
也就是说他们不会随着HAS服务的启动而自动启动的,尽管默认情况下HAS服务是开机自动启动的.
5.手动启动
[grid@ogg1 ~]$ crsctl start resource ora.cssd
注:ora.cssd和ora.diskmon这两个服务是有依赖关系的,启动哪个都会把两个都起来.
6.其他操作
1)默认情况下HAS(High Availability Service)是自动启动的.
通过如下命令可以取消和启用自动启动
取消自启动:crsctl disable has
启用自启动:crsctl enable has
2)HAS手动启动和停止
crsctl start has
crsctl stop has
3)查看HAS的状态
crsctl check has
4)如果想让ora.css和ora.diskmon服务随着HAS的启动而自动启动,可以这两个服务的AUTO_START属性
crsctl modify resource "ora.cssd" -attr "AUTO_START=1"
or
crsctl modify resource "ora.diskmon" -attr "AUTO_START=1"
5)如果想取消ora.css和ora.diskmon的Auto start
crsctl modify resource "ora.cssd" -attr "AUTO_START=never"
crsctl modify resource "ora.diskmon" -attr "AUTO_START=never"
二 启动ASM实例
[grid@ogg1 ~]$ sqlplus / as sysasm
SQL> startup
SQL> col instance_name for a15
SQL> col status for a15
SQL> select instance_name,status from v$instance;
INSTANCE_NAME STATUS
--------------- ---------------
+ASM STARTED
三 启动数据库
[oracle@ogg1 ~]$ sqlplus / as sysdba
SQL> startup
SQL> col instance_name for a15
SQL> col status for a15
SQL> select instance_name,status from v$instance;
INSTANCE_NAME STATUS
--------------- ---------------
prod1 OPEN
关闭ASM
一 关闭应该先关闭数据库,在关闭ASM
如果顺序反了会报错
例如:
1 关闭ASM
[root@ogg1 ~]# su - grid
[grid@ogg1 ~]$ sqlplus / as sysasm
SQL> shutdown immediate
ORA-15097: cannot SHUTDOWN ASM instance with connected client (process 7322)
正确的顺序是:
一 关闭数据库
[oracle@ogg1 ~]$ sqlplus / as sysdba
SQL> shutdown immediate
二 关闭ASM
[root@ogg1 ~]# su - grid
[grid@ogg1 ~]$ sqlplus / as sysasm
SQL> shutdown immediate
ASM diskgroups dismounted
ASM instance shutdown
单节点oracle、ASM 详细安装步骤的更多相关文章
- Hadoop的单节点集群详细启动步骤
见,如下博客 hadoop-2.2.0.tar.gz的伪分布集群环境搭建(单节点) 很简单,不多赘述.
- Oracle 11g 详细安装步骤
一.Oracle 下载 注意Oracle分成两个文件,下载完后,将两个文件解压到同一目录下即可. 路径名称中,最好不要出现中文,也不要出现空格等不规则字符. 官方下地址: http://www.ora ...
- Hive的单节点集群详细启动步骤
说在前面的话, 在这里,推荐大家,一定要先去看这篇博客,如下 再谈hive-1.0.0与hive-1.2.1到JDBC编程忽略细节问题 Hadoop Hive概念学习系列之hive三种方式区别和搭建. ...
- HBase的单节点集群详细启动步骤(分为Zookeeper自带还是外装)
伪分布模式下,如(weekend110)hbase-env.sh配置文档中的HBASE_MANAGES_ZK的默认值是true,它表示HBase使用自身自带的Zookeeper实例.但是,该实例只能为 ...
- Zookeeper的单节点集群详细启动步骤
这个很简单,见如下博客. 1 week110的zookeeper的安装 + zookeeper提供少量数据的存储 [hadoop@weekend110 zookeeper-3.4.6]$ pwd/ho ...
- LAMP----linux+apache+mysql+php详细安装步骤之一APACHE篇(openldap等)
LAMP----linux+apache+mysql+php详细安装步骤之一APACHE篇(openldap等) linux详细版本为RHEL5.3 [root@localhost mail]# un ...
- Kafka的3节点集群详细启动步骤(Zookeeper是外装)
首先,声明,kafka集群是搭建在hadoop1.hadoop2和hadoop3机器上. kafka_2.10-0.8.1.1.tgz的1或3节点集群的下载.安装和配置(图文详细教程)绝对干货 如下分 ...
- Linux详细安装步骤
Linux详细安装步骤(CentOS_6.7_64位) 1.先安装好VMware10软件 2.验证VM是否安装成功: (有些机器在安装vmware的时候会出现一个错误:virtual XT,这需要重启 ...
- HBase的多节点集群详细启动步骤(3或5节点)(分为Zookeeper自带还是外装)
HBase的多节点集群详细启动步骤(3或5节点)分为: 1.HBASE_MANAGES_ZK的默认值是false(zookeeper外装)(推荐) 2.HBASE_MANAGES_ZK的默认值是tru ...
随机推荐
- 小米监控--Open-Falcon
#安装下载软件yum -y install wget #更换aliyun源mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Ba ...
- 內部作业 OH01 0001710000 无价格可确定
在CO15报工时,提示:“內部作業 OH01 0001710000 無價格可確定” 出现以上错误信息,表示没有在KP26维护价格, 只需要进入KP26维护成本中心和作业类型的价格即可, 具体操作如下图 ...
- Spring Data JPA 查询
1 按照关键字方法名查询 自定义的简单查询就是根据方法名来自动生成SQL,主要的语法是findBy,readABy,queryBy,getBy,countBy后面跟属性名称 findBy,readAB ...
- 几种排序算法及Java实现排序的几种方式
几种排序算法 下面的例子介绍了4种排序方法: 冒泡排序, 选择排序, 插入排序, 快速排序 package date201709.date20170915; public class SortUtil ...
- 安卓渗透测试工具——Drozer(安装和使用)
移动端渗透测试工具相比丰富的web端真的是少之又少,最近在做app的安全测试,用到了drozer,drozer的安装过程真的是太心酸了,中间报错了有6次才成功安装.. 一.环境准备 首先准备以下环境: ...
- 从内存上看python的对象
python中有一个说法:一切皆是对象,怎么理解这句话呢?我们可以通过查看数字,字符串在内存中的表示形式来对这句话有个更深的认识. 那么,怎么查看对象在内存中是什么样的呢?可以先参考一些这篇文章:ht ...
- 【C/C++】对于可重入、线程安全、异步信号安全几个概念的理解
由于前段时间,程序偶尔异常挂起不工作,检查后发现时死锁了,原因就是:在信号处理函数里面调用了fprintf. printf等io函数是需要对输出缓冲区加锁,这类函数对本身是线程安全的,但是对信号处理函 ...
- PTA(Advanced Level)1011.World Cup Betting
With the 2010 FIFA World Cup running, football fans the world over were becoming increasingly excite ...
- 纯前端表格控件SpreadJS V12.1 隆重登场,专注易用性,提升用户体验
一款优秀的开发工具,在更新迭代中,除了要满足不同场景的业务需求,也需不断优化已有功能,尤其是细节方面,要能为用户带来使用体验和开发效率的提升. 作为一款备受业界专家和开发者认可的纯前端类Excel ...
- ABC136E Max GCD
Thinking about different ways of thinking. --- LzyRapx 题目 思路比较容易想到. Observations: 每次操作过后和不变. 枚举和的因子 ...