Centos7虚拟机安装Oracle 11g

参考CentOS7安装Oracle11g—静默安装_initoracle11.ora-CSDN博客,在CentOS7虚拟机上安装Oracle 11g

一.准备工作

  • 安装VMWare,在VMware上安装Centos
  • 安装Xshell和Xftp
  • 下载Linux版Oracle 11g

默认读者有基础可以自行安装上述软件,Linux版Oracle可以从https://www.cnblogs.com/mmzs/p/9030823.html中获取下载链接

虚拟机配置为4G内存,40G硬盘

二.配置CentOS虚拟机中的ip

VMWare中安装CentOS7默认是关闭网络的,ip也是随机的,需要打开网络并固定IP

root登录,打开网络配置文件vi /etc/sysconfig/network-scripts/ifcfg-ens33

修改onboot为yes保存,重启,输入ip addr,显示已获取局域网ip

查询虚拟机的网关

点击VMware编辑菜单,进入虚拟网络编辑器

点击上方NAT模式行,再点击NAT设置,获取网关地址

       

重新vi /etc/sysconfig/network-script/ifcfg-ens33,设置如下

BOOTPROTO设置为static

IPADDR设置为之前ip addr获取到的ip

NETMASK设置为255.255.255.0

GATEWAY和DNS1设置为VMWare的网关,然后service network restart重启网络服务,虚拟机ip就固定了

之后,我们就可以用XShell和Xftp更方便的操控虚拟机了

二.准备Oracle工作

XShell和Xftp连接虚拟机的22端口,默认都会,就不讲了,注意要用root登录

HostName修改:oracle

hostnamectl set-hostname oracle

配置yum源

安装wget和vim

yum -y install wget
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache
yum update
yum -y install vim*

安装依赖包 

yum -y install 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

检查依赖是否安装完整

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"

添加oracle用户组和用户

groupadd oinstall
groupadd dba
groupadd asmadmin
groupadd asmdba
useradd -g oinstall -G dba,asmdba oracle -d /home/oracle

初始化oracle用户的密码

passwd oracle

配置hostname(本机IP映射)

vim /etc/hosts
  192.168.235.126 oracle
# 测试hostname
  ping -c 3 oracle

优化OS内核参数  # kernel.shmmax 参数设置为物理内存的一半(非常有必要)

# kernel.shmmax 参数设置为物理内存的一半
vim /etc/sysctl.conf
## 内容如下:
fs.aio-max-nr=1048576
fs.file-max=6815744
kernel.shmall=2097152
kernel.shmmni=4096
kernel.shmmax = 2147483648
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=1048586

其实更建议用Xftp

使参数生效

sysctl -p

限制oracle用户的shell权限

vim /etc/security/limits.conf
#在末尾添加
oracle	soft	nproc	2047
oracle	hard	nproc	16384
oracle	soft	nofile	1024
oracle	hard	nofile	65536
oracle	soft	stack	10240
oracle	hard	stack	10240
 
vim /etc/pam.d/login
 
session  required   /lib64/security/pam_limits.so
session  required   pam_limits.so
 
vim /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
 
 
--------------------------------------------------------
使之生效:
source /etc/profile

创建oracle安装目录

mkdir -p /db/app/oracle/product/11.2.0
mkdir /db/app/oracle/oradata
mkdir /db/app/oracle/oraInventory
mkdir /db/app/oracle/fast_recovery_area
chown -R oracle:oinstall /db
chmod -R 777 /db

创建 vim /etc/oraInst.loc

inventory_loc=/db/app/oracle/oraInventory
inst_group=oinstall

授权:

chown oracle:oinstall /etc/oraInst.loc
chmod 777 /etc/oraInst.loc

配置oracle用户环境变量

su - oracle  ## oracle用户登陆
 
vim .bash_profile
 
export ORACLE_HOSTNAME=oracle
export ORACLE_BASE=/db/app/oracle
export ORACLE_SID=ORCL
export LC_ALL="en_US"
export LANG="en_US"
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"

重启虚拟机 需要 su - root 回到root用户重启

三.安装Oracle

上传Linux版Oracle到/db 解压oracle压缩文件到 /db

安装unzip

yum -y install unzip

解压

cd /db/
unzip linux.x64_11gR2_database_1of2.zip -d /db
unzip linux.x64_11gR2_database_2of2.zip -d /db

登录Root,复制授权

