暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 11g 学习环境搭建

oracleEDU 2017-08-09
518

本教程开篇从搭建学习环境开始,逐步展开。0基础的同学可以跟着一步一步学习,BTW,已经具备相应能力的同学可以略过或者提出不同见解。

搭建学习环境

学习环境:linux +VMware Workstation+grid +oracle database + 常用工具

linux:redhat 5.8 64-bit

vmware:10.0.1

下载Oracle安装包:Oracle Database 11g Release 2 (11.2.0.1.0) for Linux x86-64

linux.x64_11gR2_database_1of2.zip  

linux.x64_11gR2_database_2of2.zip 

下载grid安装包:Oracle Grid Infrastructure 11g Release 2 (11.2.0.1.0) for Linux x86-64

linux.x64_11gR2_grid.zip

开始实施 

准备: 下载安装介质 

准备: 磁盘空间 大于50G

    内存:物理机内存>=4G

参考文档:说明书(手册)

Oracle官网下载页面--->Documentation--->View Oracle Database, 11g Release 2 (11.2)

E11882-01 zip (825.70 MB)

找安装说明:Database Installation Guide for Linux

下载地址:http://www.oracle.com/technetwork/indexes/documentation/index.html

安装前必须完成下面任务:

1.    确认Linux系统安装ssh

        检查命令:# rpm -qa |grep ssh

        tips:putty、SecureCRT、xmanger协议都是ssh,用户远程管理服务器,所以你的linux一定装ssh。

2.    服务器配置静态地址(192.168.3.1/24)

        命令:#vim etc/sysconfig/network-scripts/ifcfg-eth0

        输入" i "编辑文件

        修改内容:

        BOOTPROTO=static

        IPADDR=192.168.3.1

        NETMASK=255.255.255.0

        :wq保存退出

    读取配置,须重启服务,使用命令:

        #ifdown eth0

        #ifup eth0

    或者

        #service network restart

3.    配置维护终端

        发现增加了网卡vmnet1、vmnet8

        虚拟机网卡配置方法:虚拟机的设置-->编辑-->虚拟网路编辑器

        选项说明:

        1. 桥接-->物理网卡

        2. host-only-->vmnet1   仅主机模式 (虚拟机和物理通讯)

        3. NAT-->vmnet8

        4. 自定义

        配置vmnet1网卡地址: 192.168.3.123/24

        最后测试:ping 192.168.3.1

4.    使用工具xmanager其中的Xshell连接管理虚拟机服务器。

登录虚拟机服务器,用root用户登录去完成安装前的准备工作,安装的时候用的软件的拥有者去装

检查安装软件用的oui 图像界面:

# xhost + 

# xclock

Error: Can't open display:

解决步骤:

1 打开xmanger-passive( 图像是否可以显示就看这个)

2 显示环境变量,告诉系统图像显示到哪里:

    # export DISPLAY=ip地址(终端地址):0.0

    # export DISPLAY=192.168.3.123:0.0

3 授权

    # xhost +

测试

    # xlock

切换账户,必须重新设置

su - oracle 

export DISPLAY=192.168.3.123:0.0

xhost +

xlock 

安装虚拟服务器的需求空间:

/boot  100M

swap   4G

/tmp    4G

/        15G

/u01   剩下全部给oracle软件安装用

安装好系统后,关闭防火墙

selinux 关闭 

为了以后数据库启动快设置:# chkconfig sendmail off

把192.168.3.1 oracleEDU 加入到/etc/hosts命令:

vim etc/hosts 

    127.0.0.1       localhost.localdomain localhost

    ::1             localhost6.localdomain6 localhost6

    192.168.3.1 oracleEDU

:wq 保存

注意:127.0.0.1       localhost.localdomain localhost 记录不允许修改

Oracle安装系统硬件需求

最小内存:1 GB of RAM   (建议2 GB of RAM or more)

查看RAM的大小命令:

# grep MemTotal proc/meminfo

swap空间需求:

内存决定你的swap大小:

内存:Between 1 GB and 2 GB          swap: 1.5 times the size of the RAM 

内存:Between 2 GB and 16 GB        swap:Equal to the size of the RAM 

内存:More than 16 GB                      swap: 16 GB

例:我的物理内存2G,那么swap设置多大?

        >= 3G

查看swap空间大小命令:

# grep SwapTotal proc/meminfo

