超详细centos7安装Oracle11g(图文结合)
超详细centos7安装Oracle11g(图文结合)前言找了一堆资料跟着照做,总是踩坑,总结一篇图文结合版的,测试可安装成功。1.建立oracle用户和用户组在Linux中创建名为oinstall的用户组groupadd oinstall创建dba用户组groupadd dba创建oper用户组groupadd oper为dba和oper用户组创建oracle用户-g 主用户组-G 附加组use
超详细centos7安装Oracle11g(图文结合)
前言
找了一堆资料跟着照做,总是踩坑,总结一篇我自己的安装流程,图文结合版的,测试可安装成功。
1.建立oracle用户和用户组
在Linux中创建名为oinstall的用户组
groupadd oinstall
创建dba用户组
groupadd dba
创建oper用户组
groupadd oper
为dba和oper用户组创建oracle用户
-g 主用户组
-G 附加组
useradd -g oinstall -G dba,oper oracle
将oracle用户的密码设置为123456(密码自己定)
echo "123456"|passwd oracle –stdin
2.为Oracle的安装创建相关目录
提示:安装位置放下面:
创建安装oracle的安装目录
mkdir -p /home/app/oracle/product/11.2.0/db_1
改变属主和属组
chown -R oracle:oinstall /home/app
为文件夹授权
chmod -R 775 /home/app
提示:安装包放下面:
创建目录
mkdir -p /usr/oracle
更改属主和属组
chown -R oracle:oinstall /usr/oracle
更改目录权限
chmod -R 755 /usr/oracle/
3.优化OS内核参数
vi /etc/sysctl.conf
添加以下内容
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
#kernel.shmmax 参数设置为物理内存的一半
kernel.shmmax = 1200000000
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
保存并退出后,需要使使参数生效
sysctl –p
4.限制oracle用户的shell权限
为了优化性能,需要添加oracle用户的限制参数
vi /etc/security/limits.conf
在文件末尾添加下面四行
#设置进程数软限制
oracle soft nproc 2047
#设置进程数硬限制
oracle hard nproc 16384
#设置文件数软限制
oracle soft nofile 1024
#设置文件数硬限制
oracle hard nofile 65536
进程会话限制可以采用pam_limits认证模块来实现,通过修改登录程序login的PAM设置以启用该认证
vim /etc/pam.d/login
在文件最后添加下面一行
session required pam_limits.so
一般都是64位系统,64位系统需要设置为/lib64/security/pam_limits.so 否则重启服务器后就会出现命令行无法登录,但是通过桌面方式能登录的情况
session required /lib64/security/pam_limits.so
查位数的方法
getconf LONG_BIT
使参数生效
source /etc/profile
5.为Oracle用户添加Oracle环境变量
登录Oracle用户
su – oracle
修改.bash_profile文件
vi .bash_profile
添加以下内容
ORACLE_BASE=/home/app/oracle #这个地方根据自己的目录来,看仔细
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
PATH=$PATH:$ORACLE_HOME/bin
ORACLE_SID=orcl
#NLS_LANG="SIMPLIFIED CHINESE_CHINA.UTF8"
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
#防止Oracle安装界面乱码,先把语言环境改为英文
export LANG=en_US
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
退出后需要刷新环境变量
source .bash_profile
6.配置hostname
安装oracle时,一定要保证主机名出现在/etc/hosts中
vi /etc/hosts
添加如下内容
127.0.0.1 centos50 #这个主机名自己定
测试hostname
ping -c 3 centos50
/etc/sysconfig/network中的hostname要与/etc/hosts中的一致
vi /etc/sysconfig/network
添加如下内容
HOSTNAME=centos50
7.openjdk
去oracle官网下载Linux版的jdk8,然后到下载的目录执行
tar -zxvf jdk-8u201-linux-x64.tar.gz
cp -r jdk1.8.0_201 /usr/java/
打开文件配置系统变量
vi /etc/profile
加入以下内容
export JAVA_HOME=/usr/java/jdk1.8.0_201
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin
生效
source /etc/profile
查看是否配置成功
java –version
8.安装依赖
提示:要联网安装的
安装oracle需要的依赖(软件)
yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaio libaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp
8.检查依赖是否安装完成
rpm -q binutils compat-libcap1 compat-libstdc++ gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel
注意注意:此处有坑!!!
单独执行
yum install compat-libstdc++*
显示已经安装过了,无须做任何处理,一些教程说可以直接忽略,不影响接下去的安装。但是!!!我这台设备不行!!!后面安装的时候直接报错了!!!
找到这个包, compat-libstdc+±33-3.2.3-72.el7.x86_64.rpm,直接命令安装
rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
再检查一次,都有了
如果遇到有其他依赖包没有安装上的,可以(https://pkgs.org/)进行查找
搜索到软件后,找到binary package,这是已编译好的包,也可以选择源码包Source Package。
复制这个地址,然后输入命令,就开始安装了。如果有报错的请自行百度。
rpm -ivh http://mirror.centos.org/centos/8/PowerTools/x86_64/os/Packages/elfutils-libelf-devel-static-0.182-3.el8.x86_64.rpm(这个地址记得改成搜到的地址)
9.关闭防火墙
查看防火墙状态
firewall-cmd --state
停止firewall
systemctl stop firewalld.service
禁止firewall开机启动
systemctl disable firewalld.service
注意:我是自己的设备,可以整个关掉。建议只开放服务器的1521端口,具体自行查找,教程很多
以上操作做完之后,记得重启服务器
10.开始安装Oracle
1.先下载安装包,地址:https://www.oracle.com/cn/database/enterprise-edition/downloads/oracle-db11g-linux.html
上传到之前建的目录/usr/oracle
2.重启完服务器用oracle这个用户登录服务器(在前面已经创建了一个名为oracle的用户密码为123456)
3.进入到安装包的目录
cd /usr/oracle
4.解压安装包
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
解压完会有个database目录
5. 进入到解压目录
cd /usr/oracle/database
6.运行安装命令
./runInstaller
遇到问题
安装xmanager(可以远端X窗口系统上作进行图形化操作的工具)
直接用Oracle用户登录
执行命令处输入:/usr/bin/xterm -ls -display $DISPLAY
遇到报错
解决
yum install xterm
成功登录之后,再进行上面的5、6两个步骤,即可成功打开图形界面
取消勾选,不获取有关 Oracle 安全问题的更新信息
弹出提示窗口,确认不提供电子邮件,选择Yes
根据自己需求选择即可,然后点击Next
(1) 创建和配置数据库 (2)仅安装数据库软件 (3)升级现有数据库
如果要在笔记本电脑或桌面上安装 Oracle 数据库,请选择第一个选项【桌面类】,否则选择第二个选项
(1)单实例数据库安装
(2)Real Application Clusters数据库安装
(1)典型安装
(2)高级安装
默认已添加了English在左侧语言列表中找到简体SimplifiedChinese,
并添加到右侧,然后点击Next
(1)企业版
(2)标准版
(3)标准版1
使用默认安装目录的路径,或者根据情况更改,然后点击Next
使用默认安装目录的路径,或者根据情况更改,然后点击Next
(1)一般用途/事务处理:为一般用途或高事务处理量应用而设计的启动数据库。
(2)数据仓库:为数据仓库应用程序而优化的启动数据库
指定Oracel全局数据库名和服务标识符为:orcl (这里随便自己定),然后点击Next
在内存页中勾选启用自动内存管理,在字符集页中选择使用Unicode,然
后点击Next
不使用集中云控制管理,直接点击Next
使用默认选择的然后Next
选择默认路径即可,然后点击Next
对所有账户使用相同口令Database123456(这个密码很麻烦,总说不符合要求,网上查了一下,这个格式的可以),也可以为不同用户设置不同密码,然后点击Next
设置数据库管理员组dba,数据库操作组oinstall,然后点击Next
在oracle安装到Prerequisite Checks这一步的时候,有好多个提示,一一解决
1.提示swap size检查失败
oracle在安装过程中进行检查系统环境的时候,关于swap(交换分区)的大小预期为15.45G,而系统实际上只有7.81G。
因此我们需要增加系统swap才符合oracle的要求。
先看下自己服务器的交换内存
free -h
在root目录下创建swap文件(每块1M,总共30720块,共计:30720M)
(这个目录可以改的,哪里空间多就创建在哪里)
耐心等待,看服务器,服务器好的速度快,差的速度慢
dd if=/dev/zero of=/root/swapfile bs=1M count=30720
查看swapfile文件的大小
ll /root –h
构建+激活swap
构建swap格式到swapfile
mkswap /root/swapfile
激活swap
swapon /root/swapfile
查看一下swap的大小
free -h
永久生效上述操作仅仅在本次开机有效,重启失效,我们需要保存一下配置
vi /etc/fstab
新增一行
/root/swapfile swap swap defaults 0 0
2.OS Kernel Parameter:semmni(按照以下步骤,没有解决)
点击Fix&Check Again,根据他的提示
cd /tmp/CVU_11.2.0.1.0_oracle/
ls
./runfixup.sh
可是没有解决(这个不管,不影响)
3.安装包问题
如果后台查过都有,那就直接点忽略
查看安装概要,若无问题,则可点击Finish结束配置,开始进行安装
进度条到68%报错
Error in invoking target ‘install’ of makefile ‘/home/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk’. See ‘/home/app/oraInventory/logs/installActions2022-04-21_02-44-09AM.log’ for details
参考很多方法都没有成功,后面想到之前一直报缺少依赖包compat_libstdc++
下载安装glibc-static-2.17-292.el7.x86_64.rpm
转回去安装好该rpm包,再用rpm -qa | grep rpm包名指令检查是否有rpm包安装疏漏
检查完毕之后重新安装Oracle
继续报错Error in invoking target
修改
/home/oracle/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk文件,将
$(MK_EMAGENT_NMECTL)
修改成
$(MK_EMAGENT_NMECTL) -lnnz11
提示:最好先备份一下原文件,万一改错,还有挽救的余地
保存后点击 Retry 即可
一直等待。。。。
点OK后,执行这两个脚本(用root账号),然后点OK
执行之后点OK
11.开机自启
vi /etc/oratab
在最后修改如下内容
orcl:/home/app/oracle/product/11.2.0/db_1:Y
#按自己实际安装的改
chmod +x /etc/rc.d/rc.local
vi /etc/rc.d/rc.local
添加
su oracle -lc "/home/app/oracle/product/11.2.0/db_1/bin/lsnrctl start "
su oracle -lc /home/app/oracle/product/11.2.0/db_1/bin/dbstart
验证一下:
Reboot
Ps -ef |grep ora
总结
安装是个坑,祝大家一次性安装成功
更多推荐
所有评论(0)