客快物流大数据项目(二十二):Docker环境中安装软件

Posted Lansonli

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了客快物流大数据项目(二十二):Docker环境中安装软件相关的知识,希望对你有一定的参考价值。

目录

Docker环境中安装软件

一、安装JDK

二、安装Oracle11g

1、安装pdksh

2、安装Oracle依赖

3、检查Oracle依赖是否完整

4、新增Oracle相关的用户和组

5、配置Kernel参数

6、配置Oracle用户的系统资源

7、创建Oracle所需的目录

8、配置Oracle用户的环境变量

9、​​​​​​​解压Oracle11gR2

10、​​​​​​​安装Oracle11gR2

11、​​​​​​​配置Oracle11gR2的静默监听服务

12、​​​​​​​静默创建数据库

13、登录Oracle11gR2数据库

​​​​​​​14、运行Oracle11gR2所遇到的问题


Docker环境中安装软件

一、安装JDK

操作步骤

说明

1

进入JDK所在目录

cd /export/softwares/

2

解压JDK

tar -zxf jdk-8u221-linux-x64.tar.gz -C /usr/java/

3

创建JDK软连接

ln -s /usr/java/jdk1.8.0_221 /usr/java/jdk

4

配置JDK权限

chown root:root -R /usr/java/jdk1.8.0_221

chmod 755 -R /usr/java/jdk1.8.0_221

5

查看安装后的目录

ll /usr/java/

6

配置JDK到环境变量

vim /etc/profile

export JAVA_HOME=/usr/java/jdk

export PATH=.:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

7

重新加载环境变量

source /etc/profile

验证JDK

java -version

二、安装Oracle11g

1、安装pdksh

可以使用yum在线安装,如果无法下载时可以直接使用已经下载好的rpm包。

cd /export/softwares

yum localinstall oracle/db/pdksh-5.2.14-37.el5_8.1.x86_64.rpm

2、安装Oracle依赖

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

3、检查Oracle依赖是否完整

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"

如果命令执行完成没有任何响应,则表示依赖包都已经安装了,如果有输出时表示缺少一些包,使用yum install -y 输出的软件包1 输出的软件包2 ...方式安装即可。

4、​​​​​​​新增Oracle相关的用户和组

操作步骤

说明

1

新增oinstall用户组,安装oracle的用户组

groupadd oinstall

2

新增dba用户组

groupadd dba

3

新增oracle用户

useradd -g oinstall -G dba oracle -d /home/oracle

4

查看oracle用户

id oracle

5

设置oracle用户密码(我设置的密码为oracle)

passwd oracle

5、配置Kernel参数

操作步骤

说明

1

配置安装Oracle时必须满足的kernel参数

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

 

虚拟机内存为4G,设置kernel.shemax=2G(单位为字节,服务器内存的一半)

2

使修改kernel操作生效

sysctl -p

6、​​​​​​​配置Oracle用户的系统资源

操作步骤

说明

1

配置oracle用户的句柄数和线程数

vim /etc/security/limits.conf

新增:

oracle           soft    nproc           2047

oracle           hard    nproc           16384

oracle           soft    nofile          1024

oracle           hard    nofile          65536

 

2

配置oracle用户登录规则

vim /etc/pam.d/login

新增:

session  required   /lib64/security/pam_limits.so

session  required   pam_limits.so

3

配置oracle用户ksh

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

7、创建Oracle所需的目录

mkdir -p /u01/app/oracle/product/11.2.0

mkdir /u01/app/oracle/oradata

mkdir /u01/app/oracle/inventory

mkdir /u01/app/oracle/fast_recovery_area

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

chmod -R 775 /u01/app/oracle

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

 

8、​​​​​​​配置Oracle用户的环境变量