查看系统可用的RAM和swap空间命令:

# free 

查看shared memory(共享内存)大小命令:

# df -h dev/shm/

tips:Oracle从11g开始,AMM自动内存管理需要更多的共享内存,共享内存必须大于MEMORY_MAX_TARGET和MEMORY_TARGET参数的值,如果Linux中/dev/shm设置太小,在数据库启动时候会报ORA-00845的错误。

参考手册-->Master Book List -->Reference (记录所有的参数的含义)

例:

你的服务器shared memory值是1GB,但是你的MEMORY_TARGET设置是2GB,数据库启动时候就会报错:

ORA-00845: MEMORY_TARGET not supported on this system

ORA-01078: Failure in processing system parameters

解决办法:扩大shared memory

# mount -t tmpfs shmfs -o size=4g dev/shm

查看系统是否能运行需要安装的数据库版本命令:

# uname -m

x86_64

需要至少1GB的 tmp空间,查看命令:

# df -h tmp

我们设置为4GB

安装Oracle 11g Enterprise Edition  至少需要 4.35G

检查操作系统版本:

# lsb_release -id

Distributor ID: RedHatEnterpriseServer

Description:    Red Hat Enterprise Linux Server release 5.8 (Tikanga)

内核需要在2.6.32及以上,检查内核命令:

# uname -r

检查安装软件需要的包:

我们安装的是11.2.0.1 所以下表中32位必须安装:

binutils-2.17.50.0.6

compat-libstdc++-33-3.2.3

compat-libstdc++-33-3.2.3 (32 bit)

elfutils-libelf-0.125

elfutils-libelf-devel-0.125

gcc-4.1.2

gcc-c++-4.1.2

glibc-2.5-24

glibc-2.5-24 (32 bit)

glibc-common-2.5

glibc-devel-2.5

glibc-devel-2.5 (32 bit)

glibc-headers-2.5

ksh-20060214

libaio-0.3.106

libaio-0.3.106 (32 bit)

libaio-devel-0.3.106

libaio-devel-0.3.106 (32 bit)

libgcc-4.1.2

libgcc-4.1.2 (32 bit)

libstdc++-4.1.2

libstdc++-4.1.2 (32 bit)

libstdc++-devel 4.1.2

make-3.81

sysstat-7.0.2

使用如下命令检查包是否安装:

# rpm -q package_name

扩展:rpm -qa |grep 包名(模糊查找)

没有安装的包使用如下命令安装:

# rpm -ivh 包名

# yum -y install 包名

解决包依赖问题,使用yum安装。

配置yum源:

1. 挂载光盘(系统盘)

   # mount dev/cdrom mnt

 2. 设置yum源

    # cd etc/yum.repos.d/

    # cp rhel-debuginfo.repo rhel-debuginfo.repo.bak

    # vim rhel-debuginfo.repo  修改以下内容:

    [rhel-debuginfo]

    name=Red Hat Enterprise Linux $releasever - $basearch - Debug

    baseurl=file:///mnt/Server

    enabled=1

    gpgcheck=0

# yum clean all  清除缓存

# yum list 测试

安装缺少的包:

# yum -y install unixODBC

# yum -y install unixODBC-devel

网络规划

设备

Ip地址

子网

Eth0

192.168.3.108

255.255.255.0

客户端vmare 1

192.168.3.123

255.255.255.0

创建操作系统Oracle安装组和用户

用户

oinstall

dba

oracle

oper

asmadmin

grid

asmdba

asmoper

1          

2          

3          

4          

         配置组、用户

# usr/sbin/groupadd -g 501 oinstall

# usr/sbin/groupadd -g 502 dba

# usr/sbin/groupadd -g 503 oper

# usr/sbin/groupadd -g 504 asmadmin

# usr/sbin/groupadd-g 506 asmdba

# usr/sbin/groupadd -g 505 asmoper

建立oracle用户:

# /usr/sbin/useradd -u 502 -g oinstall -G dba,oper,asmdba oracle

# passwd oracle

建立grid用户:

# usr/sbin/useradd -u 503 -g oinstall -G asmadmin,asmdba,asmoper,dbagrid

# passwd grid

验证:

# id oracle

uid=502(oracle) gid=501(oinstall)groups=501(oinstall),502(dba),503(oper),506(asmdba)

# id grid

uid=503(grid) gid=501(oinstall)groups=501(oinstall),502(dba),504(asmadmin),506(asmdba),505(asmoper)

