Linux 安装Oracle 11g
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 安装Oracle 11g相关的知识,希望对你有一定的参考价值。
此博文主要介绍在CentOS环境中安装Oracle 11g. 系统环境为CentOS7.2。
安装前环境准备
安装所需要的软件包:
yum install binutils compat-libcap1 compat-libstdc++ gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC-devel -y
yum install binutils* compat-libcap1* compat-libstdc++* gcc gcc-c++ glibc glibc-devel* ksh libaio* libaio-devel libgcc libstdc++* libstdc++-devel libXi* libXtst make sysstat* unixODBC-devel -y
创建用户组和用户:
groupadd -g 502 dba groupadd oinstall groupadd -g 504 asmadmin groupadd -g 506 asmdba useradd -u 502 -g oinstall -G dba,asmdba oracle
设置用户密码:
passwd oracle
修改内核资源限制,在/etc/security/limits.conf添加如下内容:
* soft nofile 4096 * hard nofile 65536 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
在文件/etc/pam.d/login文件中增加一行,配置验证登录限制:
session required pam_limits.so
修改内核参数,在/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 net.ipv4.tcp_wmem = 262144 262144 262144 net.ipv4.tcp_wmem = 4194304 4194304 4194304
设置使生效:
sysctl -p
创建Oracle base目录:
mkdir -p /data/app/oracle chown -R oracle:oinstall /data/app/oracle chmod -R 775 /data/app/oracle
创建数据库文件目录和快速恢复区目录:
数据文件目录
mkdir /data/app/oracle/oradata chown oracle:oinstall /data/app/oracle/oradata chmod 775 /data/app/oracle/oradata/
快速恢复区文件目录
mkdir /data/app/oracle/recovery_area chown oracle:oinstall /data/app/oracle/recovery_area/ chmod 775 /data/app/oracle/recovery_area
安装库软件
从官网下载Oracle11g,是两个zip压缩文件,下载后在同一个目录中解压这两个文件,会生成一个database的目录。这里使用图形安装的方式,需要在本地配置Xserver,Windows客户端具体配置方式参考此链接:http://tryingstuff.blog.51cto.com/4603492/1958772
切换到oracle用户,添加环境变量:
export ORACLE_BASE=/data/app/oracle
配置X:
export DISPLAY=192.168.20.171:0.0
xhost +
access control disabled, clients can connect from any host
执行如下命令进行安装:
# cd database/ # ./runInstaller
这里可以选择先安装应用再创建数据库,也可以一次性创建数据库,这里先进行安装:
选择单实例,和企业版本后,会根据我们添加的环境变量,找到对应的安装目录:
如果安装中出现此错误,需要修改目录权限:
chown -R oracle:oinstall /data/app
修改权限即可。
如果安装的软件包不符合要求会出现如下提示,可以通过下载这些软件包,强制安装。
逐以安装缺失的软件包,可以在这里下载缺失的软件包:http://down.51cto.com/data/2339840
如果要解决依赖关系可以使用如下命令强制安装:
rpm -ivh --nodeps --force packagename.rpm
如果出现此错误,可以先忽略:
PRVF-7543 : OS Kernel parameter “semmni” does not have proper value on node “hostname” [Expected = “128” ; Found = “0”]. – Cause: Kernel parameter value does not meet the requirement. – Action: Modify the kernel parameter value to meet the requirement.
一般在Link binaries这一步出现错误是,大多数情况是由于部分系统包没有安装成功,需要重新安装所需的包,可以使用如下脚本检测软件包是否装好:
#!/bin/sh count=0 arr=( binutils-2* compat-libstdc++-33* elfutils-libelf-0.* elfutils-libelf-devel-0.* elfutils-libelf-devel-static-0.* gcc-4.* gcc-c++-4* glibc-2.* glibc-common-2.* glibc-devel-2.* glibc-headers-2* kernel-headers-* ksh-* libaio-0.* libaio-devel-0.* libgcc-4.* libgomp-4.* libstdc++-4.* libstdc++-devel-* make-* numactl-devel-* sysstat-* ) len=${#arr[@]} for((i=0;i<len;i++)); do char=${arr[$i]} rpm -qa | grep "^$char" if [ $? != 0 ] ; then error[$count]=${arr[$i]} count=$(($count+1)) echo "+++++++++++++++the ${arr[$i]}^is not installed++++++++++++++++++" fi done if [ $count -lt "0" ];then echo "You have $count patchs are not installed." echo "the not installed patch is:" len1=${#error[@]} for((ii=0;ii<len1;ii++)); do echo "${error[$ii]}^" done echo -e "Are you sure to install the patch[yes or no]:\c" read select if [ $select == "yes" ]; then for((is=0;is<len1;is++)); do var=${error[$is]} rpm -ivh ./patch/$var.rpm done fi else echo "++++++++++++++++++++++CHECK PASS!+++++++++++++++++++++++++++" fi count=0 rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel | grep "not installed"
继续点击下一步,直到安装完成.
安装完成后,按照提示使用root 执行系统给出的脚本:
添加oracle的环境变量:
在oracle用户下修改.bash_profile:
export ORACLE_BASE=/data/app/oracle export ORACLE_HOME=/data/app/oracle/product/11.2.0/dbhome_1 PATH=$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/bin
到此为止,Orace 数据库的软件安装工作就完成了。
启动监听
在oracle 用户下使用netca命令启动监听配置界面:
[[email protected] ~]$ export DISPLAY=192.168.20.171:0.0 [[email protected] ~]$ xhost + access control disabled, clients can connect from any host [[email protected] ~]$ netca Oracle Net Services Configuration:
然后都是用默认配置,监听1521端口。
$ netstat -lntp|grep 1521 tcp6 0 0 :::1521 :::* LISTEN 22939/tnslsnr
显示监听状态:
[[email protected] ~]$ lsnrctl status LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 02-NOV-2017 18:27:02 Copyright (c) 1991, 2009, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=temp-test)(PORT=1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production Start Date 02-NOV-2017 18:20:27 Uptime 0 days 0 hr. 6 min. 38 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /data/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora Listener Log File /data/app/oracle/diag/tnslsnr/temp-test/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=temp-test)(PORT=1521))) The listener supports no services The command completed successfully
使用DBCA工具创建数据库
dbca是数据库自带的数据库配置助手,可以帮助我们方便的创建数据库,删除数据库,配置数据库。
执行dbca命令:
[[email protected] ~]$ dbca
选择创建数据库,选择数据库类型:
设置数据库的名称和SID为 “orcl”, 设置所有数据库使用相同的密码,这里设置的密码要满足密码复杂度的要求:
选择数据存放目录:
选择闪回恢复区目录:
选择sample Schemas, 系统会自动配置资源参数,也可以根据自己的需要动态调整,字符集设置为UTF-8:
然后一路默认配置,直到安装完成:
在最后的安装完成界面,数据库会显示详细的数据库信息:
测试数据库的连接
在配置文件添加环境变量:
vim ~/.bash_profile export ORACLE_SID=orcl source ~/.bash_profile
登录数据库:
[[email protected] ~]$ sqlplus sys/oracle as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Thu Nov 2 19:40:58 2017 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL>
查看数据:
SQL> select name,created,log_mode,open_mode from v$database; NAME CREATED LOG_MODE OPEN_MODE --------- --------- ------------ -------------------- ORCL 02-NOV-17 NOARCHIVELOG READ WRITE
本文出自 “Trying” 博客,请务必保留此出处http://tryingstuff.blog.51cto.com/4603492/1978526
以上是关于Linux 安装Oracle 11g的主要内容,如果未能解决你的问题,请参考以下文章