客快物流大数据项目(二十二):Docker环境中安装软件
Posted Lansonli
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了客快物流大数据项目(二十二):Docker环境中安装软件相关的知识,希望对你有一定的参考价值。
目录
11、配置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环境中安装软件的主要内容,如果未能解决你的问题,请参考以下文章