su - root
mkdir /home/oracle/etc/
cp /db/database/response/* /home/oracle/etc/
chmod 777 /home/oracle/etc/*.rsp

登录oracle用户

vim /home/oracle/etc/db_install.rsp
## 信息如下:
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/db/app/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOSTNAME=oracle
ORACLE_HOME=/db/app/oracle/product/11.2.0/db_1
ORACLE_BASE=/db/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=true
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=orcl
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.memoryLimit=512
oracle.install.db.config.starterdb.password.ALL=oracle
DECLINE_SECURITY_UPDATES=true

开始安装:

su - oracle
cd /db/database
./runInstaller -silent -force -responseFile /home/oracle/etc/db_install.rsp -ignorePrereq

 使用root用户执行脚本:

su - root
/db/app/oracle/product/11.2.0/db_1/root.sh

增加或修改oracle的环境变量

su  - oracle
 
vim ~/.bash_profile
export ORACLE_HOME=/db/app/oracle/product/11.2.0/db_1
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin
export PATH=${PATH}:/usr/bin:/bin:/usr/local/bin
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export LIBPATH=${CLASSPATH}:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib
export ORACLE_OWNER=oracle
export SPFILE_PATH=$ORACLE_HOME/dbs
export ORA_NLS10=$ORACLE_HOME/nls/data
 
#生效
source ~/.bash_profile

配置监听程序

cd /db/app/oracle/product/11.2.0/db_1/bin
./netca /silent /responseFile /home/oracle/etc/netca.rsp

启动监控程序

cd /db/app/oracle/product/11.2.0/db_1/bin
./lsnrctl start
./lsnrctl status

编辑应答文件

vim /home/oracle/etc/dbca.rsp
GDBNAME = "orcl.oracle" 
SID = "orcl"
SYSPASSWORD = "oracle" 
SYSTEMPASSWORD = "oracle" 
CHARACTERSET = "AL32UTF8" 
NATIONALCHARACTERSET = "UTF8"
# 执行:
cd /db/app/oracle/product/11.2.0/db_1/bin
./dbca -silent -responseFile /home/oracle/etc/dbca.rsp

至此完成数据库实例的创建

如果要删除实例

cd /db/app/oracle/product/11.2.0/db_1/bin
./dbca -silent -deleteDatabase -sourcedb orcl

设置Oracle开机启动

vim /etc/oratab
orcl:/db/app/oracle/product/11.2.0/db_1:Y  # //把“N”改成“Y”

cd /db/app/oracle/product/11.2.0/db_1/bin

# 通过dbstart 启动此实例,监听器
./dbstart $ORACLE_HOME;

# oracle的进程关闭,监听器也停止;
./dbshut $ORACLE_HOME;

# 启动监听
./lsnrctl start;

# 查看监听
./lsnrctl status;

登录Oracle,登陆之前,最好重新启动一下虚拟机,转成oracle用户

sqlplus / as sysdba

# 进入系统管理用户
SQL> startup;
 

报错

解决方法,查看文件,重新登录数据库sqlplus / as sysdba     startup;

cd /db/app/oracle/product/11.2.0/db_1/dbs
ls
# 查看initorcl.ora不存在;

cd /db/app/oracle/admin/orcl/pfile/
ls
#获取文件名为init.ora.init.ora.182021222552

cp ./init.ora.182021222552 /db/app/oracle/product/11.2.0/db_1/dbs/
cd /db/app/oracle/product/11.2.0/db_1/dbs/
ls
# 结果为
hc_ora11g.dat  init.ora  init.ora.182021222552 lkORCL  orapworcl

mv ./init.ora.182021222552 initORCL.ora
chmod -R 777 /db/app/oracle/product/11.2.0/db_1/dbs/initORCL.ora

成功开启

SQL> exit;

退出,开启监听

cd /db/app/oracle/product/11.2.0/db_1/bin

# 通过dbstart 启动此实例,监听器
./dbstart $ORACLE_HOME;

# 启动监听
./lsnrctl start;

防火墙开启1521端口,需要root登录

//防火墙开启端口
firewall-cmd --zone=public --add-port=1521/tcp --permanent
//重启防火墙
firewall-cmd --reload

登录成功

CentOS虚拟机安装Oracle结束,注意:一定要配置# kernel.shmmax 参数设置为物理内存的一半(非常有必要)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装Oracle 11g需要以下步骤: 1. 下载Oracle 11g安装包和补丁 在Oracle官网下载Oracle 11g安装包和补丁,下载后上传到CentOS虚拟机中。 2. 安装依赖包 在CentOS 7中,需要安装以下依赖包: ``` yum install oracle-rdbms-server-11gR2-preinstall ``` 3. 安装Oracle 11gCentOS虚拟机中,执行以下命令: ``` unzip linux.x64_11gR2_database_1of2.zip unzip linux.x64_11gR2_database_2of2.zip cd database ./runInstaller ``` 执行上述命令后,会进入Oracle 11g安装向导,按照提示进行配置,包括选择语言、安装类型、安装路径、监听器配置等。安装过程需要耐心等待,可能需要数十分钟或数小时。 4. 执行补丁 在安装Oracle 11g后,需要执行以下补丁: ``` unzip p13390677_112040_Linux-x86-64_1of7.zip unzip p13390677_112040_Linux-x86-64_2of7.zip cd 13390677 ./opatch apply ``` 5. 配置环境变量 编辑/etc/profile文件,在文件末尾添加以下内容: ``` export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1 export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 ``` 6. 启动Oracle 11g 执行以下命令启动Oracle 11g: ``` su - oracle sqlplus / as sysdba startup ``` 7. 设置Oracle 11g开机启动 编辑/etc/rc.d/rc.local文件,在文件末尾添加以下内容: ``` su - oracle -c '$ORACLE_HOME/bin/dbstart' su - oracle -c '$ORACLE_HOME/bin/lsnrctl start' ``` 8. 测试连接 在其他机器上,使用Oracle客户端工具测试是否能够连接Oracle 11g数据库。 以上是在CentOS 7虚拟机安装Oracle 11g的步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值