检查数据库软件安装资源限制

# vi/etc/security/limits.conf

#for oracle

oracle              soft    nproc  2047

oracle              hard    nproc  16384

oracle              soft    nofile 1024

oracle              hard    nofile 65536

oracle              soft    stack  10240

 

#for grid

grid              soft    nproc  2047

grid              hard    nproc  16384

grid              soft    nofile 1024

grid              hard    nofile 65536

grid                    soft    stack   10240

配置内核参数

 

# vi etc/sysctl.conf

#for oracle

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 4294967295

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048576

  :wq       保存

  #/sbin/sysctl –p     使新配置生效

创建软件目录

oracle软件安装列表

/u01/app/oraInventory

oracle安装目录

/u01/app/oracle

grid安目录

/u01/app/grid

# mkdir -p/u01/app/oraInventory   建立oraInventory目录

# mkdir -p u01/app/grid   建立grid目录

# mkdir -p u01/app/oracle 建立oracle目录

# chown -R grid:oinstall u01/app/

# chown -R oracle:oinstall/u01/app/oracle

# chmod -R 775 u01

 检查用户对目录的权限

[root@OracleEDU ]# ll -d/u01/app/grid

drwxrwxr-x 2 gridoinstall 4096 Jul 14 10:11 u01/app/grid

[root@OracleEDU ]# ll -d/u01/app/oracle

drwxrwxr-x 2 oracle oinstall 4096 Jul 14 10:10 u01/app/oracle

Tips:查看服务器上装了哪些软件,安装顺序,安装目录:

 # cat u01/app/oraInventory/ContentsXML/inventory.xml

配置环境变量

配置grid环境变量

# su – grid

# vi home/grid/.bash_profile   (编辑加入以下内容)

exportORACLE_BASE=/u01/app/grid

export ORACLE_SID=+ASM

exportORACLE_HOME=$ORACLE_BASE/product/11.2.0/grid

# source .bash_profile

配置oracle环境变量

# su – oracle

# vi home/oracle/.bash_profile   (编辑加入以下内容)

export ORACLE_BASE=/u01/app/oracle

export ORACLE_SID=orcl

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

# source .bash_profile

Tips:检查变量是否生效:# echo $变量名  或者  # env|grep 变量名

安装ASM

ASM磁盘空间规划

存储数据

High  redundancy

data

DATA1

20G

DATA2

20G

DATA3

20G

存储恢复数据文件

Normal  redundancy

fra

FRA1

20G

FRA2

20G

确定服务器内核版本

# uname –rm

2.6.18-308.el5 x86_64

根据内核版本下载匹配驱动,下载地址:

http://www.oracle.com/technetwork/topics/linux/asmlib/index-101839.html

下载以下三个包:

oracleasm-2.6.18-308.el5-2.0.5-1.el5.x86_64.rpm

oracleasmlib-2.0.4-1.el5.x86_64.rpm

oracleasm-support-2.1.8-1.el5.x86_64.rpm

上传到安装服务器  /disk

安装:

# cd disk

# rpm –ivh *.rpm

检查包是否安装正确:

# rpm -qa|grep oracleasm

oracleasmlib-2.0.4-1.el5

oracleasm-support-2.1.8-1.el5

oracleasm-2.6.18-308.el5xen-2.0.5-1.el5

配置ASM驱动

[root@oracleEDU disk]#/etc/init.d/oracleasm configure

Configuring the Oracle ASM librarydriver.

 

This will configure the on-bootproperties of the Oracle ASM library

driver.  The following questions will determinewhether the driver is

loaded on boot and whatpermissions it will have.  The currentvalues

will be shown in brackets('[]').  Hitting <ENTER> withouttyping an

answer will keep that currentvalue.  Ctrl-C will abort.

 

Default user to own the driverinterface [grid]: grid

Default group to own the driverinterface [asmadmin]: asmadmin

Start Oracle ASM library driver onboot (y/n) [y]: y

Scan for Oracle ASM disks on boot(y/n) [y]: y

Writing Oracle ASM library driverconfiguration: done

Initializing the Oracle ASMLibdriver: [  OK  ]

Scanning the system for Oracle ASMLib disks:[  OK ]

检查ASM状态

[root@oracleEDU disk]#/etc/init.d/oracleasm status

Checking if ASM is loaded: yes

