客快物流大数据项目(二十二):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博客🙉
- 📢大数据系列文章会每天更新,停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨
文章来源: lansonli.blog.csdn.net,作者:Lansonli,版权归原作者所有,如需转载,请联系作者。
原文链接:lansonli.blog.csdn.net/article/details/122741234
- 点赞
- 收藏
- 关注作者
 
            











































 
           
评论(0)