设置~/.bash_profile的oracle用户权限(使用root用户操作

chown -R oracle:oinstall ~/.bash_profile

 

注意:先切换到oracle用户的目录下再操作(使用oracle用户操作)

su oracle

vim ~/.bash_profile

新增:

umask 022

export ORACLE_HOSTNAME=server01

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/

export ORACLE_SID=orcl

export PATH=.:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/jdk/bin:$PATH

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"

 

重新加载环境变量:source ~/.bash_profile

9、​​​​​​​解压Oracle11gR2

注意:在root用户下操作

操作步骤

说明

1

解压

cd /export/softwares/oracle/db/11gR2/

 

unzip linux.x64_11gR2_database_1of2.zip -d /opt/oracle/

unzip linux.x64_11gR2_database_2of2.zip -d /opt/oracle/

cd /opt/oracle/

ll .

 

2

配置Oracle11g的安装脚本

cp ./database/response/* ./etc/

 

vim ./etc/db_install.rsp

编辑配置项如下:

oracle.install.option=INSTALL_DB_SWONLY

ORACLE_HOSTNAME=server01

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/u01/app/oracle/inventory

SELECTED_LANGUAGES=en,zh_CN

ORACLE_HOME=/u01/app/oracle/product/11.2.0

ORACLE_BASE=/u01/app/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.isCustomInstall=true

oracle.install.db.DBA_GROUP=dba

oracle.install.db.OPER_GROUP=dba

DECLINE_SECURITY_UPDATES=true

10、​​​​​​​安装Oracle11gR2

注意:需要换到oracle用户再操作

操作步骤

说明

1

su oracle

cd /opt/oracle/

 

2

运行安装程序

./database/runInstaller -silent -ignorePrereq -responseFile /opt/oracle/etc/db_install.rsp

 

一定要注意,运行安装程序命令中的-responseFile参数必须为绝对路径。

3

安装进度监控

从/u01/app/oracle/inventory/logs/installActions2020-04-21_07-03-35AM.log中来查看Oracle11gR2的安装进度。

 

4

安装成功会显示的内容

 

5

安装成功后会提示下一步操作

 

6

Oracle要求使用root用户来执行这两个脚本

切换回root用户(输入root的密码)

su

7

使用root用户执行orainstRoot.sh脚本

sh /u01/app/oracle/inventory/orainstRoot.sh

 

8

使用root用户执行root.sh脚本

sh /u01/app/oracle/product/11.2.0/root.sh

 

9

提示检查文件

cat /u01/app/oracle/product/11.2.0/install/root_node1.itcast.cn_2020-04-21_07-30-40.log

 

11、​​​​​​​配置Oracle11gR2的静默监听服务

su - oracle

cd ~

netca /silent /responsefile /opt/oracle/etc/netca.rsp

 

如果提示找不到netca命令时执行:source .bash_profile

netstat -tnulp | grep 1521

 

12、​​​​​​​静默创建数据库

操作步骤

说明

1

使用oracle查看dbca.rsp的权限信息

ll /opt/oracle/etc/dbca.rsp

 

2

使用root用户设置dbca.rsp的权限

su

chown -R oracle:oinstall /opt/oracle/etc/dbca.rsp

 

3

使用oracle用户编辑数据库配置

vim /opt/oracle/etc/dbca.rsp

设置为如下:(前面有#的配置项,需要将#删除)

GDBNAME = "orcl"

SID = "orcl"

SYSPASSWORD = "oracle"

SYSTEMPASSWORD = "oracle"

SYSMANPASSWORD = "oracle"

DBSNMPPASSWORD = "oracle"

DATAFILEDESTINATION = /u01/app/oracle/oradata

CHARACTERSET = "AL32UTF8"

TOTALMEMORY = "1536"

4

运行静默建库(若提示:bash: dbca: command not found,重新加载source .bash_profile

dbca -silent -responseFile /opt/oracle/etc/dbca.rsp

 

5

检查静默建库的log中是否有错误

cat /u01/app/oracle/cfgtoollogs/dbca/orcl/orcl.log

 

6

查看Oracle11gR2的进程

ps -ef | grep ora_

 

7

查看Oracle11gR2的监听服务

lsnrctl status

 

13、登录Oracle11gR2数据库

​​​​​​​​​​​​​​1)使用SQLPLUS登录Oracle11gR2数据库

su - oracle

which sqlplus

sqlplus "/as sysdba"

startup

切换到oracle /bin 目录:cd $ORACLE_HOME/bin

启动监听:lsnrctl start

SQL> select instance_name AS "SID",host_name,version  from v$instance;

 

​​​​​​​​​​​​​​2)使用DBEaver登录Oracle11gR2数据库

属性名

属性值

主机地址

192.168.88.10

端口号

1521

数据库实例名称

ORCL

数据库实例类型

SID

用户名

sys

角色

SYSDBA

密码

oracle

JDBC访问URL

jdbc:oracle:thin:@//192.168.88.10:1521:ORCL

JDBC驱动名称

使用OracleDataSource连接池,无需配置Driver

 

​​​​​​​14、运行Oracle11gR2所遇到的问题

1)​​​​​​​​​​​​​​ORA-01102异常

  • 异常现象

在sqlplus中执行startup的时候提示ORA-01102: cannot mount database in EXCLUSIVE mode错误。

 

  • 异常解决

切换到root用户执行:

cd /u01/app/oracle/product/11.2.0/dbs

fuser -u lkORCL

 

fuser -k lkORCL

 

startup

 

2)​​​​​​​ORA-00845异常

  •  异常现象

在sqlplus中执行startup的时候提示ORA-00845: MEMORY_TARGET not supported on this system错误。

 

  • 异常解决

切换到root用户执行:mount -t tmpfs shmfs -o size=4g /dev/shm

 


  • 📢博客主页:https://lansonli.blog.csdn.net
  • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
  • 📢大数据系列文章会每天更新,停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨

以上是关于客快物流大数据项目(二十二):Docker环境中安装软件的主要内容,如果未能解决你的问题,请参考以下文章

客快物流大数据项目(二十一):Docker环境初始化

客快物流大数据项目:Docker的安装和启动

客快物流大数据项目(二十八):大数据服务器环境准备

客快物流大数据项目(二十三):OGG介绍

客快物流大数据项目(十三):Docker镜像

客快物流大数据项目:大数据项目为什么使用Docker