Checking if dev/oracleasm ismounted: yes

关闭虚拟机添加5块硬盘

检查硬盘分区:

# fdisk –l

磁盘分区(5个盘分别按如下方式执行分区)

# fdisk dev/sdb

Command (m for help): n

Command action

  e   extended

  p   primary partition (1-4)

p

Partition number (1-4): 1

First cylinder (1-2610, default 1):

Using default value 1

Last cylinder or +size or +sizeM or +sizeK(1-2610, default 2610):

Using default value 2610

Command(m for help): w

# partprobe dev/sdb

把新增的5个盘变为ASM磁盘:

[root@oracleEDU~]# etc/init.d/oracleasm createdisk DATA1 dev/sdb1

Markingdisk "DATA1" as an ASM disk: [ OK  ]

[root@oracleEDU~]#  etc/init.d/oracleasm creatediskDATA2 dev/sdc1

Markingdisk "DATA2" as an ASM disk: [ OK  ]

[root@oracleEDU~]# etc/init.d/oracleasm createdisk DATA3 dev/sdd1

Markingdisk "DATA3" as an ASM disk: [ OK  ]

[root@oracleEDU~]#  etc/init.d/oracleasm creatediskFRA1 dev/sde1

Markingdisk "FRA1" as an ASM disk: [ OK  ]

[root@oracleEDU~]# etc/init.d/oracleasm createdisk FRA2 dev/sdf1

Marking disk"FRA2" as an ASM disk: [ OK  ]

检查ASM磁盘:

[root@yutianedu~]# etc/init.d/oracleasm listdisks

DATA1

DATA2

DATA3

FRA1

FRA2

Tips:oracleasm其他命令

# etc/init.d/oracleasm restart             ASM重启动)

# /etc/init.d/oracleasm querydisk/dev/sdb1 (检查磁盘是否被使用)

# /etc/init.d/oracleasm deletedisk DISK1     (删除磁盘)

# /usr/sbin/oracleasm scandisks             扫描磁盘


[root@oracleEDU~]# vi /etc/scsi_id.config

# somelibata drives require vpd page 0x80

vendor="ATA",options=-p0x80

options=-g

[root@oracleEDU~]# vi /etc/udev/rules.d/99-oracle-asmdevices.rules

KERNEL=="sdb1",BUS=="scsi", PROGRAM=="/sbin/scsi_id",

RESULT=="14f70656e66696c00000000",OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="sdc1",BUS=="scsi", PROGRAM=="/sbin/scsi_id",

RESULT=="14f70656e66696c00000000",OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="sdd1",BUS=="scsi", PROGRAM=="/sbin/scsi_id",

RESULT=="14f70656e66696c00000000",OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="sde1",BUS=="scsi", PROGRAM=="/sbin/scsi_id",

RESULT=="14f70656e66696c00000000",OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="sdf1",BUS=="scsi", PROGRAM=="/sbin/scsi_id",

RESULT=="14f70656e66696c00000000",OWNER="grid", GROUP="asmadmin", MODE="0660"

[root@oracleEDU~]# /sbin/udevcontrol reload_rules

[root@oracleEDU~]# /sbin/start_udev

Starting udev: [  OK  ]



安装grid软件


上传Grid软件包到安装服务器 /disk

解压文件及安装环境设置

# su – grid

# cd /disk

# unzip linux.x64_11gR2_grid.zip

# cd grid

打开xamnager-passive

# export DISPLAY=192.168.1.123:0.0

# xhost +

# ./runInstaller


Step 1 of 8    选择独立服务器

Step 2 of 8    语言选择English

Step 3 of 10    建立磁盘组 DATA    冗余 high  添加3块磁盘

Step 4 of 10    输入SYS的密码oracle

                        为了方便,这里选择为所有用户设置同样的密码Oracle

Step 5 of 10     选择操作系统组(默认)

Step 6 of 10     安装路径

                           Oracle base :/u01/app/grid

                           software location :/u01/app/grid/product/11.2.0/grid

Step 7 of 10    安装目录文件(默认)

Step 8 of 10    NEXT

Step 8 of 10    概要文件(NEXT)

Step 10 of 10    安装


安装到最后提示用root身份执行两个脚本:

[root@OracleEDU ~]# cd/u01/app/oraInventory/

[root@OracleEDUoraInventory]# ./orainstRoot.sh

Changing permissions of/u01/app/oraInventory.

