Installing and Upgrading→Linux Installation Guides→Database Quick Installation Guide for Linux X86-64
这里找的是在Linux 64位系统中快速安装Oracle数据库的官方文档。
1.如果需要安装的Linux系统在本地,可以直接打开一个终端会话
2.如果需要安装的Linux系统在远程,使用ssh命令用root用户远程连接至终端服务器。
内存要求:
最少: 1 GB
建议: >=2 GB
查看内存大小命令:
# grep MemTotal /proc/meminfo
如果内存小于上述要求,建议增加内存
查看交换分区大小命令:
# grep SwapTotal /proc/meminfo
可用内存大小与交换分区大小建议:
可用内存大小 |
交换区大小建议 |
介于1 GB 和 2 GB之间 |
1.5 倍内存大小 |
介于2 GB 和 16 GB之间 |
和内存大小一致 |
大于16 GB |
16 GB |
注:Swap是Linux下的虚拟内存分区,它的作用是在物理内存不够用的时候,需要将物理内存中的一部分空间释放出来,以供当前的程序使用。那些被释放的空间则被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。
这里给出增加Swap分区大小的方法:
1.首先用命令free查看系统内swap分区的大小
可以看到内存大小为32G,官方建议Swap分区为16G大小,这里的Swap大小不符合建议要求,大约还需要1024*16-3967=12417M。
2.创建一个Swap文件
# dd if=/dev/zero of=/home/swapfile bs=1M count=12417
3.设置交换文件分区
# mkswap /home/swapfile
4.立即启用Swap文件
# swapon /home/swapfile
5.使系统开机时自启用,在文件/etc/fstab中添加一行
/home/swapfile swap swap defaults 0 0
6.检查新的Swap分区是否已启用,查看cat /proc/swaps或者free命令的输出。如果只是增加分区,到这一步就完成了。
7.删除Swap分区(如有需要)
(1)swapoff /home/swapfile
(2)修改/etc/fstab文件
(3)rm -f /home/swapfile
从Oracle database 11g开始,Automatic Memory Management(自动内存管理)要求在每个Oracle实例中,shared memory(共享内存)的值要大于MEMORY_MAX_TARGET 和 MEMORY_TARGET 的值。
查看共享内存大小命令:
# df -h /dev/shm/
注:/dev/shm在/etc/fstab中挂载,对应tmpfs,实际使用的是内存的空间。默认情况下,/dev/shm为物理内存大小的一半。
这里给出增加共享内存大小的方法:
1.查看当前/dev/shm大小
2.在/etc/fstab文件中明确指定/dev/shm挂载size大小
这里指定/dev/shm的size大小为20g
3.重新挂载,执行如下命令
# mount -o remount /dev/shm/
4.查看最新/dev/shm大小
查看机器类型,如果返回值是i686,说明这是一个32位的系统;如果返回值是X86_64,说明这是一个64位的系统。
# uname –m
确保处理器类型与要安装的Oracle软件版本匹配。
/tmp目录至少需要1G磁盘空间,可以使用下述命令查看
# df -h /tmp
如果/tmp目录对应的磁盘空间少于1G,则可以完成下列几个步骤(任选其一):
(1)删除/tmp目录下无用文件
(2)在设置oracle用户环境变量时设置TMP和TMPDIR变量
(3)增加包含/tmp文件夹的文件分区大小
可以使用下述命令查看磁盘空间大小
# df -h
安装软件所需的的最小磁盘空间如下:
安装类型 |
软件大小 |
数据文件大小 |
企业版EE |
4.35 |
1.7 |
标准版SE |
4.22 |
1.5 |
如果需要配置自动备份,需要额外的磁盘、文件系统或者ASM磁盘组。
安装Oracle 11.2需要以下或者更高版本的操作系统:
Asianux Server 3 SP2
Oracle Linux 4 Update 7
Oracle Linux 5 Update 2 (with Red Hat Compatible Kernel)
Oracle Linux 5 Update 5
Oracle Linux 6
Oracle Linux 6 (with Red Hat Compatible Kernel)
Red Hat Enterprise Linux 4 Update 7
Red Hat Enterprise Linux 5 Update 2
Red Hat Enterprise Linux 5 Update 5 (with the Oracle Unbreakable Enterprise Kernel for Linux)
Red Hat Enterprise Linux 6
Red Hat Enterprise Linux 6 (with the Oracle Unbreakable Enterprise Kernel for Linux)
SUSE Linux Enterprise Server 10 SP2
SUSE Linux Enterprise Server 11
查看操作系统版本号命令:
# cat /etc/issue
例如:
显示Linux版本号为Red Hat Enterprise Linux 6.5,显然满足要求。
安装Oracle 11.2需要内核版本符合系统要求:
l Oracle Linux 4 and Red Hat Enterprise Linux 4
2.6.9 or later
l Oracle Linux 5 Update 5
2.6.32-100.0.19 or later
l Oracle Linux 5 Update 2
2.6.18 or later (with Red Hat Compatible Kernel)
l Oracle Linux 6
2.6.32-100.28.5.el6.x86_64 or later
l Oracle Linux 6
2.6.32-71.el6.x86_64 or later (with Red Hat Compatible Kernel)
l Red Hat Enterprise Linux 5 Update 5 with the Oracle Unbreakable Enterprise Kernel for Linux
2.6.32 or later
l Red Hat Enterprise Linux 6 with the Oracle Unbreakable Enterprise Kernel for Linux
2.6.32-100.28.5.el6.x86_64 or later
l Red Hat Enterprise Linux 6
2.6.32-71.el6.x86_64 or later
l Asianux Server 3, Oracle Linux 5 Update 2, and Red Hat Enterprise Linux 5 Update 2
2.6.18 or later
l SUSE Linux Enterprise Server 10
2.6.16.21 or later
l SUSE Linux Enterprise Server 11
2.6.27.19 or later
查看内核版本命令:
# uname -r
例如:
显然符合要求“2.6.32-71.el6.x86_64 or later”。
不同版本需要安装响应或者更高级版本的包
系统 |
必须的包 |
Oracle Linux 4 Red Hat Enterprise Linux 4 |
binutils-2.15.92.0.2 compat-libstdc++-33-3.2.3 compat-libstdc++-33-3.2.3 (32 bit) elfutils-libelf-0.97 elfutils-libelf-devel-0.97 expat-1.95.7 gcc-3.4.6 gcc-c++-3.4.6 glibc-2.3.4-2.41 glibc-2.3.4-2.41 (32 bit) glibc-common-2.3.4 glibc-devel-2.3.4 glibc-headers-2.3.4 libaio-0.3.105 libaio-0.3.105 (32 bit) libaio-devel-0.3.105 libaio-devel-0.3.105 (32 bit) libgcc-3.4.6 libgcc-3.4.6 (32-bit) libstdc++-3.4.6 libstdc++-3.4.6 (32 bit) libstdc++-devel 3.4.6 make-3.80 numactl-0.6.4.x86_64 pdksh-5.2.14 sysstat-5.0.5 |
Asianux 3 Oracle Linux 5 Red Hat Enterprise Linux 5 |
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 |
Oracle Linux 6 Red Hat Enterprise Linux 6 |
binutils-2.20.51.0.2-5.11.el6 (x86_64) compat-libcap1-1.10-1 (x86_64) compat-libstdc++-33-3.2.3-69.el6 (x86_64) compat-libstdc++-33-3.2.3-69.el6.i686 gcc-4.4.4-13.el6 (x86_64) gcc-c++-4.4.4-13.el6 (x86_64) glibc-2.12-1.7.el6 (i686) glibc-2.12-1.7.el6 (x86_64) glibc-devel-2.12-1.7.el6 (x86_64) glibc-devel-2.12-1.7.el6.i686 ksh libgcc-4.4.4-13.el6 (i686) libgcc-4.4.4-13.el6 (x86_64) libstdc++-4.4.4-13.el6 (x86_64) libstdc++-4.4.4-13.el6.i686 libstdc++-devel-4.4.4-13.el6 (x86_64) libstdc++-devel-4.4.4-13.el6.i686 libaio-0.3.107-10.el6 (x86_64) libaio-0.3.107-10.el6.i686 libaio-devel-0.3.107-10.el6 (x86_64) libaio-devel-0.3.107-10.el6.i686 make-3.81-19.el6 sysstat-9.0.4-11.el6 (x86_64) |
SUSE Linux Enterprise Server 10 |
binutils-2.16.91.0.5 compat-libstdc++-5.0.7 gcc-4.1.0 gcc-c++-4.1.2 glibc-2.4-31.63 glibc-devel-2.4-31.63 glibc-devel-32bit-2.4-31.63 ksh-93r-12.9 libaio-0.3.104 libaio-32bit-0.3.104 libaio-devel-0.3.104 libaio-devel-32bit-0.3.104 libelf-0.8.5 libgcc-4.1.2 libstdc++-4.1.2 libstdc++-devel-4.1.2 make-3.80 numactl-0.9.6.x86_64 sysstat-8.0.4 |
SUSE Linux Enterprise Server 11 |
binutils-2.19 gcc-4.3 gcc-32bit-4.3 gcc-c++-4.3 glibc-2.9 glibc-32bit-2.9 glibc-devel-2.9 glibc-devel-32bit-2.9 ksh-93t libaio-0.3.104 libaio-32bit-0.3.104 libaio-devel-0.3.104 libaio-devel-32bit-0.3.104 libstdc++33-3.3.3 libstdc++33-32bit-3.3.3 libstdc++43-4.3.3_20081022 libstdc++43-32bit-4.3.3_20081022 libstdc++43-devel-4.3.3_20081022 libstdc++43-devel-32bit-4.3.3_20081022 libgcc43-4.3.3_20081022 libstdc++-devel-4.3 make-3.81 sysstat-8.1.5 |
查看包是否安装的命令:
# rpm -q package_name
例如,在redhat6.5系统中检查包的安装情况,可以执行如下语句:
rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc++-devel libaio libaio-devel make sysstat
执行结果如下:
带“is not installed”的都是需要安装的。
注:本例为redhat6.5系统配置本地yum源步骤。
1.将redhat6.5系统的ISO镜像上传至Linux系统中,这里放在/mnt路径下,切记存放路径,以后不要变动此路径和ISO文件。
2.在根目录下建立yum目录,命令是mkdir -p /yum。该目录用于挂载ISO文件。
3.修改/etc/yum.repos.d下的配置文件。
(1)cd /etc/yum.repos.d
(2)ls --查看目录下文件
(3)cp rhel-source.repo rhel-source.repo.bak --做备份
(4) ll --检查是否备份成功
4.修改yum配置文件
(1) vi /etc/yum.repos.d/rhel-source.repo
(2)修改文件内容,只修改rhel-source下的内容,修改为:
name=source (名字可以随意)
baseurl=file:///yum (这个是要挂载的本地目录)
enabled=1
gpgcheck=0
修改前:
修改后:
(3)保存退出
5.手动挂载ISO文件,执行命令
# mount -o loop /mnt/rhel-server-6.5-x86_64-dvd.iso /yum
6.查看挂载结果
# df -hl
7.测试yum功能,执行如下命令
# yum install make
8.卸载已挂载的目录(可在用完成之后卸载,也可保留)
# umount /yum
安装检查时未安装的包(显示“is not installed”),执行命令
# yum inatall package_name
安装前:
安装后:
不同版本需要安装对应的ODBC RPM包
系统 |
RPM包 |
Oracle Linux 4 Red Hat Enterprise Linux 4 |
unixODBC-2.2.11 (32-bit) or later unixODBC-devel-2.2.11 (64-bit) or later unixODBC-2.2.11 (64-bit) or later |
Asianux Server 3 Oracle Linux 5 Red Hat Enterprise Linux 5 |
unixODBC-2.2.11 (32-bit) or later unixODBC-devel-2.2.11 (64-bit) or later unixODBC-2.2.11 (64-bit) or later |
Oracle Linux 6 Red Hat Enterprise Linux 6 |
unixODBC-2.2.14-11.el6 (x86_64) or later unixODBC-2.2.14-11.el6.i686 or later unixODBC-devel-2.2.14-11.el6 (x86_64) or later unixODBC-devel-2.2.14-11.el6.i686 or later |
SUSE 10 |
unixODBC-32 bit-2.2.11 (32-bit) or later unixODBC-2.2.11 (64-bit) or later unixODBC-devel-2.2.11 (64-bit) or later |
SUSE 11 |
unixODBC-2.2.12 or later unixODBC-devel-2.2.12 or later unixODBC-32bit-2.2.12 (32-bit) or later |
首先检查对应包是否已安装,如未安装,则使用yum进行安装
# rpm -q unixODBC unixODBC-devel
执行命令yum install unixODBC unixODBC-devel进行安装。
执行命令查看JDK版本:
# java -version
注:该步骤非必须,IBM JDK 1.5将会随此版本一起安装。
PAM(Pluggable Authentication Modules )是由Sun提出的一种认证机制。它通过提供一些动态链接库和一套统一的API,将系统提供的服务和该服务的认证方式分开,使得系统管理员可以灵活地根据需要给不同的服务配置不同的认证方式而无需更改服务程序,同时也便于向系统中添加新的认证手段。PAM最初是集成在Solaris中,目前已移植到其它系统中,如Linux、SunOS、HP-UX 9.0等。
执行如下命令:
# echo "session required /lib64/security/pam_limits.so" >> /etc/pam.d/login
浏览器用于打开文档以及OEM(Oracle Enterprise Manager)。OEM支持下列浏览器:
l Microsoft Internet Explorer 10.0 (supports Oracle Enterprise Manager Database Control 11.2.0.3 and higher)
l Microsoft Internet Explorer 9.0
l Microsoft Internet Explorer 8.0
l Microsoft Internet Explorer 7.0 SP1
l Microsoft Internet Explorer 6.0 SP2
l Firefox 21.0 (supports Oracle Enterprise Manager Database Control 11.2.0.4)
l Firefox 17.0.6 ESR (supports Oracle Enterprise Manager Database Control 11.2.0.4)
l Firefox 3.6
l Firefox 3.5
l Firefox 3.0.7
l Firefox 2.0
l Safari 4.0.x
l Safari 3.2
l Safari 3.1
l Google Chrome 27.0 (supports Oracle Enterprise Manager Database Control 11.2.0.4)
l Google Chrome 4.0
l Google Chrome 3.0
l Netscape Navigator 9.0
l Netscape Navigator 8.1
执行命令查看firefox浏览器版本:
# firefox –version
例如:
显然符合要求“Firefox 17.0.6 ESR”。
1.检查oinstall用户是否存在
# more /etc/oraInst.loc
如果存在,输出类似于
inventory_loc=/u01/app/oraInventory
inst_group=oinstall
2.检查DBA用户组是否存在
# grep dba /etc/group
3.新增用户组
# /usr/sbin/groupadd oinstall
# /usr/sbin/groupadd dba
4.确定Oracle用户是否已存在
# id oracle
如果存在,输出类似于
uid=440(oracle) gid=200(oinstall) groups=201(dba),202(oper)
5.完成下列操作
如果oracle用户已存在,但是它的主用户组不是oinstall或者不属于dba用户组,那么执行下列语句:
# /usr/sbin/usermod -g oinstall -G dba oracle
如果oracle用户不存在,那么执行下列语句:
# /usr/sbin/useradd -g oinstall -G dba oracle
6.为oracle用户设置密码
# passwd oracle
验证下表中显示的内核参数设置为大于或等于所示最小值的值。
Parameter |
Minimum Value |
File |
semmsl semmns semopm semmni |
250 32000 100 128 |
/proc/sys/kernel/sem |
shmall |
2097152 |
/proc/sys/kernel/shmall |
shmmax |
Minimum: 536870912 Maximum: A value that is 1 byte less than the physical memory Recommended: More than half the physical memory See My Oracle Support Note 567506.1 for additional information about configuring shmmax. |
/proc/sys/kernel/shmmax |
shmmni |
4096 |
/proc/sys/kernel/shmmni |
file-max |
6815744 |
/proc/sys/fs/file-max |
ip_local_port_range |
Minimum: 9000 Maximum: 65500 |
/proc/sys/net/ipv4/ip_local_port_range |
rmem_default |
262144 |
/proc/sys/net/core/rmem_default |
rmem_max |
4194304 |
/proc/sys/net/core/rmem_max |
wmem_default |
262144 |
/proc/sys/net/core/wmem_default |
wmem_max |
1048576 |
/proc/sys/net/core/wmem_max |
aio-max-nr |
1048576 Note: This value limits concurrent outstanding requests and should be set to avoid I/O subsystem failures. |
/proc/sys/fs/aio-max-nr |
如果系统中的参数大于上图列出参数,那么无需修改。
检查参数命令:
Parameter |
Command |
semmsl, semmns, semopm, and semmni |
# /sbin/sysctl -a | grep sem This command displays the value of the semaphore parameters in the order listed. |
shmall, shmmax, and shmmni |
# /sbin/sysctl -a | grep shm |
file-max |
# /sbin/sysctl -a | grep file-max |
ip_local_port_range |
# /sbin/sysctl -a | grep ip_local_port_range |
rmem_default |
# /sbin/sysctl -a | grep rmem_default |
rmem_max |
# /sbin/sysctl -a | grep rmem_max |
wmem_default |
# /sbin/sysctl -a | grep wmem_default |
wmem_max |
# /sbin/sysctl -a | grep wmem_max |
如果有参数和建议值不一致,那么完成如下步骤。
1.编辑/etc/sysctl.conf文件,在文件末尾添加如下内容:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
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
2.使修改生效
# /sbin/sysctl -p
3.使用/sbin/sysctl -a命令检查是否修改成功
Oracle用户的资源限制建议范围如下:
资源限制 |
资源 |
软限制 |
硬限制 |
打开文件描述符 |
nofile |
至少1024 |
至少65536 |
单个用户可用进程数 |
nproc |
至少2047 |
至少16384 |
进程的堆栈段的大小 |
stack |
至少10240 KB |
在10240 KB和32768 KB之间 |
查看打开文件描述符软硬限制:
# ulimit -Sn
# ulimit -Hn
查看单个用户可用进程数软硬限制:
# ulimit -Su
# ulimit -Hu
查看进程的堆栈段的大小软限制:
# ulimit -Ss
# ulimit -Hs
如果不符合条件,那么执行如下步骤:
1. 编辑/etc/security/limits.conf文件,在文件末尾添加如下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
2.对比修改前后的限制参数大小,检查修改是否生效
修改前:
修改后:
如果有调整数据库服务器主机名的需求,则进行后续步骤。
假设旧主机名为hostname_old,新主机名为hostname_new
(1)修改/etc/hosts文件,删除原有记录,添加一条新记录
主机IP 刚设置的主机名 主机简称
(2)修改/etc/sysconfig/network文件,修改HOSTNAME参数为最新主机名
修改后执行service network restart
(3)执行uname –a,查看主机名修改是否生效
如果未生效,可以执行”hostname hostname_new”命令或者reboot重启机器。
假定安装目录是/u01/app,需要执行下列命令(具体安装目录根据实际情况修改)
# mkdir -p /u01/app/
# chown -R oracle:oinstall /u01/app/
# chmod -R 775 /u01/app/
上传软件安装包至/u01/app目录下
解压安装包
# cd /u01/app
# unzip p13390677_112040_Linux-x86-64_1of7.zip
# unzip p13390677_112040_Linux-x86-64_2of7.zip
解压后目录
修改目录权限
# chown -R oracle:oinstall /u01/app/database/
# chmod -R 755 /u01/app/database/
检查权限是否修改成功
切换到oracle用户下
# su - oracle
vi .bash_profile
在文件中加入和修改以下内容:(各参数值可根据实际情况修改)
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=cams
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
保存退出,执行source .bash_profile命令,使修改生效。
执行env | grep ORA命令查看变量是否设置成功。
切换到root用户,修改/etc/profile
vi /etc/profile
在文件的末尾加入以下内容:
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
首先在root用户下执行命令:
# xhost +
切换到oracle用户,并开始安装:
# su - oracle
# cd /u01/app/database
# ./runInstaller
此时会弹出安装页面:
去掉图中的钩,然后点击下一步
点击Yes
选择”Skip software updates”,点击Next
选择”Install database software only”,点击Next
选择”Single Instance database installation”,点击Next
此处语言使用”English”,直接点击Next
选择”Enterprise Edition”,点击Next
选择Oracle安装目录,Oracle Base和Software Location分别与/home/oracle/.bash_profile文件中ORACLE_BASE和ORACLE_HOME对应。
点击Next
点击Next
选择用户组,点击Next
出现警告信息,按照提示进行调整(根据实际情况修复,本文为例子)
(1)修改/etc/sysctl.conf文件中kernel.shmmax参数值,考虑到服务器内存为32G,这里设置为16G,即16*1024*1024*1024=17179869184,然后执行sysctl -p,使修改生效
(2)手动下载pdksh安装包pdksh-5.2.14-37.el5_8.1.x86_64,执行命令:
# rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
如果提示” pdksh conflicts with ksh-20120801-10.el6.x86_64”,执行下列命令:
# rpm -e ksh-20120801-10.el6.x86_64
# rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
执行完后,点击”Check Again”按钮
等待检测完毕
点击Install
耐心等待,可以点击”Details”按钮查看执行细节
安装到这里会有两个脚本需要用root用户运行的。
# /u01/app/oraInventory/orainstRoot.sh
# /u01/app/oracle/product/11.2.0/db_1/root.sh
执行后点击”OK”按钮即可
至此,数据库安装完毕。
在命令行中执行netca命令启动创建监听器。
点击Next
点击Next
点击Next
点击Next
点击Next
点击Next
点击Next
点击Finish
在命令行中执行dbca命令启动创建数据库实例。
点击Next
点击Next
点击Next
输入数据库名和实例名,点击Next
点击Next
这里为了方便,设置所有管理账户密码一样(有需要可以使用SYS用户修改),点击Next
点击Yes按钮
点击Next
点击Next
选择”Sample Schemas”,点击Next
先勾选”Use Automatic Memory Management”,然后点击”Sizing”选项页
修改Processes为3000(按照实际情况填写,可稍微填大一些),然后点击”Character Sets”选项页
选择AL32UTF8字符编码(按需要选择Character Set以及National Character Set),然后点击Next按钮
点击File Location Variables按钮,检查配置项
检查无误后点击OK按钮,然后点击Next
点击Finish按钮
点击OK按钮
等待数据库实例安装
点击Exit,数据库实例安装完毕。
在oracle用户下执行操作
# cd $ORACLE_HOME/sqlplus/admin
# vi glogin.sql
在glogin.sql文件末尾添加
Define _editor='vi'
Set sqlprompt "_user'@'_connect_identifier>"
注:配置后效果:sqlplus中显示连接的数据库:”SYS@cams>”
此处以打补丁p23054359_112040_Linux-x86-64.zip(Released: July 19, 2016)为例:
关闭Oracle数据库监听和Oracle数据库
Kill掉所有与Oracle相关进程
上传补丁包到/home/oracle下
执行unzip p23054359_112040_Linux-x86-64.zip命令解压压缩包
cd 23054359/
/u01/app/oracle/product/11.2.0/db_1/OPatch/opatch lsinventory 查看是否已打补丁
/u01/app/oracle/product/11.2.0/db_1/OPatch/opatch apply 打补丁
提示打补丁失败,需要安装更高级的OPATCH工具,上传版本为11.2.0.3.6的工具至/home/oracle下
unzip p6880880_112000_Linux-x86-64.zip
cd 23054359/
/home/oracle/OPatch/opatch apply 重新打补丁,应答参考截图
/u01/app/oracle/product/11.2.0/db_1/OPatch/opatch lsinventory 查看已打补丁
使用oracle用户登录,执行命令
# cd /u01/app/oracle/product/11.2.0/db_1/bin/
# ./emca -config dbcontrol db -repos recreate
安装应答过程参考下图
等待执行完毕
执行命令,打开控制台
# firefox https://JJ129074.bj:1158/em或者firefox https://IP:1158/em
点击”I Understand Risks”
点击”Add Exception…”
先点击Get Certification,后点击Confirm Security Exception完成。
输入用户密码,以SYSDBA身份登录,点击login按钮
进入EM控制台页面。
# cd /u01/app/oracle/product/11.2.0/db_1/bin/
# ./emca
如果下次登录之前EM无法登录,查看dbconsole状态,如果是停止状态,重新启动一下,也可以查看到网页登录EM的端口:
# ./emctl status dbconsole
# ./emctl start dbconsole
oracle最大连接数(sessions)和并发连接数(processes)两个参数之间的关系为:
两个参数间的关系:sessions=1.1*processes+5
下文以并发连接数为1000为例,修改数据库最大连接数。
[root@XLJ195 ~]# su - oracle
[oracle@XLJ195 ~]# export ORACLE_SID=XXXX
[oracle@XLJ195 ~]$ sqlplus /nolog
SQL> connect /as sysdba
Connected.
SQL> show parameter processes
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
global_txn_processes integer 1
job_queue_processes integer 0
log_archive_max_processes integer 4
processes integer 150
SQL> show parameter sessions
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
java_max_sessionspace_size integer 0
java_soft_sessionspace_limit integer 0
license_max_sessions integer 0
license_sessions_warning integer 0
sessions integer 248
shared_server_sessions integer
SQL> alter system set processes=1000 scope=spfile;
System altered.
SQL> alter system set sessions=1105 scope=spfile;
System altered.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 6680915968 bytes
Fixed Size 2213936 bytes
Variable Size 3556771792 bytes
Database Buffers 3087007744 bytes
Redo Buffers 34922496 bytes
Database mounted.
Database opened.
下文以游标数为3000为例,修改数据库最大游标数。
[root@XLJ195 ~]# su - oracle
[oracle@XLJ195 ~]# export ORACLE_SID=XXXX
[oracle@XLJ195 ~]$ sqlplus /nolog
SQL> connect /as sysdba;
SQL> show parameter cursors
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
open_cursors integer 300
session_cached_cursors integer 20
SQL> show parameter open_cursors
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
open_cursors integer 300
SQL> alter system set open_cursors=3000 scope= both;
System altered.
至此,一个简单可用的Oracle11g单机数据库安装部署完毕。