Addingread,write permissions for group.

Removing read,write,executepermissions for world.

 

Changinggroupname of /u01/app/oraInventory to oinstall.

The executionof the script is complete.

[root@OracleED UoraInventory]# cd /u01/app/grid/product/11.2.0/grid/

[root@OracleEDU grid]# ./root.sh

RunningOracle 11g root.sh script...

...

The inventory is located at/u01/app/oraInventory

'UpdateNodeList' was successful.

点OK。


Step 11 of 11    等待安装完毕。

检查grid是否安装正确:

# cat /u01/app/oraInventory/ContentsXML/inventory.xml

or

# cat /etc/oratab



ASMCA创建FRA磁盘组

[root@OracleEDU~]# su - grid

[grid@OracleEDU~]$ vi .bash_profile

PATH=$ORACLE_HOME/bin:$PATH  (加入这条)

[grid@OracleEDU~]$ source .bash_profile

[grid@OracleEDU ~]$ echo $PATH

/u01/app/grid/product/11.2.0/grid/bin:/bin:/usr/lib64/qt-3.3/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin

[grid@OracleEDU bin]$ asmca

选择 create

输入磁盘组名字 FRA,选择normal,选择两个磁盘。

点 OK,开始创建FRA磁盘组。



安装Oracle database软件


上传Oracledatabase软件到 /disk

[root@OracleEDU ~]# su -oracle

[oracle@OracleEDU ~]$ cd/disk/

[oracle@OracleEDU disk]$unzip linux.x64_11gR2_database_1of2.zip

[oracle@OracleEDU disk]$unzip linux.x64_11gR2_database_2of2.zip


打开Xmanager-passive

[oracle@OracleEDU disk]$ cd database/

[oracle@OracleEDU database]$export DISPLAY=192.168.1.123:0.0

[oracle@OracleEDU database$ xhost +

[oracle@OracleEDU database]$ ./database/runInstaller


Step 1 of 9    提示输入support账户,点YES忽略。

Step 2 of 9    只安装数据库软件

Step 3 of 9    单实例

Step 4 of 11    选择english

Step 5 of 11    选择企业版

Step 6 of 11    指定安装目录

                        Oracle base:/ou1/app/oracle

                        sorftware location: /u01/app/oracle/product/11.2.0/de_home11

Step 7 of 11    用户组(默认)

                        NEXT

                        安装设置概览


Step 10 of 11    按finish开始安装数据库

Step 11 of 11    弹出框让用root运行脚本

[root@OracleEDU dbhome_1]# ./root.sh

Running Oracle 11g root.sh script...

Finishedrunning generic part of root.sh script.

Nowproduct-specific root actions will be performed.

Finishedproduct-specific root actions.


数据库软件安装完成。



创建数据库

数据库信息

数据库服务名:orcl.example.com

实例名:orcl

字符集:zhs16gbk

内存:自动内存管理 512M

数据:+data

快速回复数据:+fra

不开启归档 (建库的时候默认归档标准块大小8K,建立后不允许修改)

使用dbca建库:

# su -oracle

[oracle@yutianedu~]$ vi .bash_profile

exportPATH=$ORACLE_HOME/bin:$PATH   (修改环境变量)

[oracle@yutianedu~]$ source .bash_profile

[oracle@yutianedu~]$ export DISPLAY=192.168.1.123:0.0

[oracle@yutianedu~]$ xhost +

accesscontrol disabled, clients can connect from any host

[oracle@yutianedu ~]$ dbca


Step 1 of 12    选择创建数据库

Step 2 of 12    选择第一项:通用

Step 3 of 12    填入数据库服务名和实例名

Step 4 of 12    默认next

Step 5 of 12    设置用户账户和密码

                          密码设置为oracle,提示不符合规范的密码,忽略,点YES

Step 6 of 12    存储类型选ASM,选择数据文件 +DATA,设置ASMSNMP密码oracle

Step 7 of 11    选择快速恢复存储+FRA

Step 8 of 11    设置内存512M

Step 9 of 11    选择字符集ZHS16GBK

Step 10 of 11    next

Step 11 of 11    创建数据库,finish。

创建完成,exit。


至此,数据库创建完成,学习环境搭建完成,可以使用快照功能对当前系统做备份,方便以后学习。



最后修改时间:2021-04-28 19:28:52
文章转载自oracleEDU,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论